The GoldRush Hyperliquid Info API is a drop-in replacement forDocumentation Index
Fetch the complete documentation index at: https://goldrush.dev/docs/llms.txt
Use this file to discover all available pages before exploring further.
POST https://api.hyperliquid.xyz/info. The request body, the response shape, and the JSON keys are byte-for-byte identical to the public Hyperliquid API. The only differences are the URL and the authentication header.
Endpoint
What’s different from the public Hyperliquid API
Public api.hyperliquid.xyz/info | GoldRush hypercore.goldrushdata.com/info | |
|---|---|---|
| Auth | None | Authorization: Bearer <key> |
| Rate limit | 1200 weight/min/IP | None |
| Orderbook latency target | ~280 ms p50 | Sub-150 ms p50 |
| Wire compatibility | n/a (it’s the source) | Byte-for-byte |
| Types not in public API | n/a | Batched user state, builder fills, liquidation feed, composites - see Roadmap |
| Unsupported types | n/a | Return {"error":"unsupported_type","type":"<x>"} instead of being forwarded |
Available types
The Info API ships today with six types: four wire-compatible drop-ins covering the core “show me the market and my account” UX, plus two GoldRush-native batch endpoints with no upstream Hyperliquid equivalent.| Type | Body | Returns |
|---|---|---|
metaAndAssetCtxs | {"type": "metaAndAssetCtxs", "dex": ""} | Tuple [meta, assetCtxs[]] - perp universe + per-asset live mark price, funding, OI, day volume. |
clearinghouseState | {"type": "clearinghouseState", "user": "0x…", "dex": ""} | Perp account: positions, margin summary, account value, withdrawable. |
spotClearinghouseState | {"type": "spotClearinghouseState", "user": "0x…", "dex": ""} | Spot balances per token, total USD value. |
frontendOpenOrders | {"type": "frontendOpenOrders", "user": "0x…", "dex": ""} | Open orders + trigger metadata (TP/SL, isPositionTpsl, reduceOnly, orderType). |
batchClearinghouseState | {"type": "batchClearinghouseState", "users": ["0x…", …], "dex": ""} | Array of clearinghouseState slots. GoldRush-native, 1 to 50 wallets per call. |
batchSpotClearinghouseState | {"type": "batchSpotClearinghouseState", "users": ["0x…", …]} | Array of spotClearinghouseState slots. GoldRush-native, 1 to 50 wallets per call. |
type that isn’t in the table above, the response body is {"error":"unsupported_type","type":"<the type you sent>"}. Requests are not forwarded to upstream Hyperliquid. Type expansion is tracked on the Roadmap.
See the Roadmap for what’s shipping next.
How clients see it
Existing Hyperliquid SDKs work unchanged after abaseUrl override. See SDK compatibility for nomeida/hyperliquid (JS) and hyperliquid-dex/hyperliquid-python-sdk setup snippets.
Errors
| Status | Body | Cause |
|---|---|---|
400 | {"error":"invalid request"} | Malformed body. |
400 | {"error":"unsupported_type","type":"<type>"} | The type field isn’t one of the natively-supported types. |
401 | {"error":"unauthorized"} | Missing or invalid Authorization header. |
5xx | Server error | Internal server error. |
Networks
Mainnet only. Testnet support is deferred.Next
Migration guide
Side-by-side examples - change one URL and one header.
SDK compatibility
Drop-in setup for
nomeida/hyperliquid and hyperliquid-python-sdk.Limits and caching
No rate limits - what to know about caching and recommended polling cadences.
API reference
Per-endpoint request and response schemas.