Skip to main content
Returns the current clearinghouse state — positions, margin, account value, funding, and liquidation price — for every active trader on HyperLiquid in a single response. Refreshed every 2-3 seconds.

When to use this

Reach for the snapshot endpoints when you need a point-in-time view of every active wallet on HyperLiquid at once:
  • Copy trading platforms watching thousands of leader wallets simultaneously
  • Whale tracking dashboards scanning for large positions or sudden changes
  • Leaderboards ranking traders by account value or PnL
  • Portfolio analytics computing aggregate leverage, open interest, or concentration across the whole market
  • Risk monitors watching the liquidation landscape across all users
If you only need one wallet at a time, use /v2/user/state instead. If you need hundreds or thousands of specific wallets, use /v2/batch/clearinghouse-states. Snapshot endpoints are the right call when you want everyone.

Endpoints

Authentication

All endpoints require an API key via the x-api-key header (or ?key= query param).

Metadata-first polling

The full snapshot is 34 MB. Polling it at high frequency burns bandwidth. Always poll the metadata endpoint first — it returns in under 20ms — and only fetch the full response when snapshotTimestamp changes.
Response:

Full perp snapshot

Always pass --compressed (or Accept-Encoding: gzip). The payload shrinks from 34 MB to roughly 6.4 MB on the wire. Example response (truncated to one wallet — the real response contains ~28,000):
The positions object is keyed by wallet address. Each value has the same shape as the clearinghouseState response you’d get from HyperLiquid’s info API for a single user — drop-in compatible with existing code.

Account value snapshot

Only need accountValue and withdrawable per user? Use /v2/account-value-snapshot — it’s 12x smaller because it strips positions.
Perfect for leaderboards and TVL calculations where you don’t care about per-position detail.

Spot snapshot

/v2/spot-snapshot returns every user with non-empty spot token holdings.

Performance

Measured on production with a representative snapshot: Always use compression. The server supports gzip and zstd.

Polling example

Poll metadata at 1 Hz (essentially free) and only fetch the full snapshot when it updates.