Every stream. Every method. Every field.
The complete inventory of what the feeds carry: proto methods, compatibility, field-by-field specs, filters, snapshot semantics, sample messages, and honest volume notes. If a field is not listed here, we do not stream it.
stream.hyperliquidrpc.com:443gRPC / TLS · x-api-key · reflection- hyperliquid.*QuickNode-compatible
- hyperliquid_l1_gateway.v2Dwellir-compatible
- hyperliquid_swaps.v1native schema
- hyperliquid_btc_price.v1native schema
Trades / Swaps
Native schemahyperliquid_swaps.v1.SwapStreaming/StreamSwapshyperliquid.Streaming/StreamData (stream_type: TRADES)The richest feed: full wallet attribution on every fill. The flat swap schema (Solana-swap-compatible) is the recommended surface; the same fills are also available QuickNode-compatibly via StreamData with stream_type TRADES. Around 6.5M fills a day across 462 markets.
- coins[]: one or more markets
- wallets[]: one or more trader addresses
- market_type: ALL / SPOT / PERP
- replay from a block height
Pure event stream: one message per executed fill, in block order. No snapshot phase; replay from a past block height to backfill.
{ "block_height": 612408133, "block_time": "2026-06-09T08:14:02.418Z", "coin": "BTC", "px": "67012.0", "sz": "0.14523", "notional": "9732.15", "side": "B", "crossed": true, "user": "0x7c4ee0c0c5d3ab91f7f0f3c2a3d6b18452e9a3f9", "dir": "Close Short", "start_position": "-0.42100", "closed_pnl": "182.337041", "fee": "2.433037", "is_rebate": false, "oid": 91834221107, "cloid": "0x00000000000000000000000000a1b2c3", "tid": 442191083327011, "twap_id": null, "liquidation": null}Volume: ~6.5M fills/day across all markets (~75/s average; bursts are much higher). Filter server-side to pay only for what you subscribe to.
L2 Order Book
QuickNode-compatiblehyperliquid.OrderBookStreaming/StreamL2BookTop-of-book and depth by price level for a single coin. Subscribe with {coin, n_levels}; the first message is a full snapshot, then one update per block. Levels carry price, aggregated size, and resting-order count.
- coin: required, one market per subscription
- n_levels: 1 to 100
Snapshot-then-updates: first message is a full book snapshot, then one full refresh per block. The book is guaranteed never crossed.
{ "coin": "BTC", "block_height": 612408133, "time": "2026-06-09T08:14:02.418Z", "is_snapshot": false, "levels": [ [ { "px": "67011.0", "sz": "3.41280", "n": 14 }, { "px": "67010.0", "sz": "1.20019", "n": 6 } ], [ { "px": "67012.0", "sz": "2.88457", "n": 11 }, { "px": "67013.0", "sz": "5.10022", "n": 19 } ] ]}Volume: One update per block per subscribed coin gives predictable, low-bandwidth depth. Use n_levels: 1 as a top-of-book ticker.
L4 Order Book
QuickNode-compatiblehyperliquid.OrderBookStreaming/StreamL4BookEvery individual resting order, attributed to its wallet. Starts with a complete book snapshot, then per-block diffs. This is the microstructure surface: queue position, order ownership, and full reconstruction at any block.
- coin: required, one market per subscription
- replay from a block height
Snapshot + diffs: the first message is the complete order-by-order book; each block then delivers the set of order-level changes. Full snapshots can be large; set max receive size ≥256 MB.
{ "coin": "BTC", "block_height": 612408134, "is_snapshot": false, "diffs": [ { "type": "NEW", "order": { "oid": 91834221299, "user": "0x2f8a91be6cda04417e3c50f1a7b9d20c1e664b07", "side": "A", "px": "67018.0", "sz": "0.75000" } }, { "type": "REMOVE", "oid": 91834219841 } ]}Volume: High volume on liquid markets. This is the full order flow behind 725M+ order updates/day, so budget bandwidth accordingly or filter to specific coins.
Order lifecycle
QuickNode-compatiblehyperliquid.Streaming/StreamData (stream_type: ORDERS)The full L1 order lifecycle for every wallet and market: placements, modifications, cancels, fills, trigger activations, and rejections, with the order's complete parameters on each event.
- coins[]
- wallets[]
- replay from a block height
Pure event stream in block order: one message per order-status transition. No snapshot phase.
{ "block_height": 612408135, "block_time": "2026-06-09T08:14:03.121Z", "user": "0x91b3c07a4de2f6cc185a0fd2b94e7a30c8d1572e", "coin": "ETH", "side": "B", "limit_px": "3498.25", "sz": "12.4400", "order_type": "Limit", "tif": "Gtc", "trigger_px": null, "trigger_condition": null, "reduce_only": false, "oid": 91834221384, "cloid": null, "status": "open"}Volume: 725M+ order updates/day platform-wide (~8,400/s average). Server-side coin and wallet filters are strongly recommended.
Raw book diffs
QuickNode-compatiblehyperliquid.Streaming/StreamData (stream_type: BOOK_UPDATES)The lowest-level book surface: every change to every order book, as it happened. Pair with a snapshot to reconstruct the exact book state at any block; the basis of queue-position and microstructure research. Over 1B book updates archived so far.
- coins[]
- replay from a block height
Pure delta stream in strict block order. Apply deltas to a snapshot (from StreamL4Book or the historical archive) for exact reconstruction.
{ "block_height": 612408136, "coin": "BTC", "update_type": "MODIFIED", "oid": 91834220771, "user": "0x5d20af913cc01b76e4a8f20de33c197a40b8e641", "side": "B", "px": "67009.0", "sz": "0.40000"}Volume: The highest-volume stream: every book change on every market. Filter by coin unless you genuinely need the firehose.
TWAP algos
QuickNode-compatiblehyperliquid.Streaming/StreamData (stream_type: TWAP)Status events for Hyperliquid's native TWAP orders: who is running them, total and executed size, executed notional (giving average fill price), duration, and lifecycle status. Useful for large-order detection and flow analysis.
- coins[]
- wallets[]
- replay from a block height
Event stream: one message per TWAP status change or progress update, in block order.
{ "block_height": 612408201, "twap_id": 48112, "coin": "HYPE", "user": "0xa4f17bd09e26c3158c0b7341fa882ce05d97b264", "side": "B", "sz": "25000.00", "executed_sz": "9412.36", "executed_ntl": "116214.872340", "minutes": 60, "randomize": true, "status": "activated"}Volume: Low volume relative to fills, since only institutional TWAPs appear here. Cheap to subscribe to platform-wide.
Events
QuickNode-compatiblehyperliquid.Streaming/StreamData (stream_type: EVENTS)The non-order event surface: per-user funding payments with the funding rate, liquidations with victim and mark price, deposits, withdrawals, and position updates. The live source behind the liquidation and funding datasets.
- coins[]
- wallets[]
- replay from a block height
Pure event stream in block order. Funding arrives per user per funding interval; liquidations as they execute.
{ "block_height": 612409002, "block_time": "2026-06-09T09:00:00.084Z", "type": "funding", "user": "0xe83b6f02a1d94c7785cb01f3aa620d94b17c08d5", "coin": "BTC", "usdc": "-14.302187", "szi": "2.54000", "funding_rate": "0.0000125"}Volume: Bursty: funding clusters at funding intervals across 63,000+ wallets; liquidations cluster with volatility.
Blocks
QuickNode-compatiblehyperliquid.BlockStreaming/StreamBlockshyperliquid.Streaming/StreamData (stream_type: BLOCKS)Every L1 block as produced: height, timestamp, and the raw block content. The base layer if you want to run your own decoding, indexing, or verification on top of our node fleet.
- replay from a block height
Sequential stream of blocks; replay from any height to backfill, then continue live.
{ "height": 612408133, "block_time": "2026-06-09T08:14:02.418Z", "num_txs": 1742, "raw": "<bytes: 1.8 MB>"}Volume: One message per L1 block. Individual blocks can be large; raise your client's max receive size.
Dedicated BTC price
Native schemahyperliquid_btc_price.v1.BtcPriceStreaming/StreamBtcPricesA single-purpose ticker for the most common ask: the current BTC price, from last trades on the BTC perp. Minimal payload, minimal bandwidth. The right surface for bots and dashboards that just need a number that moves.
- none (the stream is pre-filtered to BTC by design)
Pure ticker: one message per BTC last-trade price change, no snapshot phase.
{ "px": "67012.0", "block_height": 612408133, "time": "2026-06-09T08:14:02.418Z"}Volume: Tiny: a few messages per second at most. Available on every tier including Free.
Dwellir-compatible gateway
Dwellir-compatiblehyperliquid_l1_gateway.v2.HyperliquidL1GatewayFor teams already integrated with Dwellir: the same hyperliquid_l1_gateway.v2 service on our endpoint. Streaming methods StreamBlocks, StreamFills, and StreamOrderbookSnapshots, plus point-in-time GetBlock, GetFills, and GetOrderBookSnapshot. Change the endpoint and key; keep your stubs.
- per the gateway request messages (coin, height), identical to Dwellir's
Identical wire semantics to Dwellir's hyperliquid_l1_gateway.v2; generated stubs work unchanged against our endpoint.
{ "block_height": 612408133, "coin": "BTC", "px": "67012.0", "sz": "0.14523", "side": "B", "user": "0x7c4ee0c0c5d3ab91f7f0f3c2a3d6b18452e9a3f9", "time": "2026-06-09T08:14:02.418Z"}Volume: Volume matches the underlying surfaces (blocks, fills, snapshots), so it is sized like the native equivalents.
Cross-cutting features
These apply to every surface above. They are properties of the platform, not of individual streams.
Server-side filtering
Filter by coin and wallet on the server. You only receive (and pay bandwidth for) what you subscribe to.
Replay from height
Start any stream from a past block height to backfill, then continue live without a gap.
All markets
Perps, spot (@N), and HIP-3 / pre-market (dex:SYMBOL), including new listings.
Exact decimals
Prices, sizes, PnL, and fees are byte-exact decimal strings. No float rounding, ever.
Wire-compatible
QuickNode and Dwellir client stubs work unchanged; switch by changing one endpoint.
Found the fields you need?
Every stream on this page is on both plans. Subscribe in under a minute.