{"openapi":"3.1.0","info":{"title":"Tape: Hyperliquid Analytics API","version":"1.0.0","description":"Free read-only Hyperliquid perps analytics (rate-limited), plus x402 USDC pay-per-call endpoints and an MCP server at /mcp. Covers core Hyperliquid perps and a reviewed set of HIP-3 markets. New issues and pre-IPO markets are excluded. Pro is $9 for 7 days or $39 for 30 days in USDC, or $39 per month by card. Desk is $299 per month by card. Basic MCP read tools are free. Paid for wallet reads ($0.01), signals ($0.03), whale prints ($0.01), and Grok voice ($0.10). For educational purposes only. Not trading advice. Not investment advice. Independent. Not affiliated with Hyperliquid Labs or the Hyperliquid Foundation.","contact":{"email":"support@tapeperp.com"}},"servers":[{"url":"https://tapeperp.com"}],"paths":{"/api/signals":{"get":{"operationId":"listSignals","summary":"Rules-based long/short setups + market consensus","parameters":[{"name":"coins","in":"query","schema":{"type":"string"}},{"name":"bias","in":"query","schema":{"type":"string","enum":["long","short","neutral"]}},{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":200}}],"responses":{"200":{"description":"Signals and consensus with provenance","content":{"application/json":{"schema":{"type":"object"},"example":{"signals":[{"coin":"BTC","bias":"long"}],"consensus":{"label":"neutral"}}}}},"400":{"description":"Invalid query parameter"}},"tags":["free"]}},"/api/pulse":{"get":{"summary":"Market pulse: BTC/ETH marks, total OI/volume, sentiment, breadth","responses":{"200":{"description":"Pulse","content":{"application/json":{"schema":{"type":"object"},"example":{"keyNumbers":{"btc":{"mark":100000},"eth":{"mark":3500},"markets":200}}}}}},"operationId":"get_api_pulse","tags":["free"]}},"/api/whales":{"get":{"operationId":"listWhalePrints","summary":"Largest recent fills from top Hyperliquid wallets w/ directional flow","parameters":[{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":200}},{"name":"coins","in":"query","schema":{"type":"string"}},{"name":"minNotional","in":"query","schema":{"type":"number","minimum":0}},{"name":"fields","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Whale prints with provenance","content":{"application/json":{"schema":{"type":"object"},"example":{"prints":[{"coin":"BTC","notional":250000}]}}}},"400":{"description":"Invalid query parameter"}},"tags":["free"]}},"/api/markets":{"get":{"operationId":"listMarkets","summary":"Every Hyperliquid perp with mark, funding, premium, open interest and volume. Slice with limit/sort/coins/fields; poll changes with since.","parameters":[{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":500}},{"name":"sort","in":"query","schema":{"type":"string","enum":["fundingAprPct","fundingHourlyPct","oi","vol","chg24hPct","premiumPct","mark"]}},{"name":"dir","in":"query","schema":{"type":"string","enum":["asc","desc","mag"]},"description":"mag = by magnitude; the default for funding, premium and change"},{"name":"coins","in":"query","schema":{"type":"string"},"description":"Comma-separated symbols, e.g. BTC,ETH"},{"name":"fields","in":"query","schema":{"type":"string"},"description":"Comma-separated projection; coin is always included"},{"name":"since","in":"query","schema":{"type":"string"},"description":"ISO-8601 or epoch. Returns only rows that moved past the stated thresholds since the retained snapshot at or before this time, with nextSince as the next cursor. With no retained snapshot (about 20 minutes, per edge location) the full set is returned and full is true."}],"responses":{"200":{"description":"Markets, or a delta when since is given. Every response carries provenance: source, request, fetchedAt, servedAt.","content":{"application/json":{"schema":{"type":"object"},"example":{"markets":[{"coin":"BTC","mark":100000,"fundingAprPct":10.5,"oi":1000000,"vol":5000000}]}}}},"400":{"description":"Invalid query parameter"}},"tags":["free"]}},"/api/leaderboard":{"get":{"operationId":"listLeaderboard","summary":"Traders by PnL, ROI, volume or account value across time windows, each row with mechanical activity labels.","parameters":[{"name":"window","in":"query","schema":{"type":"string","enum":["day","week","month","allTime"]}},{"name":"metric","in":"query","schema":{"type":"string","enum":["pnl","roi","vlm","accountValue"]}},{"name":"limit","in":"query","schema":{"type":"integer","minimum":1,"maximum":200}},{"name":"format","in":"query","schema":{"type":"string","enum":["full","concise"]},"description":"concise drops the pre-formatted strings and keeps raw numbers and labels"},{"name":"fields","in":"query","schema":{"type":"string"}}],"responses":{"200":{"description":"Leaderboard with provenance","content":{"application/json":{"schema":{"type":"object"},"example":{"rows":[{"rank":1,"address":"0x0000000000000000000000000000000000000000","pnl":1000}]}}}},"400":{"description":"Invalid query parameter"}},"tags":["free"]}},"/api/treasury":{"get":{"summary":"Treasury par curve, TIPS real yields, breakeven inflation, macro liquidity plumbing, credit and rates vol, and FINRA TRACE aggregates when rows are available. The information provided is for educational use.","responses":{"200":{"description":"Curve, real yields, plumbing, credit vol, and TRACE aggregates when present. For educational use.","content":{"application/json":{"schema":{"type":"object"},"example":{"ok":true}}}}},"operationId":"get_api_treasury","tags":["free"]}},"/api/finra-short":{"get":{"summary":"FINRA Reg SHO daily short volume and consolidated short interest for tracked equity symbols. The information provided is for educational use.","responses":{"200":{"description":"Short volume ratio, short interest shares, percent change, and days to cover. For educational use.","content":{"application/json":{"schema":{"type":"object"},"example":{"ok":true}}}},"503":{"description":"FINRA short feed unavailable"}},"operationId":"get_api_finra_short","tags":["free"]}},"/api/btc-ta":{"get":{"summary":"Mechanical BTC technical levels (SMA/EMA/RSI/ATR, S/R w/ touch counts, daily pivots + Fibonacci retracements, breakout triggers)","responses":{"200":{"description":"TA","content":{"application/json":{"schema":{"type":"object"},"example":{"ok":true,"coin":"BTC","price":100000}}}}},"operationId":"get_api_btc_ta","tags":["free"]}},"/api/rsi-scan":{"get":{"summary":"Wilder RSI(14) 1h + 4h across the top 24 Hyperliquid markets by volume, 5-min cache","responses":{"200":{"description":"RSI scan","content":{"application/json":{"schema":{"type":"object"},"example":{"rows":[{"coin":"BTC","rsi14":55}]}}}}},"operationId":"get_api_rsi_scan","tags":["free"]}},"/api/liquidations":{"get":{"summary":"Live Hyperliquid liquidation feed (rolling 24h) with 1h/4h/24h totals and long/short split. Public and rate-limited; a sample recovered from liquidation counterparties, coverage stated. Query: coins, coin, side, minNotional, since, limit, fields.","description":"Hyperliquid publishes no global liquidation stream; events are recovered from the fills of dynamically-discovered liquidation counterparties, so this is a sample, not an exhaustive record. Side reported is the side that was LIQUIDATED (a liquidated long is a forced sell). Terms: https://tapeperp.com/disclosures","security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"parameters":[{"name":"coin","in":"query","schema":{"type":"string"},"description":"Market symbol, e.g. BTC"},{"name":"since","in":"query","schema":{"type":"string"},"description":"Epoch ms, epoch s, or ISO-8601; clamped to the 24h retention window"},{"name":"min_notional","in":"query","schema":{"type":"number","default":1000},"description":"Minimum liquidation notional in USD"},{"name":"side","in":"query","schema":{"type":"string","enum":["long","short"]},"description":"Filter by the side that was liquidated"},{"name":"limit","in":"query","schema":{"type":"integer","default":200,"maximum":1000}}],"responses":{"200":{"description":"Liquidation events, rolling stats and coverage note","content":{"application/json":{"schema":{"type":"object"},"example":{"events":[],"stats":{"h1":0,"h4":0,"h24":0}}}}},"401":{"description":"Missing or invalid API key"},"404":{"description":"Feature not enabled on this deployment"},"503":{"description":"No API keys provisioned"}},"operationId":"get_api_liquidations","tags":["free"]}},"/api/liquidations/heatmap":{"get":{"summary":"Observed liquidation-level buckets for one market (BTC, ETH, SOL, HYPE). Public and rate-limited. Query: coin, tf (12h|24h|3d|7d), format=concise for the densest levels only.","description":"Buckets are computed server-side from real per-position liquidation prices in Hyperliquid clearinghouse state across a sample of the largest wallets, weighted by position notional. Positions, wallets and the weighting method are never returned. Every response states the share of open interest observed. Terms: https://tapeperp.com/disclosures","security":[{"ApiKeyHeader":[]},{"ApiKeyQuery":[]}],"parameters":[{"name":"coin","in":"query","schema":{"type":"string","default":"BTC"}},{"name":"tf","in":"query","schema":{"type":"string","enum":["12h","24h","3d","7d"],"default":"24h"}}],"responses":{"200":{"description":"Bucket grid, realized-liquidation overlay, coverage and methodology","content":{"application/json":{"schema":{"type":"object"},"example":{"coin":"BTC","coverage":{"oiShare":0.2}}}}},"401":{"description":"Missing or invalid API key"},"404":{"description":"Feature not enabled on this deployment"},"503":{"description":"Snapshot history not yet available for this market"}},"operationId":"get_api_liquidations_heatmap","tags":["free"]}},"/api/paid/signals":{"get":{"summary":"PAID (x402, $0.03 USDC on Base): live signals + consensus","responses":{"200":{"description":"Signals (after payment)","content":{"application/json":{"schema":{"type":"object"},"example":{"signals":[{"coin":"BTC","bias":"long"}]}}}},"402":{"description":"x402 payment challenge","content":{"application/json":{"schema":{"type":"object"},"example":{"error":"Payment required","price":"$0.03","asset":"USDC","network":"base","howToPay":"Retry with a PAYMENT-SIGNATURE or X-PAYMENT header carrying a signed x402 payment. No account is required."}}}}},"operationId":"get_api_paid_signals","tags":["paid"]}},"/api/ai-voices":{"get":{"summary":"Configured AI wallet-read voices and calibrated USDC prices","responses":{"200":{"description":"Voices that have a Worker key set, with list prices","content":{"application/json":{"schema":{"type":"object"},"example":{"voices":[{"id":"gemini","price":"$0.01"}]}}}}},"operationId":"get_api_ai_voices","tags":["free"]}},"/api/paid/wallet-analysis":{"get":{"summary":"PAID (x402): wallet risk read. Gemini $0.01 per call. voice=grok $0.10 per call. Included with an active Pro or Desk pass for Gemini only.","parameters":[{"name":"address","in":"query","required":true,"schema":{"type":"string","pattern":"^0x[a-fA-F0-9]{40}$"}},{"name":"voice","in":"query","schema":{"type":"string","enum":["gemini","grok"]}}],"responses":{"200":{"description":"Analysis (after payment)","content":{"application/json":{"schema":{"type":"object"},"example":{"available":true,"voice":"gemini","analysis":"Public on-chain read. Informational only."}}}},"402":{"description":"x402 payment challenge","content":{"application/json":{"schema":{"type":"object"},"example":{"error":"Payment required","price":"$0.01","asset":"USDC","network":"base","howToPay":"Retry with a PAYMENT-SIGNATURE or X-PAYMENT header carrying a signed x402 payment. No account is required."}}}},"503":{"description":"Requested voice is not configured; no payment requested"}},"operationId":"get_api_paid_wallet_analysis","tags":["paid"]}},"/api/paid/whale-prints":{"get":{"summary":"PAID (x402, $0.01 USDC on Base): whale fills + net flow snapshot","responses":{"200":{"description":"Whale prints (after payment)","content":{"application/json":{"schema":{"type":"object"},"example":{"prints":[{"coin":"BTC","notional":250000}]}}}},"402":{"description":"x402 payment challenge","content":{"application/json":{"schema":{"type":"object"},"example":{"error":"Payment required","price":"$0.01","asset":"USDC","network":"base","howToPay":"Retry with a PAYMENT-SIGNATURE or X-PAYMENT header carrying a signed x402 payment. No account is required."}}}}},"operationId":"get_api_paid_whale_prints","tags":["paid"]}},"/api/paid/pulse":{"get":{"summary":"Market pulse snapshot. $0 per call. Same fields as the public REST pulse endpoint.","responses":{"200":{"description":"Market pulse","content":{"application/json":{"schema":{"type":"object"},"example":{"ok":true}}}}},"operationId":"get_api_paid_pulse","tags":["free"]}},"/api/analytics":{"get":{"summary":"Free analytics bundle: consensus, pulse, funding extremes, and the alert queue.","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object"},"example":{"ok":true,"feed":"analytics"}}}}},"operationId":"get_api_analytics","tags":["free"]}},"/api/smart-positioning":{"get":{"summary":"Free sampled-wallet positioning snapshot.","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object"},"example":{"ok":true}}}}},"operationId":"get_api_smart_positioning","tags":["free"]}},"/api/curve-read":{"get":{"summary":"Free US Treasury curve read. Same fields as /api/treasury.","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object"},"example":{"ok":true}}}}},"operationId":"get_api_curve_read","tags":["free"]}},"/api/paid/pro":{"get":{"summary":"Paid Tape Pro pass via x402. $9 for 7 days or $39 for 30 days in USDC on Base.","responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"type":"object"},"example":{"paid":true,"tier":"pro"}}}},"402":{"description":"x402 payment challenge","content":{"application/json":{"schema":{"type":"object"},"example":{"error":"Payment required","price":"$39","asset":"USDC","network":"base","howToPay":"Retry with a PAYMENT-SIGNATURE or X-PAYMENT header."}}}}},"operationId":"get_api_paid_pro","tags":["paid"]}}},"components":{"securitySchemes":{"ApiKeyHeader":{"type":"apiKey","in":"header","name":"X-API-Key"},"ApiKeyQuery":{"type":"apiKey","in":"query","name":"api_key"}}},"externalDocs":{"url":"https://tapeperp.com/llms.txt","description":"Agent-oriented site summary; MCP at https://tapeperp.com/mcp; catalogs at https://tapeperp.com/.well-known/ai-catalog.json and https://tapeperp.com/.well-known/api-catalog; x402 at https://tapeperp.com/api/x402"},"tags":[{"name":"free","description":"No x402 payment. Anonymous GET is enough unless a deployment note says an API key is required."},{"name":"paid","description":"x402 USDC on Base. A call without payment returns HTTP 402 with the price and how to pay."}]}