HyperVaults Docs
Gate API

Reading state

Positions, orders, and fills come from the Hyperliquid info API

The gate is write-only. Read the vault's trading state from Hyperliquid's public info API directly, addressing the vault's address (the vault is the Hyperliquid account; the agent only signs). Response shapes are documented by Hyperliquid — these are the same calls their own frontend makes:

curl -X POST https://api.hyperliquid.xyz/info \
  -H "Content-Type: application/json" \
  -d '{"type":"clearinghouseState","user":"0xVAULT"}'

Useful types: clearinghouseState (positions, margin), openOrders / frontendOpenOrders, userFills, historicalOrders, spotClearinghouseState (spot balances), activeAssetData (per-market leverage/mode — builder coins are addressed by full name, e.g. "xyz:GOLD").

The per-dex scoping trap

clearinghouseState, openOrders, and frontendOpenOrders return the native dex only by default. Positions and orders on builder dexes are invisible unless you pass the dex name:

-d '{"type":"openOrders","user":"0xVAULT","dex":"xyz"}'

Query the native dex plus every builder dex you trade and merge. (Fills via userFills and historicalOrders are account-wide — no dex parameter needed.)

Polling etiquette

The public API and RPC rate-limit per IP (roughly 100 requests/minute) and answer with 503s when hammered — CORS preflights included, which can poison browser connection pools for minutes. Poll modestly, back off on failure, and prefer the WebSocket streams for anything real-time. See Hyperliquid's rate limits for the exact budgets.

On this page