/v1/lighter/* for Lighter market data, L2 depth, L3 order-level history, trades, candles, funding, open interest, liquidations, and reconstruction-oriented jobs.
Lighter funding records are returnable, but currently served values must not be compared across venues or annualized pending normalization repair.
Need the product view first? Explore Lighter data for coverage, datasets, and access paths, then use this page for the exact REST routes.
Route Groups
First Request
px/sz/n as decimal strings; see the field dictionary). The difference is depth: Lighter also serves an order-level L3 book at /v1/lighter/l3orderbook/{symbol}, individual orders rather than aggregated levels, closer to Hyperliquid L4 than to L2.
Choosing Depth
Use L2 order-book routes for price-level depth. Use the L3 route at/v1/lighter/l3orderbook/{symbol} for order-level detail or reconstruction; it returns individual orders, the Lighter equivalent of Hyperliquid L4. For long windows, begin with one bounded request, paginate deliberately, and store meta.request_id per page. Pair Lighter history with data-quality checks when the output feeds a backtest, model, alert, dashboard, or export.
Trades: Canonical Versus Preliminary
Lighter trade routes are two-tier./v1/lighter/trades/{symbol} serves canonical history reconciled daily from the Lighter Foundation archive: rows marked source: "bucket", enriched with fields such as tx_hash, order_id, fee, and realized_pnl, with end clamped to the finalization watermark reported in meta.finalized_through. /v1/lighter/trades/{symbol}/recent serves preliminary live rows marked source: "ws" without that enrichment. Field sets and the clamp behavior are documented on Trades and Lighter Historical Data API. Lighter identity fields such as account_index are Lighter account indexes, not wallet addresses.
Lighter Request Checklist
Use this checklist before a Lighter workflow enters code, tests, or an agent task.Generated Client Guidance
When the user says Lighter or Lighter.xyz, map to/v1/lighter/* and keep Lighter fixtures and data-quality checks in their own tests. If a generated client has one generic exchange string, confirm Lighter still resolves to the Lighter namespace rather than a relabeled Hyperliquid symbol.