0xarchive
Query historical crypto market data from 0xArchive across Hyperliquid, Lighter.xyz, and HIP-3. Covers orderbooks, trades, candles, funding rates, open interest, liquidations, and data quality
Install / Use
npx skills add LeoYeAI/agent-master-skills --skill 0xarchiveInstalls into whichever agent you are using.
SKILL.md
Installable skill definition
Quality Score
Category
Development & EngineeringSupported Platforms
Our assessment of 0xarchive
0xarchive scores 94/100 on our quality scale, 518th of 4,619 Development & Engineering skills we index (top 12%).
Its SKILL.md is 18 KB long, well organised into 36 sections with 6 code examples: a thorough specification that gives an agent plenty to work with.
With 2,168 GitHub stars, it is one of the more widely adopted skills in the catalogue.
Maintenance, license and trust
- The repository was last updated 6 days ago, so 0xarchive is actively maintained.
- It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
- Its trust signals score 100/100, with no cautions. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.
0xarchive compared with similar skills
All 4 of these similar skills score higher than 0xarchive; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| 0xarchive (this skill)by LeoYeAI | 94 | 2.2k | 6d ago | SKILL.md |
| taste-skillby Leonxlnx | 100 | 111.2k | 1d ago | CLAUDE.md |
| Agent-Reachby Panniantong | 100 | 109.6k | today | CLAUDE.md |
| headroomby headroomlabs-ai | 100 | 79.0k | today | CLAUDE.md |
| ai-job-searchby ai-job-search-dev | 100 | 70.1k | 1d ago | CLAUDE.md |
Frequently asked questions
- How do I install 0xarchive?
- Run
npx skills add LeoYeAI/agent-master-skills --skill 0xarchive. The install tabs above show the steps for each supported agent. - Which AI agents does 0xarchive work with?
- It is written for Universal, as a SKILL.md file. Other agents that read the same format can often use it too.
- Is 0xarchive safe to use?
- It is MIT-licensed and scores 100/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is 0xarchive still maintained?
- The repository was last updated 6 days ago, so 0xarchive is actively maintained.
Skill content
View source on GitHubname: 0xarchive version: 1.5.0 description: > Query historical crypto market data from 0xArchive across Hyperliquid, Lighter.xyz, and HIP-3. Covers orderbooks, trades, candles, funding rates, open interest, liquidations, and data quality. Use when the user asks about crypto market data, orderbooks, trades, funding rates, or historical prices on Hyperliquid, Lighter.xyz, or HIP-3. allowed-tools: Bash argument-hint: "query, e.g. 'BTC funding rate' or 'ETH 4h candles last week'" metadata: {"openclaw":{"requires":{"env":["OXARCHIVE_API_KEY"]},"primaryEnv":"OXARCHIVE_API_KEY"}}
0xArchive API Skill
Query historical and real-time crypto market data from 0xArchive using curl. Three exchanges are supported: Hyperliquid (perps DEX), Lighter.xyz (order-book DEX), and HIP-3 (Hyperliquid builder perps). Data types: orderbooks, trades, candles, funding rates, open interest, liquidations, and data quality metrics.
Authentication
All endpoints require the x-api-key header. The key is read from $OXARCHIVE_API_KEY.
curl -s -H "x-api-key: $OXARCHIVE_API_KEY" "https://api.0xarchive.io/v1/..."
Exchanges & Coin Naming
| Exchange | Path prefix | Coin format | Examples |
|----------|-------------|-------------|---------|
| Hyperliquid | /v1/hyperliquid | UPPERCASE | BTC, ETH, SOL |
| HIP-3 | /v1/hyperliquid/hip3 | Case-sensitive, builder:NAME | km:US500, xyz:GOLD, hyna:BTC, vntl:SPACEX, flx:TSLA, cash:NVDA |
| Lighter | /v1/lighter | UPPERCASE | BTC, ETH |
Hyperliquid and Lighter auto-uppercase the symbol server-side. HIP-3 coin names are passed through as-is.
Timestamps
All timestamps are Unix milliseconds. Use these shell helpers:
NOW=$(( $(date +%s) * 1000 ))
HOUR_AGO=$(( NOW - 3600000 ))
DAY_AGO=$(( NOW - 86400000 ))
WEEK_AGO=$(( NOW - 604800000 ))
Response Format
Every response follows this shape:
{
"success": true,
"data": [ ... ],
"meta": {
"count": 100,
"request_id": "uuid",
"next_cursor": "1706000000000" // present when more pages exist
}
}
Endpoint Reference
Hyperliquid (/v1/hyperliquid)
| Endpoint | Params | Notes |
|----------|--------|-------|
| GET /instruments | -- | List all instruments |
| GET /instruments/{symbol} | -- | Single instrument details |
| GET /orderbook/{symbol} | timestamp, depth | Latest or at timestamp |
| GET /orderbook/{symbol}/history | start, end, limit, cursor, depth | Historical snapshots |
| GET /trades/{symbol} | start, end, limit, cursor | Trade history |
| GET /candles/{symbol} | start, end, limit, cursor, interval | OHLCV candles |
| GET /funding/{symbol}/current | -- | Current funding rate |
| GET /funding/{symbol} | start, end, limit, cursor, interval | Funding rate history |
| GET /openinterest/{symbol}/current | -- | Current open interest |
| GET /openinterest/{symbol} | start, end, limit, cursor, interval | OI history |
| GET /liquidations/{symbol} | start, end, limit, cursor | Liquidation events |
| GET /liquidations/{symbol}/volume | start, end, limit, cursor, interval | Aggregated liquidation volume (USD) |
| GET /liquidations/user/{address} | start, end, limit, cursor, coin | Liquidations for a user |
| GET /freshness/{symbol} | -- | Data freshness per data type |
| GET /summary/{symbol} | -- | Combined market summary (price, funding, OI, volume, liquidations) |
| GET /prices/{symbol} | start, end, limit, cursor, interval | Mark/oracle/mid price history |
| GET /orders/{symbol}/history | start, end, user, status, order_type, limit, cursor | Order history with user attribution (Build+) |
| GET /orders/{symbol}/flow | start, end, interval, limit | Order flow aggregation (Build+) |
| GET /orders/{symbol}/tpsl | start, end, user, triggered, limit, cursor | TP/SL order history (Pro+) |
| GET /orderbook/{symbol}/l4 | timestamp, depth | L4 orderbook reconstruction (Pro+) |
| GET /orderbook/{symbol}/l4/diffs | start, end, limit, cursor | L4 orderbook diffs (Build+) |
| GET /orderbook/{symbol}/l4/history | start, end, limit, cursor | L4 orderbook checkpoints (Pro+) |
HIP-3 (/v1/hyperliquid/hip3)
Coin names are case-sensitive (e.g., km:US500). Orderbook requires Pro+ tier.
| Endpoint | Params | Notes |
|----------|--------|-------|
| GET /instruments | -- | List HIP-3 instruments |
| GET /instruments/{coin} | -- | Single instrument |
| GET /orderbook/{coin} | timestamp, depth | Requires Pro+ tier |
| GET /orderbook/{coin}/history | start, end, limit, cursor, depth | Requires Pro+ tier |
| GET /trades/{coin} | start, end, limit, cursor | Trade history |
| GET /trades/{coin}/recent | limit | Recent trades (no time range needed) |
| GET /candles/{coin} | start, end, limit, cursor, interval | OHLCV candles |
| GET /funding/{coin}/current | -- | Current funding rate |
| GET /funding/{coin} | start, end, limit, cursor, interval | Funding history |
| GET /openinterest/{coin}/current | -- | Current OI |
| GET /openinterest/{coin} | start, end, limit, cursor, interval | OI history |
| GET /liquidations/{coin} | start, end, limit, cursor | Liquidation events |
| GET /liquidations/{coin}/volume | start, end, limit, cursor, interval | Aggregated liquidation volume (USD) |
| GET /freshness/{coin} | -- | Data freshness per data type |
| GET /summary/{coin} | -- | Combined market summary (price, funding, OI) |
| GET /prices/{coin} | start, end, limit, cursor, interval | Mark/oracle/mid price history |
| GET /orders/{coin}/history | start, end, user, status, order_type, limit, cursor | Order history with user attribution (Build+) |
| GET /orders/{coin}/flow | start, end, interval, limit | Order flow aggregation (Build+) |
| GET /orders/{coin}/tpsl | start, end, user, triggered, limit, cursor | TP/SL order history (Pro+) |
| GET /orderbook/{coin}/l4 | timestamp, depth | L4 orderbook reconstruction (Pro+) |
| GET /orderbook/{coin}/l4/diffs | start, end, limit, cursor | L4 orderbook diffs (Build+) |
| GET /orderbook/{coin}/l4/history | start, end, limit, cursor | L4 orderbook checkpoints (Pro+) |
Lighter (/v1/lighter)
Same data types as Hyperliquid except: no liquidations. Adds granularity on orderbook history and /recent trades.
| Endpoint | Params | Notes |
|----------|--------|-------|
| GET /instruments | -- | List Lighter instruments |
| GET /instruments/{symbol} | -- | Single instrument |
| GET /orderbook/{symbol} | timestamp, depth | Latest or at timestamp |
| GET /orderbook/{symbol}/history | start, end, limit, cursor, depth, granularity | Default granularity: checkpoint |
| GET /trades/{symbol} | start, end, limit, cursor | Trade history |
| GET /trades/{symbol}/recent | limit | Recent trades (no time range needed) |
| GET /candles/{symbol} | start, end, limit, cursor, interval | OHLCV candles |
| GET /funding/{symbol}/current | -- | Current funding rate |
| GET /funding/{symbol} | start, end, limit, cursor, interval | Funding history |
| GET /openinterest/{symbol}/current | -- | Current OI |
| GET /openinterest/{symbol} | start, end, limit, cursor, interval | OI history |
| GET /freshness/{symbol} | -- | Data freshness per data type |
| GET /summary/{symbol} | -- | Combined market summary (price, funding, OI) |
| GET /prices/{symbol} | start, end, limit, cursor, interval | Mark/oracle price history |
| GET /l3orderbook/{symbol} | timestamp, depth, account | L3 order-level orderbook (Pro+) |
| GET /l3orderbook/{symbol}/history | start, end, limit, cursor, granularity, account | Historical L3 snapshots (Pro+) |
Data Quality (/v1/data-quality)
| Endpoint | Params | Notes |
|----------|--------|-------|
| GET /status | -- | System health status |
| GET /coverage | -- | Coverage summary, all exchanges |
| GET /coverage/{exchange} | -- | Coverage for one exchange |
| GET /coverage/{exchange}/{symbol} | from, to | Symbol-level coverage + gaps |
| GET /incidents | status, exchange, since, limit, offset | List incidents |
| GET /incidents/{id} | -- | Single incident |
| GET /latency | -- | Ingestion latency metrics |
| GET /sla | year, month | SLA compliance report |
WebSocket Channels
Additional real-time channels available via WebSocket (wss://api.0xarchive.io/ws?apiKey=KEY):
| Channel | Notes |
|---------|-------|
| l4_diffs | L4 orderbook diffs with user attribution (Build+, real-time only) |
| l4_orders | Order lifecycle events with user attribution (Build+, real-time only) |
| lighter_l3_orderbook | Lighter L3 order-level orderbook snapshots (Pro+, historical only) |
| hip3_liquidations | HIP-3 liquidation events with long/short direction (Build+, historical only) |
| hip3_l4_diffs | HIP-3 L4 orderbook diffs (Build+, real-time only) |
| hip3_l4_orders | HIP-3 order lifecycle events (Build+, real-time only) |
Web3 Authentication (/v1)
Get API keys programmatically using an Ethereum wallet (SIWE). No API key required for these endpoints.
| Endpoint | Params | Notes |
|----------|--------|-------|
| POST /auth/web3/challenge | address (wallet address) | Returns SIWE message to sign |
| POST /web3/signup | message, signature | Returns free-tier API key |
| POST /web3/keys | message, signature | List all keys for wallet |
| POST /web3/keys/revoke | message, signature, key_id | Revoke a key |
| POST /web3/subscribe | tier (build or pro), payment-signature header | x402 USDC subscription (see flow below) |
Free-tier flow: Call /auth/web3/challenge with wallet address → sign the returned message with personal_sign (EIP-191) → submit to /web3/signup with the message and signature → receive API key.
Paid-tier flow (x402):
POST /web3/subscribewith{ "tier": "build" }→ server returns 402 withpayment.amount(micro-USDC),payment.pay_to(treasury address),payment.network.- Sign an EIP-712
TransferWithAuthorization(EIP-3009) on USDC Base:- Domain:
{ name: "USD Coin", version: "2", chainId: 8453, verifyingContract: "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913" } - Type:
TransferWithAuthorization(address from, address to, uint256 value, uint256 validAfter, uint256 validBefore, bytes32 nonce) - Message:
{ from: <wallet>, to: <pay_to>, value: <amount>, validAfter: 0, validBefore: <now+3600>, nonce: <32 random bytes hex> }
- Domain:
- Build x402 v2 payment payload:
{ "x402Version": 2, "payload": { "signature": "0x<EIP-712 signature hex>", "authorization": { "from": "0x<wallet>", "to": "0x<pay_to from step 1>", "value": "<amount as string>", "validAfter": "0", "validBefore": "<unix timestamp as string>", "nonce": "0x<64 hex chars>" } } } - Base64-encode the JSON and retry:
POST /web3/subscribewith{ "tier": "build" }and headerpayment-signature: <base64 payload>→ receive API key + subscription.
Important: All authorization values (value, validAfter, validBefore) must be strings, not numbers. See scripts/web3_subscribe.py for a complete working Python implementation.
Common Parameters
| Param | Type | Description |
|-------|------|-------------|
| start | int | Start timestamp (Unix ms). Defaults to 24h ago. |
| `
Truncated for display — read the full file on GitHub.
Related Skills
taste-skill
111.2kAgent skills that give coding agents taste: art direction, reference images and a browser check instead of generic AI pages
Agent-Reach
109.6kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
headroom
79.0kCompress tool outputs, logs, files, and RAG chunks before they reach the LLM. 20% fewer tokens for coding agents, 60-95% fewer tokens for JSON, same answers. Library, proxy, MCP server.
ai-job-search
70.1kThe job search that runs on your machine. AI job application framework built on Claude Code: evaluate postings, tailor CVs, write cover letters, prep interviews. Fork it and own it.
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.
