{
  "schemaVersion": "1.0",
  "item": {
    "slug": "0xarchive",
    "name": "0xArchive",
    "source": "tencent",
    "type": "skill",
    "category": "金融交易",
    "sourceUrl": "https://clawhub.ai/0xFantomMenace/0xarchive",
    "canonicalUrl": "https://clawhub.ai/0xFantomMenace/0xarchive",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/0xarchive",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=0xarchive",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-23T16:43:11.935Z",
      "expiresAt": "2026-04-30T16:43:11.935Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
        "contentDisposition": "attachment; filename=\"4claw-imageboard-1.0.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/0xarchive"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/0xarchive",
    "agentPageUrl": "https://openagent3.xyz/skills/0xarchive/agent",
    "manifestUrl": "https://openagent3.xyz/skills/0xarchive/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/0xarchive/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "0xArchive API Skill",
        "body": "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."
      },
      {
        "title": "Authentication",
        "body": "All endpoints require the x-api-key header. The key is read from $OXARCHIVE_API_KEY.\n\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \"https://api.0xarchive.io/v1/...\""
      },
      {
        "title": "Exchanges & Coin Naming",
        "body": "ExchangePath prefixCoin formatExamplesHyperliquid/v1/hyperliquidUPPERCASEBTC, ETH, SOLHIP-3/v1/hyperliquid/hip3Case-sensitive, prefix:NAMEkm:US500, xyz:XYZ100Lighter/v1/lighterUPPERCASEBTC, ETH\n\nHyperliquid and Lighter auto-uppercase the symbol server-side. HIP-3 coin names are passed through as-is."
      },
      {
        "title": "Timestamps",
        "body": "All timestamps are Unix milliseconds. Use these shell helpers:\n\nNOW=$(( $(date +%s) * 1000 ))\nHOUR_AGO=$(( NOW - 3600000 ))\nDAY_AGO=$(( NOW - 86400000 ))\nWEEK_AGO=$(( NOW - 604800000 ))"
      },
      {
        "title": "Response Format",
        "body": "Every response follows this shape:\n\n{\n  \"success\": true,\n  \"data\": [ ... ],\n  \"meta\": {\n    \"count\": 100,\n    \"request_id\": \"uuid\",\n    \"next_cursor\": \"1706000000000\"   // present when more pages exist\n  }\n}"
      },
      {
        "title": "Hyperliquid (/v1/hyperliquid)",
        "body": "EndpointParamsNotesGET /instruments--List all instrumentsGET /instruments/{symbol}--Single instrument detailsGET /orderbook/{symbol}timestamp, depthLatest or at timestampGET /orderbook/{symbol}/historystart, end, limit, cursor, depthHistorical snapshotsGET /trades/{symbol}start, end, limit, cursorTrade historyGET /candles/{symbol}start, end, limit, cursor, intervalOHLCV candlesGET /funding/{symbol}/current--Current funding rateGET /funding/{symbol}start, end, limit, cursor, intervalFunding rate historyGET /openinterest/{symbol}/current--Current open interestGET /openinterest/{symbol}start, end, limit, cursor, intervalOI historyGET /liquidations/{symbol}start, end, limit, cursorLiquidation eventsGET /liquidations/{symbol}/volumestart, end, limit, cursor, intervalAggregated liquidation volume (USD)GET /liquidations/user/{address}start, end, limit, cursor, coinLiquidations for a userGET /freshness/{symbol}--Data freshness per data typeGET /summary/{symbol}--Combined market summary (price, funding, OI, volume, liquidations)GET /prices/{symbol}start, end, limit, cursor, intervalMark/oracle/mid price history"
      },
      {
        "title": "HIP-3 (/v1/hyperliquid/hip3)",
        "body": "Coin names are case-sensitive (e.g., km:US500). No liquidation endpoints. Orderbook requires Pro+ tier.\n\nEndpointParamsNotesGET /instruments--List HIP-3 instrumentsGET /instruments/{coin}--Single instrumentGET /orderbook/{coin}timestamp, depthRequires Pro+ tierGET /orderbook/{coin}/historystart, end, limit, cursor, depthRequires Pro+ tierGET /trades/{coin}start, end, limit, cursorTrade historyGET /trades/{coin}/recentlimitRecent trades (no time range needed)GET /candles/{coin}start, end, limit, cursor, intervalOHLCV candlesGET /funding/{coin}/current--Current funding rateGET /funding/{coin}start, end, limit, cursor, intervalFunding historyGET /openinterest/{coin}/current--Current OIGET /openinterest/{coin}start, end, limit, cursor, intervalOI historyGET /freshness/{coin}--Data freshness per data typeGET /summary/{coin}--Combined market summary (price, funding, OI)GET /prices/{coin}start, end, limit, cursor, intervalMark/oracle/mid price history"
      },
      {
        "title": "Lighter (/v1/lighter)",
        "body": "Same data types as Hyperliquid except: no liquidations. Adds granularity on orderbook history and /recent trades.\n\nEndpointParamsNotesGET /instruments--List Lighter instrumentsGET /instruments/{symbol}--Single instrumentGET /orderbook/{symbol}timestamp, depthLatest or at timestampGET /orderbook/{symbol}/historystart, end, limit, cursor, depth, granularityDefault granularity: checkpointGET /trades/{symbol}start, end, limit, cursorTrade historyGET /trades/{symbol}/recentlimitRecent trades (no time range needed)GET /candles/{symbol}start, end, limit, cursor, intervalOHLCV candlesGET /funding/{symbol}/current--Current funding rateGET /funding/{symbol}start, end, limit, cursor, intervalFunding historyGET /openinterest/{symbol}/current--Current OIGET /openinterest/{symbol}start, end, limit, cursor, intervalOI historyGET /freshness/{symbol}--Data freshness per data typeGET /summary/{symbol}--Combined market summary (price, funding, OI)GET /prices/{symbol}start, end, limit, cursor, intervalMark/oracle price history"
      },
      {
        "title": "Data Quality (/v1/data-quality)",
        "body": "EndpointParamsNotesGET /status--System health statusGET /coverage--Coverage summary, all exchangesGET /coverage/{exchange}--Coverage for one exchangeGET /coverage/{exchange}/{symbol}from, toSymbol-level coverage + gapsGET /incidentsstatus, exchange, since, limit, offsetList incidentsGET /incidents/{id}--Single incidentGET /latency--Ingestion latency metricsGET /slayear, monthSLA compliance report"
      },
      {
        "title": "Web3 Authentication (/v1)",
        "body": "Get API keys programmatically using an Ethereum wallet (SIWE). No API key required for these endpoints.\n\nEndpointParamsNotesPOST /auth/web3/challengeaddress (wallet address)Returns SIWE message to signPOST /web3/signupmessage, signatureReturns free-tier API keyPOST /web3/keysmessage, signatureList all keys for walletPOST /web3/keys/revokemessage, signature, key_idRevoke a keyPOST /web3/subscribetier (build or pro), payment-signature headerx402 USDC subscription (see flow below)\n\nFree-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.\n\nPaid-tier flow (x402):\n\nPOST /web3/subscribe with { \"tier\": \"build\" } → server returns 402 with payment.amount (micro-USDC), payment.pay_to (treasury address), payment.network.\nSign an EIP-712 TransferWithAuthorization (EIP-3009) on USDC Base:\n\nDomain: { name: \"USD Coin\", version: \"2\", chainId: 8453, verifyingContract: \"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913\" }\nType: TransferWithAuthorization(address from, address to, uint256 value, uint256 validAfter, uint256 validBefore, bytes32 nonce)\nMessage: { from: <wallet>, to: <pay_to>, value: <amount>, validAfter: 0, validBefore: <now+3600>, nonce: <32 random bytes hex> }\n\n\nBuild x402 v2 payment payload:\n{\n  \"x402Version\": 2,\n  \"payload\": {\n    \"signature\": \"0x<EIP-712 signature hex>\",\n    \"authorization\": {\n      \"from\": \"0x<wallet>\",\n      \"to\": \"0x<pay_to from step 1>\",\n      \"value\": \"<amount as string>\",\n      \"validAfter\": \"0\",\n      \"validBefore\": \"<unix timestamp as string>\",\n      \"nonce\": \"0x<64 hex chars>\"\n    }\n  }\n}\n\n\nBase64-encode the JSON and retry: POST /web3/subscribe with { \"tier\": \"build\" } and header payment-signature: <base64 payload> → receive API key + subscription.\n\nImportant: All authorization values (value, validAfter, validBefore) must be strings, not numbers. See scripts/web3_subscribe.py for a complete working Python implementation."
      },
      {
        "title": "Common Parameters",
        "body": "ParamTypeDescriptionstartintStart timestamp (Unix ms). Defaults to 24h ago.endintEnd timestamp (Unix ms). Defaults to now.limitintMax records. Default 100, max 1000 (max 10000 for candles).cursorstringPagination cursor from meta.next_cursor.intervalstringCandle interval: 1m, 5m, 15m, 30m, 1h, 4h, 1d, 1w. Default: 1h. For OI/funding: 5m, 15m, 30m, 1h, 4h, 1d. Omit for raw data.depthintOrderbook depth (number of price levels per side).granularitystringLighter orderbook resolution: checkpoint (default), 30s, 10s, 1s, tick."
      },
      {
        "title": "Smart Defaults",
        "body": "When the user does not specify a time range, default to the last 24 hours:\n\nNOW=$(( $(date +%s) * 1000 ))\nDAY_AGO=$(( NOW - 86400000 ))\n\nFor candles with no explicit range, default to a range that makes sense for the interval (e.g., last 7 days for 4h candles, last 30 days for 1d candles)."
      },
      {
        "title": "Pagination",
        "body": "When meta.next_cursor is present in the response, more data is available. Append &cursor=VALUE to fetch the next page:\n\n# First page\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/trades/BTC?start=$START&end=$END&limit=1000\"\n\n# Next page (use next_cursor from previous response)\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/trades/BTC?start=$START&end=$END&limit=1000&cursor=1706000000000_12345\""
      },
      {
        "title": "Tier Limits",
        "body": "TierPriceCoinsOrderbook DepthLighter GranularityHistorical DepthRate LimitFree$0BTC only (HIP-3: km:US500 only)20 levels--30 days15 RPSBuild$49/moAll50 levelscheckpoint, 30s, 10s1 year50 RPSPro$199/moAll100 levels+ 1sFull history150 RPSEnterpriseCustomAllFull depth+ tickFull historyCustom"
      },
      {
        "title": "Error Handling",
        "body": "HTTP StatusMeaningAction400Bad request / validation errorCheck params (missing start/end, invalid interval)401Missing or invalid API keySet $OXARCHIVE_API_KEY403Tier restrictionUpgrade plan (e.g., non-BTC coin on Free tier)404Symbol not foundCheck coin name spelling and exchange429Rate limitedBack off and retry\n\nError responses return { \"code\": 400, \"error\": \"description\" }."
      },
      {
        "title": "Example Queries",
        "body": "# List Hyperliquid instruments\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/instruments\" | jq '.data | length'\n\n# Current BTC orderbook (top 10 levels)\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/orderbook/BTC?depth=10\" | jq '.data'\n\n# ETH trades from the last hour\nNOW=$(( $(date +%s) * 1000 )); HOUR_AGO=$(( NOW - 3600000 ))\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/trades/ETH?start=$HOUR_AGO&end=$NOW&limit=100\" | jq '.data'\n\n# SOL 4h candles for the last week\nNOW=$(( $(date +%s) * 1000 )); WEEK_AGO=$(( NOW - 604800000 ))\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/candles/SOL?start=$WEEK_AGO&end=$NOW&interval=4h\" | jq '.data'\n\n# Current BTC funding rate\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/funding/BTC/current\" | jq '.data'\n\n# BTC open interest aggregated to 1h intervals (last week)\nNOW=$(( $(date +%s) * 1000 )); WEEK_AGO=$(( NOW - 604800000 ))\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/openinterest/BTC?start=$WEEK_AGO&end=$NOW&interval=1h\" | jq '.data'\n\n# ETH funding rates aggregated to 4h intervals (last 30 days)\nNOW=$(( $(date +%s) * 1000 )); MONTH_AGO=$(( NOW - 2592000000 ))\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/funding/ETH?start=$MONTH_AGO&end=$NOW&interval=4h\" | jq '.data'\n\n# HIP-3 km:US500 candles (last 24h, 1h interval)\nNOW=$(( $(date +%s) * 1000 )); DAY_AGO=$(( NOW - 86400000 ))\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/hip3/candles/km:US500?start=$DAY_AGO&end=$NOW&interval=1h\" | jq '.data'\n\n# Lighter BTC orderbook history (30s granularity, last hour)\nNOW=$(( $(date +%s) * 1000 )); HOUR_AGO=$(( NOW - 3600000 ))\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/lighter/orderbook/BTC/history?start=$HOUR_AGO&end=$NOW&granularity=30s&limit=100\" | jq '.data'\n\n# System health status\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/data-quality/status\" | jq '.'\n\n# SLA report for current month\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/data-quality/sla\" | jq '.'\n\n# BTC market summary (price, funding, OI, volume, liquidations in one call)\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/summary/BTC\" | jq '.data'\n\n# BTC data freshness (lag per data type)\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/freshness/BTC\" | jq '.data'\n\n# BTC price history (mark/oracle/mid) aggregated to 1h\nNOW=$(( $(date +%s) * 1000 )); DAY_AGO=$(( NOW - 86400000 ))\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/prices/BTC?start=$DAY_AGO&end=$NOW&interval=1h\" | jq '.data'\n\n# BTC liquidation volume aggregated to 4h buckets\nNOW=$(( $(date +%s) * 1000 )); WEEK_AGO=$(( NOW - 604800000 ))\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/liquidations/BTC/volume?start=$WEEK_AGO&end=$NOW&interval=4h\" | jq '.data'\n\n# Data coverage for Hyperliquid BTC\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/data-quality/coverage/hyperliquid/BTC\" | jq '.'"
      }
    ],
    "body": "0xArchive API Skill\n\nQuery 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.\n\nAuthentication\n\nAll endpoints require the x-api-key header. The key is read from $OXARCHIVE_API_KEY.\n\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \"https://api.0xarchive.io/v1/...\"\n\nExchanges & Coin Naming\nExchange\tPath prefix\tCoin format\tExamples\nHyperliquid\t/v1/hyperliquid\tUPPERCASE\tBTC, ETH, SOL\nHIP-3\t/v1/hyperliquid/hip3\tCase-sensitive, prefix:NAME\tkm:US500, xyz:XYZ100\nLighter\t/v1/lighter\tUPPERCASE\tBTC, ETH\n\nHyperliquid and Lighter auto-uppercase the symbol server-side. HIP-3 coin names are passed through as-is.\n\nTimestamps\n\nAll timestamps are Unix milliseconds. Use these shell helpers:\n\nNOW=$(( $(date +%s) * 1000 ))\nHOUR_AGO=$(( NOW - 3600000 ))\nDAY_AGO=$(( NOW - 86400000 ))\nWEEK_AGO=$(( NOW - 604800000 ))\n\nResponse Format\n\nEvery response follows this shape:\n\n{\n  \"success\": true,\n  \"data\": [ ... ],\n  \"meta\": {\n    \"count\": 100,\n    \"request_id\": \"uuid\",\n    \"next_cursor\": \"1706000000000\"   // present when more pages exist\n  }\n}\n\nEndpoint Reference\nHyperliquid (/v1/hyperliquid)\nEndpoint\tParams\tNotes\nGET /instruments\t--\tList all instruments\nGET /instruments/{symbol}\t--\tSingle instrument details\nGET /orderbook/{symbol}\ttimestamp, depth\tLatest or at timestamp\nGET /orderbook/{symbol}/history\tstart, end, limit, cursor, depth\tHistorical snapshots\nGET /trades/{symbol}\tstart, end, limit, cursor\tTrade history\nGET /candles/{symbol}\tstart, end, limit, cursor, interval\tOHLCV candles\nGET /funding/{symbol}/current\t--\tCurrent funding rate\nGET /funding/{symbol}\tstart, end, limit, cursor, interval\tFunding rate history\nGET /openinterest/{symbol}/current\t--\tCurrent open interest\nGET /openinterest/{symbol}\tstart, end, limit, cursor, interval\tOI history\nGET /liquidations/{symbol}\tstart, end, limit, cursor\tLiquidation events\nGET /liquidations/{symbol}/volume\tstart, end, limit, cursor, interval\tAggregated liquidation volume (USD)\nGET /liquidations/user/{address}\tstart, end, limit, cursor, coin\tLiquidations for a user\nGET /freshness/{symbol}\t--\tData freshness per data type\nGET /summary/{symbol}\t--\tCombined market summary (price, funding, OI, volume, liquidations)\nGET /prices/{symbol}\tstart, end, limit, cursor, interval\tMark/oracle/mid price history\nHIP-3 (/v1/hyperliquid/hip3)\n\nCoin names are case-sensitive (e.g., km:US500). No liquidation endpoints. Orderbook requires Pro+ tier.\n\nEndpoint\tParams\tNotes\nGET /instruments\t--\tList HIP-3 instruments\nGET /instruments/{coin}\t--\tSingle instrument\nGET /orderbook/{coin}\ttimestamp, depth\tRequires Pro+ tier\nGET /orderbook/{coin}/history\tstart, end, limit, cursor, depth\tRequires Pro+ tier\nGET /trades/{coin}\tstart, end, limit, cursor\tTrade history\nGET /trades/{coin}/recent\tlimit\tRecent trades (no time range needed)\nGET /candles/{coin}\tstart, end, limit, cursor, interval\tOHLCV candles\nGET /funding/{coin}/current\t--\tCurrent funding rate\nGET /funding/{coin}\tstart, end, limit, cursor, interval\tFunding history\nGET /openinterest/{coin}/current\t--\tCurrent OI\nGET /openinterest/{coin}\tstart, end, limit, cursor, interval\tOI history\nGET /freshness/{coin}\t--\tData freshness per data type\nGET /summary/{coin}\t--\tCombined market summary (price, funding, OI)\nGET /prices/{coin}\tstart, end, limit, cursor, interval\tMark/oracle/mid price history\nLighter (/v1/lighter)\n\nSame data types as Hyperliquid except: no liquidations. Adds granularity on orderbook history and /recent trades.\n\nEndpoint\tParams\tNotes\nGET /instruments\t--\tList Lighter instruments\nGET /instruments/{symbol}\t--\tSingle instrument\nGET /orderbook/{symbol}\ttimestamp, depth\tLatest or at timestamp\nGET /orderbook/{symbol}/history\tstart, end, limit, cursor, depth, granularity\tDefault granularity: checkpoint\nGET /trades/{symbol}\tstart, end, limit, cursor\tTrade history\nGET /trades/{symbol}/recent\tlimit\tRecent trades (no time range needed)\nGET /candles/{symbol}\tstart, end, limit, cursor, interval\tOHLCV candles\nGET /funding/{symbol}/current\t--\tCurrent funding rate\nGET /funding/{symbol}\tstart, end, limit, cursor, interval\tFunding history\nGET /openinterest/{symbol}/current\t--\tCurrent OI\nGET /openinterest/{symbol}\tstart, end, limit, cursor, interval\tOI history\nGET /freshness/{symbol}\t--\tData freshness per data type\nGET /summary/{symbol}\t--\tCombined market summary (price, funding, OI)\nGET /prices/{symbol}\tstart, end, limit, cursor, interval\tMark/oracle price history\nData Quality (/v1/data-quality)\nEndpoint\tParams\tNotes\nGET /status\t--\tSystem health status\nGET /coverage\t--\tCoverage summary, all exchanges\nGET /coverage/{exchange}\t--\tCoverage for one exchange\nGET /coverage/{exchange}/{symbol}\tfrom, to\tSymbol-level coverage + gaps\nGET /incidents\tstatus, exchange, since, limit, offset\tList incidents\nGET /incidents/{id}\t--\tSingle incident\nGET /latency\t--\tIngestion latency metrics\nGET /sla\tyear, month\tSLA compliance report\nWeb3 Authentication (/v1)\n\nGet API keys programmatically using an Ethereum wallet (SIWE). No API key required for these endpoints.\n\nEndpoint\tParams\tNotes\nPOST /auth/web3/challenge\taddress (wallet address)\tReturns SIWE message to sign\nPOST /web3/signup\tmessage, signature\tReturns free-tier API key\nPOST /web3/keys\tmessage, signature\tList all keys for wallet\nPOST /web3/keys/revoke\tmessage, signature, key_id\tRevoke a key\nPOST /web3/subscribe\ttier (build or pro), payment-signature header\tx402 USDC subscription (see flow below)\n\nFree-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.\n\nPaid-tier flow (x402):\n\nPOST /web3/subscribe with { \"tier\": \"build\" } → server returns 402 with payment.amount (micro-USDC), payment.pay_to (treasury address), payment.network.\nSign an EIP-712 TransferWithAuthorization (EIP-3009) on USDC Base:\nDomain: { name: \"USD Coin\", version: \"2\", chainId: 8453, verifyingContract: \"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913\" }\nType: TransferWithAuthorization(address from, address to, uint256 value, uint256 validAfter, uint256 validBefore, bytes32 nonce)\nMessage: { from: <wallet>, to: <pay_to>, value: <amount>, validAfter: 0, validBefore: <now+3600>, nonce: <32 random bytes hex> }\nBuild x402 v2 payment payload:\n{\n  \"x402Version\": 2,\n  \"payload\": {\n    \"signature\": \"0x<EIP-712 signature hex>\",\n    \"authorization\": {\n      \"from\": \"0x<wallet>\",\n      \"to\": \"0x<pay_to from step 1>\",\n      \"value\": \"<amount as string>\",\n      \"validAfter\": \"0\",\n      \"validBefore\": \"<unix timestamp as string>\",\n      \"nonce\": \"0x<64 hex chars>\"\n    }\n  }\n}\n\nBase64-encode the JSON and retry: POST /web3/subscribe with { \"tier\": \"build\" } and header payment-signature: <base64 payload> → receive API key + subscription.\n\nImportant: All authorization values (value, validAfter, validBefore) must be strings, not numbers. See scripts/web3_subscribe.py for a complete working Python implementation.\n\nCommon Parameters\nParam\tType\tDescription\nstart\tint\tStart timestamp (Unix ms). Defaults to 24h ago.\nend\tint\tEnd timestamp (Unix ms). Defaults to now.\nlimit\tint\tMax records. Default 100, max 1000 (max 10000 for candles).\ncursor\tstring\tPagination cursor from meta.next_cursor.\ninterval\tstring\tCandle interval: 1m, 5m, 15m, 30m, 1h, 4h, 1d, 1w. Default: 1h. For OI/funding: 5m, 15m, 30m, 1h, 4h, 1d. Omit for raw data.\ndepth\tint\tOrderbook depth (number of price levels per side).\ngranularity\tstring\tLighter orderbook resolution: checkpoint (default), 30s, 10s, 1s, tick.\nSmart Defaults\n\nWhen the user does not specify a time range, default to the last 24 hours:\n\nNOW=$(( $(date +%s) * 1000 ))\nDAY_AGO=$(( NOW - 86400000 ))\n\n\nFor candles with no explicit range, default to a range that makes sense for the interval (e.g., last 7 days for 4h candles, last 30 days for 1d candles).\n\nPagination\n\nWhen meta.next_cursor is present in the response, more data is available. Append &cursor=VALUE to fetch the next page:\n\n# First page\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/trades/BTC?start=$START&end=$END&limit=1000\"\n\n# Next page (use next_cursor from previous response)\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/trades/BTC?start=$START&end=$END&limit=1000&cursor=1706000000000_12345\"\n\nTier Limits\nTier\tPrice\tCoins\tOrderbook Depth\tLighter Granularity\tHistorical Depth\tRate Limit\nFree\t$0\tBTC only (HIP-3: km:US500 only)\t20 levels\t--\t30 days\t15 RPS\nBuild\t$49/mo\tAll\t50 levels\tcheckpoint, 30s, 10s\t1 year\t50 RPS\nPro\t$199/mo\tAll\t100 levels\t+ 1s\tFull history\t150 RPS\nEnterprise\tCustom\tAll\tFull depth\t+ tick\tFull history\tCustom\nError Handling\nHTTP Status\tMeaning\tAction\n400\tBad request / validation error\tCheck params (missing start/end, invalid interval)\n401\tMissing or invalid API key\tSet $OXARCHIVE_API_KEY\n403\tTier restriction\tUpgrade plan (e.g., non-BTC coin on Free tier)\n404\tSymbol not found\tCheck coin name spelling and exchange\n429\tRate limited\tBack off and retry\n\nError responses return { \"code\": 400, \"error\": \"description\" }.\n\nExample Queries\n# List Hyperliquid instruments\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/instruments\" | jq '.data | length'\n\n# Current BTC orderbook (top 10 levels)\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/orderbook/BTC?depth=10\" | jq '.data'\n\n# ETH trades from the last hour\nNOW=$(( $(date +%s) * 1000 )); HOUR_AGO=$(( NOW - 3600000 ))\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/trades/ETH?start=$HOUR_AGO&end=$NOW&limit=100\" | jq '.data'\n\n# SOL 4h candles for the last week\nNOW=$(( $(date +%s) * 1000 )); WEEK_AGO=$(( NOW - 604800000 ))\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/candles/SOL?start=$WEEK_AGO&end=$NOW&interval=4h\" | jq '.data'\n\n# Current BTC funding rate\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/funding/BTC/current\" | jq '.data'\n\n# BTC open interest aggregated to 1h intervals (last week)\nNOW=$(( $(date +%s) * 1000 )); WEEK_AGO=$(( NOW - 604800000 ))\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/openinterest/BTC?start=$WEEK_AGO&end=$NOW&interval=1h\" | jq '.data'\n\n# ETH funding rates aggregated to 4h intervals (last 30 days)\nNOW=$(( $(date +%s) * 1000 )); MONTH_AGO=$(( NOW - 2592000000 ))\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/funding/ETH?start=$MONTH_AGO&end=$NOW&interval=4h\" | jq '.data'\n\n# HIP-3 km:US500 candles (last 24h, 1h interval)\nNOW=$(( $(date +%s) * 1000 )); DAY_AGO=$(( NOW - 86400000 ))\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/hip3/candles/km:US500?start=$DAY_AGO&end=$NOW&interval=1h\" | jq '.data'\n\n# Lighter BTC orderbook history (30s granularity, last hour)\nNOW=$(( $(date +%s) * 1000 )); HOUR_AGO=$(( NOW - 3600000 ))\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/lighter/orderbook/BTC/history?start=$HOUR_AGO&end=$NOW&granularity=30s&limit=100\" | jq '.data'\n\n# System health status\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/data-quality/status\" | jq '.'\n\n# SLA report for current month\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/data-quality/sla\" | jq '.'\n\n# BTC market summary (price, funding, OI, volume, liquidations in one call)\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/summary/BTC\" | jq '.data'\n\n# BTC data freshness (lag per data type)\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/freshness/BTC\" | jq '.data'\n\n# BTC price history (mark/oracle/mid) aggregated to 1h\nNOW=$(( $(date +%s) * 1000 )); DAY_AGO=$(( NOW - 86400000 ))\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/prices/BTC?start=$DAY_AGO&end=$NOW&interval=1h\" | jq '.data'\n\n# BTC liquidation volume aggregated to 4h buckets\nNOW=$(( $(date +%s) * 1000 )); WEEK_AGO=$(( NOW - 604800000 ))\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/hyperliquid/liquidations/BTC/volume?start=$WEEK_AGO&end=$NOW&interval=4h\" | jq '.data'\n\n# Data coverage for Hyperliquid BTC\ncurl -s -H \"x-api-key: $OXARCHIVE_API_KEY\" \\\n  \"https://api.0xarchive.io/v1/data-quality/coverage/hyperliquid/BTC\" | jq '.'"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/0xFantomMenace/0xarchive",
    "publisherUrl": "https://clawhub.ai/0xFantomMenace/0xarchive",
    "owner": "0xFantomMenace",
    "version": "1.3.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/0xarchive",
    "downloadUrl": "https://openagent3.xyz/downloads/0xarchive",
    "agentUrl": "https://openagent3.xyz/skills/0xarchive/agent",
    "manifestUrl": "https://openagent3.xyz/skills/0xarchive/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/0xarchive/agent.md"
  }
}