Skip to main content
GET
/
crypto
/
bookticker
/
{coin}
/
{start}
/
{end}
Exchange Book Ticker
curl --request GET \
  --url https://api.chinolabs.com/crypto/bookticker/{coin}/{start}/{end}
[
  {
    "ts": 1781025000100,
    "byb_btc_spot": [
      "95000.10",
      "95000.20",
      "1.50",
      "2.30"
    ],
    "byb_btc_perp": [
      "94999.50",
      "95000.00",
      "0.80",
      "1.20"
    ],
    "bin_btc_spot": [
      "95000.05",
      "95000.15",
      "3.10",
      "1.90"
    ],
    "bin_btc_perp": [
      "94999.80",
      "95000.10",
      "2.00",
      "2.50"
    ],
    "okx_btc_spot": [
      "95000.00",
      "95000.18",
      "1.10",
      "0.95"
    ],
    "okx_btc_perp": [
      "94999.60",
      "95000.05",
      "4.20",
      "3.80"
    ],
    "cb_btc_spot": [
      "95000.12",
      "95000.22",
      "0.40",
      "0.55"
    ]
  }
]

Response element format

Each item in the list is an object with a snapshot timestamp and one field per exchange stream.
  • ts — wall-clock snapshot time in milliseconds
All other fields are named {exchange}_{coin}_{market} (for example bin_btc_spot). Each holds a four-element BBA list (see below).

Exchanges and markets

CodeExchange
bybBybit
binBinance
okxOKX
cbCoinbase
Markets: spot, perp. Binance does not have a hype spot market, so bin_hype_spot is not recorded.

BBA list format

Each stream field is a four-element list of strings:
  • Index 0 — bid — best bid price
  • Index 1 — ask — best ask price
  • Index 2 — bid_qty — best bid quantity
  • Index 3 — ask_qty — best ask quantity

Sampling

Snapshots are taken every 100 ms on a wall-clock grid. The data is recorded from AWS Tokyo (ap-northeast-1) to minimize feed latency from Asian exchange endpoints. That keeps ts timestamps close to when each BBA was observed, so snapshot times are reliable for cross-exchange comparison and backtesting.

Path Parameters

coin
string
required

Coin ticker (btc, eth, sol, xrp, doge, hype, bnb).

start
string
required

Range start timestamp (seconds or milliseconds).

end
string
required

Range end timestamp (seconds or milliseconds).

Response

JSON list of exchange book ticker snapshots

ts
integer
required

Wall-clock snapshot time in milliseconds.

{key}
string[]
  • Index 0bid (string) — best bid price
  • Index 1ask (string) — best ask price
  • Index 2bid_qty (string) — best bid quantity
  • Index 3ask_qty (string) — best ask quantity
Required array length: 4 elements
Example:
["95000.10", "95000.20", "1.50", "2.30"]