Contents

Order book liquidity and walls

Order book liquidity of one coin: resting USD per price bucket for every covered venue (Hyperliquid l2Book in a fine layer ≈ ±2 % and a coarse layer ≈ ±10–25 %, Binance / Bybit local books within ±5 %), depth within 1 / 2 / 5 % and the bid/ask imbalance, plus walls (large resting liquidity relative to the buckets around it) that are active or ended in the last hour.

GET/api/v1/orderbook/{coin}Every key

Description

Status pulled = removed before the price touched it, filled = the price traded into it. Walls cannot be attributed to wallets and a pulled wall is not proof of spoofing. With hours also the book heatmap over time (paid plans). Free keys: BTC, ETH and HYPE, current book only. Distances are fractions (walls[].distance, depth[].band; the older …Pct names hold the same fractions). Coins without a Hyperliquid market answer 404. Licence review: Binance / Bybit books and walls are withheld (meta.restricted); venue=binance|bybit answers 403 source_restricted.

Who can call it

Available with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.

No key
24 h
Free
30 days
Pro
365 days
Desk
1095 days
API Dev
365 days
API Pro
1095 days

History window per plan. Limits: Authentication & limits.

Parameters

Parameters of /orderbook/{coin}
ParameterDescription
coinstring · pathrequiredCoin name, e.g. BTC (case-insensitive).
venuestringhyperliquid | binance | bybit (optional; default every covered venue the API serves).one of hyperliquid, binance, bybit
hoursintegerAdd the book heatmap over the last N hours (Pro / API Dev up to 168, Desk / API Pro up to 720); 0 or absent = current book only. Free keys: 403.0–720 · default 0

Response fields

Every success is { data, meta }; these are the fields of data. meta is the same on every endpoint.

Response fields of /orderbook/{coin}
FieldDescription
coinstringCoin name as on Hyperliquid (BTC, kPEPE, HIP-3 names like xyz:TSLA).
midnumber · nullableMid price between the best bid and ask.
updatedAtstring (ISO 8601) · nullableNewest snapshot.
venues[]array of objectsVenues covered by this view.
venues[].venue"hyperliquid" | "binance" | "bybit"Venue of the order-flow data.
venues[].layer"fine" | "coarse" | "book"fine / coarse = Hyperliquid l2Book with 3 / 2 significant figures (the coarse layer leaves out the fine range); book = local CEX order book.
venues[].stepnumberBucket size (price).
venues[].midnumberMid price (latest trade of the venue, else the book).
venues[].tsstring (ISO 8601)Snapshot time.
venues[].lonumberLowest price covered.
venues[].hinumberHighest price covered.
venues[].bids[]array of objectsBid buckets, from the price downwards.
venues[].bids[].pxnumberLower edge of the price bucket.
venues[].bids[].usdnumberResting liquidity in the bucket (USD).
venues[].asks[]array of objectsAsk buckets, from the price upwards.
venues[].asks[].pxnumberLower edge of the price bucket.
venues[].asks[].usdnumberResting liquidity in the bucket (USD).
venues[].bidUsdnumberAll bids of the snapshot (USD).
venues[].askUsdnumberAll asks of the snapshot (USD).
venues[].bid1pctnumberBids within 1 % of the mid (USD).
venues[].ask1pctnumberAsks within 1 % of the mid (USD).
depth[]array of objectsResting liquidity within bands around the mid (1 / 2 / 5 %).
depth[].pctnumberBand around the mid (fraction, 0.01 = 1 %). Deprecated: use band (same value).
depth[].bandnumberBand around the mid, fraction (0.01 = 1 %).
depth[].bidUsdnumberBids in the band (USD).
depth[].askUsdnumberAsks in the band (USD).
depth[].imbalancenumber · nullable(bids - asks) / (bids + asks).
walls[]array of objectsActive walls and walls that ended in the last hour, active first, largest first.
walls[].idintegerStable id of the item; on paginated feeds the order key together with ts.
walls[].venue"hyperliquid" | "binance" | "bybit"Venue of the order-flow data.
walls[].layer"fine" | "coarse" | "book"Storage layer the data was read from (enum of this field).
walls[].side"bid" | "ask"Position side (long / short); for trades and orders the side named in the description.
walls[].pxnumberLower edge of the bucket.
walls[].topnumberUpper edge of the bucket.
walls[].usdnumberSize at the last sighting (USD).
walls[].maxUsdnumberLargest size seen (USD).
walls[].firstUsdnumberSize when first seen (USD).
walls[].firstSeenstring (ISO 8601)First time this item was observed (ISO 8601 UTC).
walls[].lastSeenstring (ISO 8601)Last time this item was observed (ISO 8601 UTC).
walls[].endedAtstring (ISO 8601) · nullableWhen it ended (ISO 8601 UTC); null while active.
walls[].status"active" | "pulled" | "filled" | "gone"pulled = removed before the price traded into it (not proof of spoofing); filled = the price traded into it while it shrank (consumed or cancelled at the touch); gone = left the observed range.
walls[].distancePctnumberDistance from the price when first seen (fraction, 0.01 = 1 %). Deprecated: use distance (same value).
walls[].minDistancePctnumberClosest distance to the price (fraction). Deprecated: use minDistance (same value).
walls[].distancenumberDistance from the price when first seen, fraction (0.01 = 1 %).
walls[].minDistancenumberClosest distance to the price, fraction.
walls[].touchedAtstring (ISO 8601) · nullableFirst time the price traded into the bucket.
walls[].lifetimeSecintegerSeconds from first sighting to the end (or the last sighting).
walls[].history[]array of array[secondsSinceFirstSeen, usd] at size changes of 20 % or more.
heatmapobject · nullableOrder book heatmap over time (with ?hours=), else null.
heatmap.coinstringCoin name as on Hyperliquid (BTC, kPEPE, HIP-3 names like xyz:TSLA).
heatmap.venues[]array of "hyperliquid" | "binance" | "bybit"Venues covered by this view.
heatmap.times[]array of string (ISO 8601)Column start times, oldest to newest.
heatmap.colMsintegerColumn width in milliseconds.
heatmap.prices[]array of numberLower edge of each price row, ascending.
heatmap.rowStepnumberPrice step between rows.
heatmap.bid[]array of arraybid[timeIndex][priceIndex]: resting bids in USD (rounded to $1,000).
heatmap.ask[]array of arraySame shape, resting asks.
heatmap.mid[]array of numberMid price per column (null without a snapshot).
heatmap.candlesobjectOHLC of taker trades per column.
heatmap.candles.o[]array of numberOpen price per column (null = no trade).
heatmap.candles.h[]array of numberHigh price per column.
heatmap.candles.l[]array of numberLow price per column.
heatmap.candles.c[]array of numberClose price per column.
heatmap.candles.venue"hyperliquid" | "binance" | "bybit" · nullableVenue of the order-flow data.
heatmap.maxUsdnumberLargest cell (USD).
heatmap.coarse[]array of objectsCoarse layers whose buckets can be wider than a row (each drawn whole in the row of its centre).
heatmap.coarse[].venue"hyperliquid" | "binance" | "bybit"Venue of the order-flow data.
heatmap.coarse[].stepnumberPrice step of the buckets.
heatmap.updatedAtstring (ISO 8601) · nullableNewest data time of this item (ISO 8601 UTC).

Errors

Methodology

Code snippets in these docs are licensed under MIT-0: copy them into your own code without attribution. The SDKs, CLI and MCP server will be, once published, Apache-2.0; the name Blockmetric is not licensed (forks must be renamed). Data from the API is governed by the API terms; third-party exchange data by the exchange’s terms.

LiveHyperliquid markets 3sOperationalHyperliquid positions & whales 3sOperationalLiquidation heatmap & levels 7sOperationalLighter markets & liquidations 2sOperationalLighter positions & heatmap 6sOperationalLighter RH positions & heatmap 5sOperationalBinance markets 52sOperationalBybit markets 22sOperationalBinance liquidations 30sOperationalBybit liquidations 30sOperationaldYdX positions & heatmap 9sOperationalGMX positions & heatmap 12sOperationalLong/short & open interest history 13sOperationalOrder books & trade flow 6sOperationalOn-chain transfers 6sOperationalSecurity monitor 1mOperationalBlockmetric Sentiment 9mOperationalOfficial news 8mOperationalAlert delivery 2sOperational10:06:49 UTCData: Blockmetric Research · Binance · Bybit