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
| Name | Type | Required | Default | Notes |
|---|---|---|---|---|
symbol | string | yes | — | Standard pair (e.g. BTCUSDT). |
limit | integer | no | 50 | Levels 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"]]
}
| Field | Notes |
|---|---|
lastUpdateId / E / T | All 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
| HTTP | code | msg |
|---|---|---|
400 | -1100 | Unknown symbol. |
400 | — | symbol or limit missing or malformed: plain-text axum rejection (Failed to deserialize query string: …), not the {code,msg} JSON shape. |
500 | -1000 | Matching-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 ats_msfield instead oflastUpdateId/E/T.