Get an L2 snapshot
The path and symbol format change by venue. Lighter exposes an L3 individual-order book where Hyperliquid exposes L4.- 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 2026-03-11 01:03 UTC onward.
Hyperliquid and HIP-3 native L2 routes mirror Hyperliquid’s 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 200-level or full-depth aggregated Hyperliquid/HIP-3 L2, use the /l2 route family.
Request parameters
Use
/history with start and end for a past window. timestamp is for snapshot-at-time routes, not history routes. Before a long historical window, check it with Data quality.
The L2 snapshot returns the same envelope across venues:
Response fields
Responses use the{ success, data, meta } envelope; the fields below are data.
A price level is
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 that level; L4 lists each one with its oid and user_address. Full field meanings live in the field dictionary, and Example responses has more payload shapes.
Choose a depth
L2Aggregated levels
Price levels with total size and order count (px, sz, n). The shape of the book.
L3Individual orders
Each order at a level, on Lighter. Order-level detail without full lifecycle.
L4All served resting-order levels
Resting orders with oid and user_address across all served levels, plus diffs to reconstruct the book.
L2 order book
Aggregated price levels (
px, sz, n): the shape of the book, spreads, or a light history window. Native venue snapshots everywhere, and full-depth aggregated L2 on Hyperliquid core and HIP-3.L3 order book
Individual orders on Lighter, without full lifecycle: up to 250 resting orders per side with order index and owner account index.
L4 order book
Every resting order on Hyperliquid families with
oid and user_address, plus diffs and reconstruction: microstructure, queue position, or rolling the book forward from a checkpoint.Full-depth L2 from L4
Hyperliquid core and HIP-3 have a primary full-depth L2 route family derived from L4, served from 2026-03-11 01:03 UTC:
The
/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.
L4 order-level book
L4 is the whole book, order by order: resting orders across all served levels withoid and user_address, with the fields needed for deterministic order-level reconstruction. The L4 routes are in the venue tabs above (/orderbook/{symbol}/l4, /l4/diffs, /l4/history). For what happened to each order around the book, use Order history and Order flow.
bids and asks are truncated above. That real snapshot carried 24,501 bids and 18,101 asks: the entire resting book, each order with its own oid and user_address.
L4 response fields
price and size are numbers in L4 payloads. L2 uses px/sz decimal strings; the Lighter L3 route instead uses numeric price, remaining_size, original_size, order_index, and owner_account_index fields. Check types per route.
Reconstruct from diffs
A snapshot is a checkpoint. To follow the book over time, take anl4 checkpoint, then apply l4/diffs in order (honoring the optional insert_before field on new-order diffs; see L4 order books), or pull l4/history for a window. diffs_applied: 0 means a clean checkpoint; a higher number means it was rolled forward from the last one. When sequence and gap handling matter, move to WebSocket L4 order book and WebSocket replay, or let SDK reconstruction hold local book state for you.
A current L2 snapshot is enough to inspect the book or a spread. It is not the same dataset as a replayable L4 history window, which can be reconstructed the same way twice.
Stream or replay it
Hyperliquid core, Spot, and HIP-3 stream live books. Subscribe toorderbook for L2 and l4_diffs or l4_orders for order-level updates on Hyperliquid core. Spot and HIP-3 use prefixed L2 and L4 variants.
Lighter streams live L2 books on lighter_orderbook; see Lighter WebSocket channels. Current Lighter L3 snapshots use REST, and lighter_l3_orderbook supports historical WebSocket replay but not live subscriptions. Both Lighter book channels support historical replay, and historical data is also available through REST and exports. HIP-4 streams hip4_l4_diffs and hip4_l4_orders; HIP-4 current order-book reads use REST, and stored hip4_orderbook history remains replayable. For sequence and gap handling, see WebSocket L4 order book and WebSocket replay.
Export in bulk
Order books export at three depths, delivered as Parquet with ZSTD compression:l2_orderbook ($3/GB, $5 minimum), l3_orderbook ($3/GB, $5 minimum), and l4_orderbook ($4/GB, $12.50 minimum). Keep L2, L3, and L4 in separate tables. Build a selection in the Data Catalog; columns and coverage keys are on Export schemas.