Connection
Connect to the WebSocket endpoint:heartbeat messages every 15 seconds. The connection supports one L3 market subscription at a time. Trading and user-event messages share the same socket once you authenticate.
You can subscribe to market data and trade on the same connection. Authenticate first, then subscribe to a market.
- Client messages
- Server messages
authenticate
Send your API key to identify yourself. On success the server replies withauthenticated.string
required
Must be
"authenticate".string
required
Your trader API key.
subscribe
Subscribe to the L3 order book for a market. The server replies immediately with asnapshot, then streams delta messages.string
required
Must be
"subscribe".string
required
Must be
"l3". No other channels are currently supported.string
required
Market identifier, e.g.
"BTC-USD".number
Supported by the protocol shape, but the current server flow always returns a full snapshot regardless of this value. Pass
null or omit the field.unsubscribe
Stop receiving updates for a market.string
required
Must be
"unsubscribe".string
required
Must be
"l3".string
required
Market identifier to unsubscribe from.
submit_order
Place a limit order. Requires authentication. The server replies withack on success or reject on failure.string
required
Must be
"submit_order".string
Client-assigned identifier echoed back in the
ack or reject. Useful for correlating responses to requests.string
required
Market identifier, e.g.
"BTC-USD".string
required
"BUY" or "SELL".number
required
Limit price in integer units (subject to the market’s tick size).
number
required
Order quantity (subject to the market’s minimum order quantity).
cancel_order
Cancel an open order you own. Requires authentication.string
required
Must be
"cancel_order".string
Client-assigned correlation identifier.
string
required
UUID of the order to cancel.
amend_order
Reduce the remaining quantity of an open order you own. Requires authentication.string
required
Must be
"amend_order".string
Client-assigned correlation identifier.
string
required
UUID of the order to amend.
number
required
New remaining quantity. Must be less than the current remaining quantity.
Current limitations
- One L3 market subscription per connection. To track multiple markets simultaneously, open one connection per market.
- No replay endpoint. If you miss messages, you must resubscribe from a fresh snapshot.
- No persisted user-event sequence numbers. User events do not carry a sequence number and cannot be replayed.
- Only the
l3channel is supported. No trades-only or ticker channels are available.