Skip to main content

Order Book

Type: NONE

Weight: 5

GET /fapi/v1/depth

Live order-book snapshot for one symbol.

Request

GET /fapi/v1/depth?symbol=BTCUSDT&limit=50

Query params

NameTypeRequiredDefaultNotes
symbolstringyes—Standard pair (e.g. BTCUSDT).
limitintegerno50Levels per side, taken from the top of the snapshot. Any integer is accepted and clamped to 1..=100 (the standard fixed set 5/10/20/50/100/500/1000 is not enforced; values above 100 return 100 levels).

Response — 200

{
"lastUpdateId": 1748275200500,
"E": 1748275200500,
"T": 1748275200500,
"bids": [["76520.00", "0.005"], ["76519.50", "0.010"]],
"asks": [["76521.00", "0.005"], ["76521.50", "0.010"]]
}
FieldNotes
lastUpdateId / E / TAll three carry the server timestamp (ms) at snapshot time. Rocky does not yet emit a monotonic sequence counter, so they are not useful for incremental-update reconstruction; refetch the full snapshot when you need fresh state.

Errors

HTTPcodemsg
400-1100Unknown symbol.
400—symbol or limit missing or malformed: plain-text axum rejection (Failed to deserialize query string: …), not the {code,msg} JSON shape.
500-1000Matching-engine RPC unreachable.

Also available on Rocky's native Web v1 surface: GET /v1/markets/{symbol}/orderbook?depth=50 — returns the Rocky-internal symbol form (BTC-PERP) and includes a ts_ms field instead of lastUpdateId/E/T.