On this page
Hyperliquid HIP-1 Spot Deploys
The /v1/markets/hyperliquid/spot-deploys/* namespace covers the
HIP-1 spot deploys — spot pairs launched via HL's on-chain gas
auction that have a live orderbook but don't appear in HL's
spotMeta.universe action yet. As of May 2026, that includes ~30+
pairs starting at upstream id @298.
Power-user surface. HL's public Info API has no action that lists
these pairs or maps an upstream id (@298, @299, …) to a
human-readable token name. Artery discovers them by probing
l2Book(@N) over a bounded range and exposes whatever responds with a
live orderbook. There's no snapshot endpoint (no assetCtxs entry)
and no symbol resolution — customers query by the bare numeric id.
When HL exposes a discovery action, Artery will migrate to it without
breaking this URL shape.
Endpoint summary
| Method | Path | Cache |
|---|---|---|
| GET | /v1/markets/hyperliquid/spot-deploys | 10 min |
| GET | /v1/markets/hyperliquid/spot-deploys/{id}/orderbook | 2s |
| GET | /v1/markets/hyperliquid/spot-deploys/{id}/trades | 5s |
| GET | /v1/markets/hyperliquid/spot-deploys/{id}/candles | 30s |
All require read scope and meter under markets.read. {id} is the
bare numeric id (e.g. 307); Artery prepends the @ before calling HL.
Discover deploys
bashcurl -H "Authorization: Bearer art_live_<your-key>" \
"https://api.artery.questflow.ai/v1/markets/hyperliquid/spot-deploys"jsonc{
"deploys": [
{ "id": 298, "upstreamCoin": "@298", "discoveryMidPrice": 0.003752, "twoSided": true },
{ "id": 300, "upstreamCoin": "@300", "discoveryMidPrice": 0.0055, "twoSided": true },
{ "id": 307, "upstreamCoin": "@307", "discoveryMidPrice": 258.93, "twoSided": true },
{ "id": 333, "upstreamCoin": "@333", "discoveryMidPrice": 737.29, "twoSided": true }
]
}Field semantics:
id— the bare numeric upstream id (use this in subsequent URLs).upstreamCoin— HL's raw form (@N); pass this to/v1/hyperliquid/info/l2-bookfor raw access.discoveryMidPrice— orderbook midpoint at the time of the last discovery cycle. Indicative only; refresh via/orderbookfor a live reading.twoSided—truewhen there was at least one bid AND one ask at discovery. Afalsehere usually means a one-sided book (low liquidity).
The discovery probe scans @298..@400 and stops after 10 consecutive
nulls. Cached 10 minutes — new HIP-1 launches appear within that window.
Orderbook
bashcurl -H "Authorization: Bearer art_live_<your-key>" \
"https://api.artery.questflow.ai/v1/markets/hyperliquid/spot-deploys/307/orderbook?depth=10"jsonc{
"id": 307,
"bids": [
{ "price": 258.5, "size": 12.5 },
{ "price": 258.4, "size": 30.1 }
],
"asks": [
{ "price": 259.0, "size": 8.7 },
{ "price": 259.1, "size": 15.0 }
],
"ts": 1779185000000
}Same shape as /v1/markets/hyperliquid/spot/pairs/{pair}/orderbook but
without a pair label (no name resolution available).
Recent trades
bashcurl -H "Authorization: Bearer art_live_<your-key>" \
"https://api.artery.questflow.ai/v1/markets/hyperliquid/spot-deploys/307/trades?limit=20"jsonc{
"trades": [
{ "id": 307, "price": 258.93, "size": 0.5, "side": "buy", "ts": 1779185001000, "txHash": "0x..." }
]
}OHLC candles
Same windowing strategies as the rest of the HL market data endpoints — neither / both / start-only / end-only — see the main perp reference for the full table.
bashcurl -H "Authorization: Bearer art_live_<your-key>" \
"https://api.artery.questflow.ai/v1/markets/hyperliquid/spot-deploys/307/candles?interval=1h&limit=24"Error responses
| HTTP | error.code | When |
|---|---|---|
| 400 | validation_failed | id is non-integer or outside the probe range (298..400) |
| 404 | unknown_deploy | id returned null at last discovery (not currently live) |
| 401 | unauthenticated | Missing / invalid Authorization |
| 403 | insufficient_scope | Key lacks read |
| 429 | rate_limited | Over markets.read SKU quota |
| 502 | upstream_unavailable | HL Info endpoint 5xx'd or timed out |
When to use this vs /spot/pairs
- Use
/v1/markets/hyperliquid/spot/pairsfor any pair that HLspotMetalists (PURR-USDC, HYPE-USDC, and 296 others) — those have full snapshot + name resolution. - Use
/spot-deploysonly when you need a HIP-1 pair that isn't inspotMetayet. Most of these are very-low-liquidity launches; some graduate into the canonical universe later (at which point they appear under/spot/pairstoo).