Skip to content

Get Orderbook (GET)

Returns orderbook depth for a specific market identified by its ticker_id. This endpoint accepts a ticker_id query parameter instead of the standard POST /v1/info action format.

This is a GET endpoint with no request body and no authentication required.

Endpoint

GET /v1/info/orderbook

Query Parameters

ParameterTypeRequiredDescription
ticker_idstringYesMarket identifier in BASE-SETTLE format (e.g., BTC-USDT). Use ticker_id values from Get Contracts
depthintegerNoNumber of price levels per side. Default: 100. Allowed values: 5, 10, 20, 50, 100, 500, 1000

Example Request

GET /v1/info/orderbook?ticker_id=BTC-USDT&depth=10

Response

{
  "ticker_id": "BTC-USDT",
  "timestamp": 1749427200000,
  "bids": [
    ["50000.00", "1.5"],
    ["49999.00", "2.0"],
    ["49998.50", "0.75"]
  ],
  "asks": [
    ["50001.00", "1.2"],
    ["50002.00", "1.8"],
    ["50003.00", "0.5"]
  ]
}

Response Fields

FieldTypeDescription
ticker_idstringThe market identifier echoed from the request
timestampintegerUnix millisecond timestamp of the response
bidsarrayBid levels sorted best-to-worst. Each element is a [price, quantity] two-element string array
asksarrayAsk levels sorted best-to-worst. Each element is a [price, quantity] two-element string array

Each price level is a two-element array: ["price", "quantity"] — both values are decimal strings.

Error Responses

{ "error": "ticker_id is required" }
{ "error": "unknown ticker_id: XYZ-USDT" }
{ "error": "invalid depth: 15" }
HTTP StatusCauseDescription
400ticker_id not suppliedticker_id query parameter is missing or empty
400Unknown ticker_idMarket does not exist or is not currently open
400Invalid depthValue is not one of the allowed depths: 5, 10, 20, 50, 100, 500, 1000
429Rate limit exceededPer-IP limit hit — wait for the Retry-After: 5 header duration
503Service unavailableRequest timed out or service is temporarily unavailable
500Internal errorOrderbook data could not be retrieved

Implementation Notes

  • ticker_id values for open markets are available from Get Contracts or Get Contract Specs.
  • The ticker_id format is BASE-SETTLE (e.g., "BTC-USDT"). For most markets this matches the standard market symbol used in the trading API.
  • Omitting depth defaults to 100 levels per side.
  • Only markets that are currently open are accessible through this endpoint.

Rate Limiting

Per-IP rate limits apply. Requests that exceed the limit return HTTP 429 with a Retry-After: 5 header.

Related