px, sz, n), not the individual orders themselves.
L2 is the shape of the book. Reach for it when you need spreads, depth charts, a top-of-book monitor, or a light historical window, and step up to L3 or L4 only when individual resting orders matter. Use Order history or Order flow when lifecycle records matter. This page covers two L2 surfaces: native venue snapshots, with a 20-level-per-side source cap for core and HIP-3, and the full-depth aggregated L2 route family derived from L4 on Hyperliquid core and HIP-3.
Get an L2 snapshot
Pick your venue. The path and symbol format change per family.- Hyperliquid
- Spot
- HIP-3
- HIP-4
- Lighter
Plain perp symbols such as
BTC and ETH. Use the /l2 routes for full-depth aggregated L2 (request levels via depth) from March 10, 2026 onward.Native L2 versus full-depth L2
Hyperliquid core and HIP-3 expose two L2 surfaces, and they answer different questions:
Native Hyperliquid and HIP-3 L2 routes mirror the venue source snapshot and top out at 20 levels per side. A request like
depth=200 on /v1/hyperliquid/orderbook/BTC/history still returns at most 20 levels. For full-depth aggregated L2 on those families, use the /l2 route family. Spot, HIP-4, and Lighter serve native L2 depth.
Request parameters
The full-depth
/l2/history routes return the checkpoint’s stored full depth and currently do not take a per-request depth override. Ask for a bounded start/end window and paginate with cursor. Lighter’s native history route additionally accepts granularity=checkpoint|30s|10s|1s|tick; checkpoint returns snapshot items, while tick items contain a checkpoint plus its ordered deltas. Use that route-specific shape instead of treating every L2 history item as a plain book snapshot.
Example response
The L2 snapshot returns the same envelope across venues:px (price), sz (total size), and n (order count). px, sz, mid_price, spread, and spread_bps are decimal strings, so parse them as decimals, not floats. n aggregates the orders at a level; L4 lists each one with its oid and user_address. The /l2 routes also return bid_levels, ask_levels, total_bid_size, and total_ask_size. Full field meanings live in the field dictionary, and the Endpoint reference carries the exact types.
Stream or replay it
Hyperliquid core, Spot, and HIP-3 stream L2 books live. Subscribe toorderbook on Hyperliquid core; Spot and HIP-3 use spot_orderbook and hip3_orderbook.
Lighter current L2 snapshots use REST, while lighter_orderbook supports historical WebSocket replay but not live subscriptions through the 0xArchive WebSocket. Historical data is also available through REST and exports. HIP-4 current order-book reads use REST; stored hip4_orderbook history remains replayable.
Export in bulk
L2 books export as thel2_orderbook schema ($3/GB, $5 minimum), delivered as Parquet with ZSTD compression. Keep L2, L3, and L4 in separate tables. Build a selection in the Data catalog; columns and coverage keys are on Export schemas.
Other depths
L3 order book
Individual orders on Lighter, order-level detail without full lifecycle.
L4 order book
Every resting order with its
oid and user_address, plus diffs and reconstruction.