{
"type": "subscribe",
"channel": "l2Orderbook",
"id": "BTC-USD",
"nLevels": 50
}{
"type": "subscribed",
"channel": "l2Orderbook",
"id": "BTC-USD",
"contents": {
"bids": [
[
"94500.0",
"1.5"
],
[
"94499.0",
"2.0"
]
],
"asks": [
[
"94501.0",
"0.8"
],
[
"94502.0",
"3.1"
]
],
"lastSequenceId": 1042,
"globalSequenceId": 880421,
"timestamp": 1780410803123456
}
}L2 orderbook
Endpoint:
wss://api.arcus.xyz/v1/ws— one socket multiplexes every channel and RPC request. Click Connect, then send the example subscribe message below to start receiving data.
Periodic full L2 orderbook snapshots for a single market. On subscribe, the server sends the current book up to nLevels price levels per side, then continues to broadcast a fresh full snapshot every ~200ms.
No incremental updates — each message replaces the prior book state. Use l2OrderbookUpdates if you need to maintain your own local book.
A connection may subscribe more than once to the same market when each subscribe uses a distinct (sigFigs, roundStep) pair. subscribed, channel_data, and unsubscribed frames echo those fields (omitted for full precision) so the client can demux views. Unsubscribe must include the same pair to drop one view without affecting the others.
{
"type": "subscribe",
"channel": "l2Orderbook",
"id": "BTC-USD",
"nLevels": 50
}{
"type": "subscribed",
"channel": "l2Orderbook",
"id": "BTC-USD",
"contents": {
"bids": [
[
"94500.0",
"1.5"
],
[
"94499.0",
"2.0"
]
],
"asks": [
[
"94501.0",
"0.8"
],
[
"94502.0",
"3.1"
]
],
"lastSequenceId": 1042,
"globalSequenceId": 880421,
"timestamp": 1780410803123456
}
}Was this page helpful?