Skip to main content
L3 is the order-level book on Lighter: up to 250 resting orders per side shown individually, each with its order index, owner account index, price, and remaining size, rather than the aggregated price levels of L2. L3 is a Lighter family surface. Lighter exposes individual orders where Hyperliquid families expose L4; the two are different reconstructions, so do not treat a Lighter L3 route as interchangeable with a Hyperliquid L4 route. Reach for L3 when you need queue position, per-order size, or order-level microstructure on Lighter, and use L2 when aggregated levels are enough.

Get an L3 snapshot

L3 is served only on Lighter. Find symbols on /v1/lighter/instruments.
For aggregated price-level depth on Lighter, use the L2 routes (/v1/lighter/orderbook/{symbol} and /history) covered on L2 order book. L3 is order-level; L2 is the levels those orders aggregate into.

Request parameters

The snapshot route returns one book object in data. The history route returns an array of snapshot objects in data; L3 data begins March 5, 2026, and each snapshot can contain up to 250 resting orders per side. The account filter uses numeric Lighter account indexes, not wallet addresses. Route availability is route/family/symbol/schema-specific. Verify the exact endpoint, selected account, and API key status before relying on the response. Plans govern capacity and request windows, not route access. Begin with one bounded start/end window, paginate with cursor, and store meta.request_id per page.

Example response

The L3 snapshot returns the { success, data, meta } envelope. data is a single book object, not an array. Each entry under data.orders is one resting order:
Per-order fields include order_index and owner_account_index as numeric Lighter indexes, side as the string bid or ask, and price, remaining_size, and original_size as JSON numbers. These are Lighter indexes, not a wallet address or raw order ID; do not treat them like the user_address wallet field on Hyperliquid L4. Alongside orders, the book object carries bid_count, ask_count, total_bid_size, total_ask_size, mid_price, spread, and spread_bps. Capture a live fixture and pin the order_index, owner_account_index, price, and size fields you depend on before binding stable models. The Endpoint reference carries the route metadata, and full field meanings live in the field dictionary.

Replay it over WebSocket

Lighter current L3 snapshots use REST, while lighter_l3_orderbook supports historical WebSocket replay but not live subscriptions through the 0xArchive WebSocket. Historical data is also available through REST and exports.
The full channel matrix is on WebSocket channels.

Export in bulk

L3 books export as the l3_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

L2 order book

Aggregated price levels (px, sz, n) across every venue family.

L4 order book

Every resting order with its oid and user_address on Hyperliquid families, plus diffs and reconstruction.

Next

Start from Order books for the depth overview, Order book depth to choose a grain, Lighter REST API for the wider Lighter route set, or Data quality before any long historical window.
Last modified on September 1, 2026