Skip to main content

Get Order Book

Get the current order book (bids + asks) for a futures symbol. Two modes via the same endpoint:

  • Top of book — best few levels. Default.
  • L2 mode — deeper view. Add l2Orderbook=true.

HTTP

MethodGET
Endpoint/trade/api/v2/futures/order_book
Rate limit100 requests per 60 seconds (combined limit for both modes)

Request Parameters

ParameterTypeMandatoryDescription
exchangestringYesEXCHANGE_2.
symbolstringYesSymbol, e.g. BTCUSDT.
l2OrderbookstringNoSend "true" to fetch the L2 (deeper) view.

Example

import requests

# Top of book
headers, path = sign_request("GET", "/trade/api/v2/futures/order_book",
params={"symbol": "btcusdt", "exchange": "EXCHANGE_2"})
print(requests.get(BASE_URL + path, headers=headers).json())

# L2 (deeper) view
headers, path = sign_request("GET", "/trade/api/v2/futures/order_book",
params={"symbol": "btcusdt",
"exchange": "EXCHANGE_2",
"l2Orderbook": "true"})
print(requests.get(BASE_URL + path, headers=headers).json())

Response

{
"data": {
"timestamp": 1732685131699,
"asks": [
["3388.92", "0.10"],
["3388.94", "0.01"]
],
"bids": [
["3425.71", "2.16"],
["3425.69", "0.01"]
],
"symbol": "ETHUSDT"
}
}

Response Parameters

FieldTypeDescription
symbolstringSymbol echoed back.
timestampintegerSnapshot time (Unix milliseconds).
bidsarraySorted descending. Each entry [price (string), quantity (string)].
asksarraySorted ascending. Each entry [price (string), quantity (string)].

For real-time depth updates, use the Order Book WebSocket.