murmo_. The key identifies your user and
can place trades and move funds into positions on your behalf. Guard it accordingly.
What a key can and cannot do
Allowed
Reads (identity, account, positions, trades), group spot trades, prediction and perp
positions, group membership and settings, and chat.
Not allowed
Withdrawing funds out of your wallet and managing API keys. These require an interactive
(in-app) session and have no API route. Your key cannot drain your wallet to an external address.
API keys are scoped to the REST API (
/api/v1) and the real-time WebSocket gateways.
They are not accepted on the GraphQL endpoint (/graphql) — that’s the interactive app surface
and requires a session. A key used against GraphQL returns 403 FORBIDDEN.Inspect the current credential
GET /api/v1/me echoes who you are, which key you’re using (metadata only — never the secret), and
your rate budget:
Rate limits
API-key traffic is limited to 1,200 requests per 60-second window. Over the limit you’ll receive429 Too Many Requests — back off and retry. The budget is reported on GET /api/v1/me.
WebSocket authentication
The samemurmo_ key authenticates the real-time gateways. Pass it in the Socket.IO handshake
auth.token (or an Authorization: Bearer header) — never in the query string:
Errors
See Errors for the response shapes and codes.
Security checklist
1
Store the key in a secret
Environment variable or secret manager — never in source control or a URL.
2
Send it only over HTTPS / WSS
Always TLS. Never log the full key; the
prefix is enough to identify it.3
Rotate if exposed
Revoke and recreate the key in the app if it leaks. Keys can be scoped/expired there.