{
  "info": {
    "name": "Blockmetric API",
    "description": "Real-time crypto market data: Hyperliquid on-chain positions + exchange data where licensed.\n\nSet the environment variable apiKey (Bearer key, bm_live_…) and baseUrl. Generated from the OpenAPI document 1.24.0; regenerate with scripts/devx-generate.ts.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
    "version": "1.24.0"
  },
  "auth": {
    "type": "bearer",
    "bearer": [
      {
        "key": "token",
        "value": "{{apiKey}}",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://api.blockmetric.io/v1",
      "type": "string"
    }
  ],
  "item": [
    {
      "name": "Markets",
      "item": [
        {
          "name": "Market state of a venue",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/markets?venue=hyperliquid",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "markets"
              ],
              "query": [
                {
                  "key": "venue",
                  "value": "hyperliquid",
                  "description": "hyperliquid | lighter | binance | bybit (okx only while enabled, see /methodology#sources); default hyperliquid. Lighter (a DEX like Hyperliquid) is never withheld. Binance / Bybit: 403 source_restricted during the licence review."
                },
                {
                  "key": "fields",
                  "value": "",
                  "description": "Comma-separated fields of every item to return, e.g. coin,mark,fundingApr,openInterestUsd (case-insensitive). All other fields are left out, so large lists get much smaller; an unknown name answers 400 with the list of fields. Default: every field.",
                  "disabled": true
                },
                {
                  "key": "format",
                  "value": "",
                  "description": "json (default: the { data, meta } envelope) | csv (the rows with a header line; nested values as JSON text) | ndjson (one JSON object per row and line). csv and ndjson carry the meta block in headers: Link rel=\"next\" and X-Blockmetric-Next-Cursor (next page), X-Blockmetric-Next-After (forward polling), X-Blockmetric-Updated-At, X-Blockmetric-Warnings, X-Blockmetric-License. Errors stay JSON.",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "Latest market state of one venue: mark, oracle, funding (hourly and annualised), open interest, 24h volume, premium, max leverage. Largest open interest first. Licence review: raw rows of Binance and Bybit (single liquidations, prints, order books, tickers, funding and ratios per exchange, exchange candles) are not redistributed through the API while the review of their terms is pending. Asking for such a venue answers 403 source_restricted, and meta.restricted lists the withheld venues. Aggregates (sums over venues, our own figures) stay.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nLicence review: raw rows of Binance and Bybit (single liquidations, prints, order books, tickers, funding and ratios per exchange, exchange candles) are not redistributed through the API while the review of their terms is pending. Asking for such a venue answers 403 source_restricted, and meta.restricted lists the withheld venues. Aggregates (sums over venues, our own figures) stay."
          },
          "response": []
        },
        {
          "name": "Cross-venue funding board",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/funding",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "funding"
              ],
              "query": [
                {
                  "key": "coin",
                  "value": "",
                  "description": "Only this coin (optional).",
                  "disabled": true
                },
                {
                  "key": "limit",
                  "value": "",
                  "description": "Number of items, default 500, clamped to 1–500.",
                  "disabled": true
                },
                {
                  "key": "fields",
                  "value": "",
                  "description": "Comma-separated fields of every item to return, e.g. coin,aprSpread,maxAbsApr (case-insensitive). All other fields are left out, so large lists get much smaller; an unknown name answers 400 with the list of fields. Default: every field.",
                  "disabled": true
                },
                {
                  "key": "format",
                  "value": "",
                  "description": "json (default: the { data, meta } envelope) | csv (the rows with a header line; nested values as JSON text) | ndjson (one JSON object per row and line). csv and ndjson carry the meta block in headers: Link rel=\"next\" and X-Blockmetric-Next-Cursor (next page), X-Blockmetric-Next-After (forward polling), X-Blockmetric-Updated-At, X-Blockmetric-Warnings, X-Blockmetric-License. Errors stay JSON.",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "Cross-venue funding board: one row per coin with funding of every venue, APR spread between venues and the largest absolute APR of the venues shown. Sorted by Hyperliquid open interest. Licence review: raw rows of Binance and Bybit (single liquidations, prints, order books, tickers, funding and ratios per exchange, exchange candles) are not redistributed through the API while the review of their terms is pending. Asking for such a venue answers 403 source_restricted, and meta.restricted lists the withheld venues. Aggregates (sums over venues, our own figures) stay. aprSpread is then null unless at least 3 venues quote the coin and neither end of the spread is a rate shown here (otherwise it would give an exchange's own rate).\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nLicence review: raw rows of Binance and Bybit (single liquidations, prints, order books, tickers, funding and ratios per exchange, exchange candles) are not redistributed through the API while the review of their terms is pending. Asking for such a venue answers 403 source_restricted, and meta.restricted lists the withheld venues. Aggregates (sums over venues, our own figures) stay."
          },
          "response": []
        },
        {
          "name": "Hyperliquid coins",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/coins",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "coins"
              ],
              "query": [
                {
                  "key": "fields",
                  "value": "",
                  "description": "Comma-separated fields of every item to return, e.g. coin,mark,openInterestUsd (case-insensitive). All other fields are left out, so large lists get much smaller; an unknown name answers 400 with the list of fields. Default: every field.",
                  "disabled": true
                },
                {
                  "key": "format",
                  "value": "",
                  "description": "json (default: the { data, meta } envelope) | csv (the rows with a header line; nested values as JSON text) | ndjson (one JSON object per row and line). csv and ndjson carry the meta block in headers: Link rel=\"next\" and X-Blockmetric-Next-Cursor (next page), X-Blockmetric-Next-After (forward polling), X-Blockmetric-Updated-At, X-Blockmetric-Warnings, X-Blockmetric-License. Errors stay JSON.",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "Hyperliquid coins with market data, largest open interest first, with the number of tracked positions and whether a liquidation map exists.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits."
          },
          "response": []
        },
        {
          "name": "Long/short positioning",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/long-short?limit=20",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "long-short"
              ],
              "query": [
                {
                  "key": "coin",
                  "value": "",
                  "description": "Only this coin (optional).",
                  "disabled": true
                },
                {
                  "key": "limit",
                  "value": "20",
                  "description": "Number of items, default 50, clamped to 1–500."
                },
                {
                  "key": "fields",
                  "value": "",
                  "description": "Comma-separated fields of every item to return, e.g. coin,hl (case-insensitive). All other fields are left out, so large lists get much smaller; an unknown name answers 400 with the list of fields. Default: every field.",
                  "disabled": true
                },
                {
                  "key": "format",
                  "value": "",
                  "description": "json (default: the { data, meta } envelope) | csv (the rows with a header line; nested values as JSON text) | ndjson (one JSON object per row and line). csv and ndjson carry the meta block in headers: Link rel=\"next\" and X-Blockmetric-Next-Cursor (next page), X-Blockmetric-Next-After (forward polling), X-Blockmetric-Updated-At, X-Blockmetric-Warnings, X-Blockmetric-License. Errors stay JSON.",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "Long/short positioning per coin: Hyperliquid from the tracked positions (USD and wallet counts per side, ratio = longUsd / shortUsd) and the public account ratios of the enabled exchanges (Binance: all accounts, top accounts, top positions; Bybit; OKX) from the last 60 minutes. A switched-off exchange is left out of the row (no key); null means the exchange is on but has no ratio for the coin. Sorted by Hyperliquid open interest. Licence review: the exchanges’ published ratios are their data 1:1 and left out like a switched-off exchange (meta.restricted); rows then cover coins with a Hyperliquid market.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nLicence review: raw rows of Binance and Bybit (single liquidations, prints, order books, tickers, funding and ratios per exchange, exchange candles) are not redistributed through the API while the review of their terms is pending. Asking for such a venue answers 403 source_restricted, and meta.restricted lists the withheld venues. Aggregates (sums over venues, our own figures) stay."
          },
          "response": []
        },
        {
          "name": "Price candles (OHLC)",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/candles/:coin",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "candles",
                ":coin"
              ],
              "query": [
                {
                  "key": "tf",
                  "value": "",
                  "description": "Candle timeframe: 5m, 15m, 1h (default), 4h or 1d (UTC-aligned). 5m and 15m reach back 35 days (our 5-minute samples and 5-minute trade candles are kept that long, then hourly); older 5m / 15m buckets are gaps, so use 1h or coarser.",
                  "disabled": true
                },
                {
                  "key": "from",
                  "value": "",
                  "description": "Start (ISO 8601, optional; default: `limit` candles before `to`).",
                  "disabled": true
                },
                {
                  "key": "to",
                  "value": "",
                  "description": "End, exclusive (ISO 8601, optional; default now).",
                  "disabled": true
                },
                {
                  "key": "limit",
                  "value": "",
                  "description": "Number of items, default 500, clamped to 1–5000.",
                  "disabled": true
                },
                {
                  "key": "fields",
                  "value": "",
                  "description": "Comma-separated fields of every data.candles item to return, e.g. t,open,high,low,close (case-insensitive). All other fields are left out, so large lists get much smaller; an unknown name answers 400 with the list of fields. Default: every field.",
                  "disabled": true
                },
                {
                  "key": "format",
                  "value": "",
                  "description": "json (default: the { data, meta } envelope) | csv (the rows with a header line; nested values as JSON text) | ndjson (one JSON object per row and line). csv and ndjson carry the meta block in headers: Link rel=\"next\" and X-Blockmetric-Next-Cursor (next page), X-Blockmetric-Next-After (forward polling), X-Blockmetric-Updated-At, X-Blockmetric-Warnings, X-Blockmetric-License. Errors stay JSON.",
                  "disabled": true
                }
              ],
              "variable": [
                {
                  "key": "coin",
                  "value": "BTC",
                  "description": "Coin name, e.g. BTC or xyz:TSLA (case-insensitive)."
                }
              ]
            },
            "description": "Price candles (OHLC) of a Hyperliquid coin, oldest first. Live buckets come from 30-second Hyperliquid mark samples (`price: \"mark\"`, no volume); history before that from trade candles (Binance perpetual for coins listed there, else Hyperliquid) with volume (`volumeUsd` = quote volume where the venue reports it, `volumeBase` in Hyperliquid units, `volumeVenue`). Gaps stay gaps; `complete: false` marks a bucket with missing samples or the one still forming. `from` is clamped to the plan history, `to` to now minus the feed delay. Licence review: candles made only of Binance trades are left out (gaps) and mixed ones lose the Binance volume; coins without a Hyperliquid market answer 403 source_restricted (meta.restricted).\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nLicence review: raw rows of Binance and Bybit (single liquidations, prints, order books, tickers, funding and ratios per exchange, exchange candles) are not redistributed through the API while the review of their terms is pending. Asking for such a venue answers 403 source_restricted, and meta.restricted lists the withheld venues. Aggregates (sums over venues, our own figures) stay."
          },
          "response": []
        },
        {
          "name": "Screener (every coin)",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/screener",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "screener"
              ],
              "query": [
                {
                  "key": "coin",
                  "value": "",
                  "description": "Only this coin (optional).",
                  "disabled": true
                },
                {
                  "key": "sort",
                  "value": "",
                  "description": "oi (default) | change1h | change24h | oiChange1h | oiChange24h | funding | fundingPred | ls | liq24h | cluster | rsi1h | rsi4h | vol | coin; missing values sort last.",
                  "disabled": true
                },
                {
                  "key": "dir",
                  "value": "",
                  "description": "desc (default) | asc.",
                  "disabled": true
                },
                {
                  "key": "minOiUsd",
                  "value": "",
                  "description": "Minimum open interest in USD, default 0.",
                  "disabled": true
                },
                {
                  "key": "limit",
                  "value": "",
                  "description": "Number of items, default 100, clamped to 1–500.",
                  "disabled": true
                },
                {
                  "key": "fields",
                  "value": "",
                  "description": "Comma-separated fields of every item to return, e.g. coin,mark,change24h,oiUsd,fundingApr,rsi1h (case-insensitive). All other fields are left out, so large lists get much smaller; an unknown name answers 400 with the list of fields. Default: every field.",
                  "disabled": true
                },
                {
                  "key": "format",
                  "value": "",
                  "description": "json (default: the { data, meta } envelope) | csv (the rows with a header line; nested values as JSON text) | ndjson (one JSON object per row and line). csv and ndjson carry the meta block in headers: Link rel=\"next\" and X-Blockmetric-Next-Cursor (next page), X-Blockmetric-Next-After (forward polling), X-Blockmetric-Updated-At, X-Blockmetric-Warnings, X-Blockmetric-License. Errors stay JSON.",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "Screener: one row per Hyperliquid coin with price change 1h / 24h (Hyperliquid mark), open interest of the enabled venues and its change 1h / 24h, current and predicted Hyperliquid funding (annualised), tracked Hyperliquid long/short and Binance top-trader ratio, liquidations of the last 24 h, the nearest big liquidation cluster (signed distance, USD, side), RSI(14) of 1h and 4h candles and 24 h realised volatility (annualised; computed for the 80 largest coins by open interest, else null). Licence review: lsBinanceTop is null and coins without a Hyperliquid market are left out (meta.restricted); open interest summed over venues stays, except where exactly one withheld exchange is in the sum (then oiUsd is null: the total minus Hyperliquid would be that exchange’s value).\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nLicence review: raw rows of Binance and Bybit (single liquidations, prints, order books, tickers, funding and ratios per exchange, exchange candles) are not redistributed through the API while the review of their terms is pending. Asking for such a venue answers 403 source_restricted, and meta.restricted lists the withheld venues. Aggregates (sums over venues, our own figures) stay."
          },
          "response": []
        },
        {
          "name": "Predicted next funding",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/funding/predicted",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "funding",
                "predicted"
              ],
              "query": [
                {
                  "key": "coin",
                  "value": "",
                  "description": "Only this coin (optional).",
                  "disabled": true
                },
                {
                  "key": "limit",
                  "value": "",
                  "description": "Number of items, default 300, clamped to 1–500.",
                  "disabled": true
                },
                {
                  "key": "fields",
                  "value": "",
                  "description": "Comma-separated fields of every item to return, e.g. coin,byVenue (case-insensitive). All other fields are left out, so large lists get much smaller; an unknown name answers 400 with the list of fields. Default: every field.",
                  "disabled": true
                },
                {
                  "key": "format",
                  "value": "",
                  "description": "json (default: the { data, meta } envelope) | csv (the rows with a header line; nested values as JSON text) | ndjson (one JSON object per row and line). csv and ndjson carry the meta block in headers: Link rel=\"next\" and X-Blockmetric-Next-Cursor (next page), X-Blockmetric-Next-After (forward polling), X-Blockmetric-Updated-At, X-Blockmetric-Warnings, X-Blockmetric-License. Errors stay JSON.",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "Predicted next funding per coin for Hyperliquid, Binance and Bybit (from Hyperliquid predictedFundings, refreshed every 5 minutes): hourly rate, annualised rate, funding interval and next funding time per venue. Disabled venues are left out, and so are Binance / Bybit during the licence review (meta.restricted). Sorted by Hyperliquid open interest.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nLicence review: raw rows of Binance and Bybit (single liquidations, prints, order books, tickers, funding and ratios per exchange, exchange candles) are not redistributed through the API while the review of their terms is pending. Asking for such a venue answers 403 source_restricted, and meta.restricted lists the withheld venues. Aggregates (sums over venues, our own figures) stay."
          },
          "response": []
        },
        {
          "name": "Cross-venue funding spreads",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/funding/spreads",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "funding",
                "spreads"
              ],
              "query": [
                {
                  "key": "coin",
                  "value": "",
                  "description": "Only this coin (optional).",
                  "disabled": true
                },
                {
                  "key": "basis",
                  "value": "",
                  "description": "current (default) | predicted.",
                  "disabled": true
                },
                {
                  "key": "minOiUsd",
                  "value": "",
                  "description": "Minimum open interest of the thinner leg in USD, default 0.",
                  "disabled": true
                },
                {
                  "key": "limit",
                  "value": "",
                  "description": "Number of items, default 100, clamped to 1–500.",
                  "disabled": true
                },
                {
                  "key": "fields",
                  "value": "",
                  "description": "Comma-separated fields of every item to return, e.g. coin,high,low,spreadApr (case-insensitive). All other fields are left out, so large lists get much smaller; an unknown name answers 400 with the list of fields. Default: every field.",
                  "disabled": true
                },
                {
                  "key": "format",
                  "value": "",
                  "description": "json (default: the { data, meta } envelope) | csv (the rows with a header line; nested values as JSON text) | ndjson (one JSON object per row and line). csv and ndjson carry the meta block in headers: Link rel=\"next\" and X-Blockmetric-Next-Cursor (next page), X-Blockmetric-Next-After (forward polling), X-Blockmetric-Updated-At, X-Blockmetric-Warnings, X-Blockmetric-License. Errors stay JSON.",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "Cross-venue funding spread per coin: the venue with the highest and the lowest annualised funding (current rates or predicted next rates), the spread per year and per day and the smaller open interest of the two legs. A difference between published rates, not an executable return (fees, price moves, funding times). Licence review: a spread involving Binance / Bybit is listed only when at least 3 venues quote the coin and both ends are exchanges whose rates are withheld (a published rate at one end plus the spread would give the other exchange’s rate); such legs keep their venue, their own fundingApr and openInterestUsd are null (meta.restricted).\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nLicence review: raw rows of Binance and Bybit (single liquidations, prints, order books, tickers, funding and ratios per exchange, exchange candles) are not redistributed through the API while the review of their terms is pending. Asking for such a venue answers 403 source_restricted, and meta.restricted lists the withheld venues. Aggregates (sums over venues, our own figures) stay."
          },
          "response": []
        },
        {
          "name": "Blockmetric Sentiment index",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/sentiment",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "sentiment"
              ],
              "query": [
                {
                  "key": "days",
                  "value": "",
                  "description": "Days of daily history, default 90, clamped to 1–1095 and to the plan history (free key 30 days, keyless 24 h).",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "Blockmetric Sentiment: our own 0–100 market sentiment index (0 extreme fear, 100 extreme greed) from data we collect: BTC price momentum and volatility, funding of BTC and ETH perpetuals on Binance and Bybit, BTC open interest change, the Binance long/short account ratio, the liquidation imbalance and the positioning of tracked Hyperliquid whales. Every input is ranked against its own daily values of the previous 365 days and weighted (method, /methodology#sentiment); an input without enough history or data is left out and the others are renormalised (status collecting, missing or off). Returns the current value (recomputed every 15 minutes; daily = true when it is the latest 00:00 UTC value) with the score and points of every input, and the daily history at 00:00 UTC. Inputs leave only as scores, never as raw values.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Liquidations",
      "item": [
        {
          "name": "Liquidations feed",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/liquidations?sinceMinutes=60&limit=50",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "liquidations"
              ],
              "query": [
                {
                  "key": "coin",
                  "value": "",
                  "description": "Coin name as on Hyperliquid (BTC, ETH, kPEPE, HIP-3 names like xyz:TSLA); case-insensitive.",
                  "disabled": true
                },
                {
                  "key": "venue",
                  "value": "",
                  "description": "hyperliquid | lighter | binance | bybit (okx only while enabled, see /methodology#sources) (optional).",
                  "disabled": true
                },
                {
                  "key": "side",
                  "value": "",
                  "description": "long | short = side of the liquidated position (optional).",
                  "disabled": true
                },
                {
                  "key": "minUsd",
                  "value": "",
                  "description": "Minimum notional in USD, default 0.",
                  "disabled": true
                },
                {
                  "key": "sinceMinutes",
                  "value": "60",
                  "description": "Look-back window in minutes, default 60, clamped to the plan history (API Dev 365 days, API Pro 1095 days)."
                },
                {
                  "key": "from",
                  "value": "",
                  "description": "Window start (ISO 8601, inclusive); replaces sinceMinutes. Clamped to the plan history (meta.warnings says so).",
                  "disabled": true
                },
                {
                  "key": "to",
                  "value": "",
                  "description": "Window end (ISO 8601, exclusive; default now): liquidations before it.",
                  "disabled": true
                },
                {
                  "key": "after",
                  "value": "",
                  "description": "Forward polling: only liquidations with an id above this one, oldest first (pass meta.nextAfter of the previous poll; without from / sinceMinutes the window is the plan history). Cannot be combined with cursor.",
                  "disabled": true
                },
                {
                  "key": "limit",
                  "value": "50",
                  "description": "Number of items, default 100, clamped to 1–1000."
                },
                {
                  "key": "cursor",
                  "value": "",
                  "description": "Next page: the value of meta.nextCursor from the previous response (keep the other parameters unchanged). Cursors are signed: an edited cursor answers 400; paging stops at the plan history.",
                  "disabled": true
                },
                {
                  "key": "fields",
                  "value": "",
                  "description": "Comma-separated fields of every item to return, e.g. ts,coin,side,price,usd (case-insensitive). All other fields are left out, so large lists get much smaller; an unknown name answers 400 with the list of fields. Default: every field.",
                  "disabled": true
                },
                {
                  "key": "format",
                  "value": "",
                  "description": "json (default: the { data, meta } envelope) | csv (the rows with a header line; nested values as JSON text) | ndjson (one JSON object per row and line). csv and ndjson carry the meta block in headers: Link rel=\"next\" and X-Blockmetric-Next-Cursor (next page), X-Blockmetric-Next-After (forward polling), X-Blockmetric-Updated-At, X-Blockmetric-Warnings, X-Blockmetric-License. Errors stay JSON.",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "Market-wide liquidations (Hyperliquid liquidations of tracked wallets confirmed by their liquidation fills, with time, price and size of the fills; Lighter trades the exchange flags as liquidations; CEX force orders as reported, where licensed), newest first. `side` is the side of the liquidated position. Bots poll forward with `after` (oldest first, meta.nextAfter) instead of paging back. Stored: every single liquidation 120 days, liquidations of $10,000 or more 3 years (older windows list only those; the totals in /liquidations/summary count every liquidation). Licence review: raw rows of Binance and Bybit (single liquidations, prints, order books, tickers, funding and ratios per exchange, exchange candles) are not redistributed through the API while the review of their terms is pending. Asking for such a venue answers 403 source_restricted, and meta.restricted lists the withheld venues. Aggregates (sums over venues, our own figures) stay.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nPaginated: pass `meta.nextCursor` as `cursor` (or follow `meta.nextUrl`) to get the next page; cursors are bound to this endpoint and its filters.\n\nForward polling: pass the newest id you have as `after` (then `meta.nextAfter`) to get only new rows, oldest first.\n\nLicence review: raw rows of Binance and Bybit (single liquidations, prints, order books, tickers, funding and ratios per exchange, exchange candles) are not redistributed through the API while the review of their terms is pending. Asking for such a venue answers 403 source_restricted, and meta.restricted lists the withheld venues. Aggregates (sums over venues, our own figures) stay."
          },
          "response": []
        },
        {
          "name": "Liquidation totals",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/liquidations/summary?hours=24",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "liquidations",
                "summary"
              ],
              "query": [
                {
                  "key": "coin",
                  "value": "",
                  "description": "Coin name as on Hyperliquid (BTC, ETH, kPEPE, HIP-3 names like xyz:TSLA); case-insensitive.",
                  "disabled": true
                },
                {
                  "key": "hours",
                  "value": "24",
                  "description": "Look-back window in hours, default 24, clamped to 1–26280 (1095 days; single events 120 days, older hours are hourly sums, see hourlySumsBefore; liquidations of $10,000 or more are kept 3 years for largest) and to the plan history (free key 30 days, keyless 24 h)."
                }
              ],
              "variable": []
            },
            "description": "Liquidation totals of the last hours (default 24): long/short USD and count, per venue, the 50 coins with the most USD, the largest single liquidation and an hourly series. CEX totals are what the venues report (they undercount); coveredSince tells from when every venue was collected, and the series starts at the first covered hour (meta.warnings names the cut). Licence review: totals, per-venue sums and the series include every venue (our own aggregates), except that byVenue leaves out a withheld venue whose sum holds a single liquidation (that sum would be the liquidation itself; the totals still count it); largest is a single liquidation of a venue the API serves.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nLicence review: raw rows of Binance and Bybit (single liquidations, prints, order books, tickers, funding and ratios per exchange, exchange candles) are not redistributed through the API while the review of their terms is pending. Asking for such a venue answers 403 source_restricted, and meta.restricted lists the withheld venues. Aggregates (sums over venues, our own figures) stay."
          },
          "response": []
        },
        {
          "name": "Liquidation map (current)",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/liqmap/:coin",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "liqmap",
                ":coin"
              ],
              "query": [],
              "variable": [
                {
                  "key": "coin",
                  "value": "BTC",
                  "description": "Coin name, e.g. BTC (case-insensitive)."
                }
              ]
            },
            "description": "Liquidation map of one coin from the tracked Hyperliquid positions: USD that would be liquidated per price bucket (longs below the mark, shorts above), plus totals. 404 for unknown coins. Free keys: every coin (as \"liquidation levels now\" on the web).\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits."
          },
          "response": []
        },
        {
          "name": "Liquidation heatmap over time",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/heatmap/:coin?hours=24",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "heatmap",
                ":coin"
              ],
              "query": [
                {
                  "key": "tf",
                  "value": "",
                  "description": "Column interval: 1m, 5m, 15m, 1h, 4h, 12h or 1d (UTC aligned: 4h at 00/04/…, 12h at 00/12, 1d at 00:00). An interval outside the plan answers 403 plan_required. 1m only for the top 20 coins by open interest (kept 30 days); a window without 1m data answers 400. Recommended: always pass tf (tf=15m gives the same columns as the default). Without tf the API behaves as before 1.12.0 (15-minute columns, coarsened automatically for long windows) and end is not available.",
                  "disabled": true
                },
                {
                  "key": "hours",
                  "value": "24",
                  "description": "Window in hours (with tf). Default = the interval's default range (1m 6, 5m 24, 15m 24, 1h 336, 4h 720, 12h 4320, 1d 8760), clamped to the plan's heatmap history (free key and keyless the last 24 hours, Pro / API Dev 1 year, Desk / API Pro 3 years). More than the interval's column cap (1m 12 h, 5m 48 h, 15m 168 h, 1h 720 h, 4h 2160 h, 12h 8760 h, 1d 26280 h) or the heatmap history answers 400 invalid_param, never coarsened silently."
                },
                {
                  "key": "end",
                  "value": "",
                  "description": "End of the window (ISO 8601, default now; needs tf, without tf 400): page back in time, e.g. 1m columns three days ago. Clamped to now and to the plan's heatmap history (meta.warnings says so).",
                  "disabled": true
                },
                {
                  "key": "columns",
                  "value": "",
                  "description": "all (default) | live: only the columns of the live collection (data.dataSource live); columns filled from the daily snapshot become gaps (zero cells, hasSnapshot false, mark null), like a window without a snapshot. Times and price rows stay the same.",
                  "disabled": true
                },
                {
                  "key": "clusters",
                  "value": "",
                  "description": "Add data.clusters: the N (1–20) price buckets with the most USD above and below the mark of the newest column with a snapshot (price, usd, longUsd, shortUsd, signed distance): the alert-bot view without reading cells.",
                  "disabled": true
                },
                {
                  "key": "venue",
                  "value": "",
                  "description": "hyperliquid (default: the tracked Hyperliquid positions, the answer as before) | lighter | lighter_rh (tracked Lighter / Lighter RH accounts with the liquidation price Lighter reports) | dydx | gmx (every open dYdX v4 / GMX v2 position read from the chain, with the liquidation price we compute from the chain state) | all (every enabled DEX venue: the real per-venue layers added per column; data.venueColumns says which venue contributed a snapshot to which column, a venue without one adds nothing). Never an estimate for positions that are not public. A coin without a market on the venue answers 404; a switched-off venue 400.",
                  "disabled": true
                },
                {
                  "key": "stepMinutes",
                  "value": "",
                  "description": "Deprecated (API 1.12.0), use tf. Without tf: column width in minutes, default 15, clamped to 5–1440, coarsened automatically for long windows (≥ 60 beyond 14 days, at most 720 columns). Below 15 needs Pro, Desk or an API plan (403 plan_required, since 1.23.0). Together with tf: 400.",
                  "disabled": true
                },
                {
                  "key": "layer",
                  "value": "",
                  "description": "real (default, the only layer: tracked positions of the venue). est / both were removed on 2026-10-23 (API 1.9.0) together with the estimated CEX layer (real data only); they now answer 400 invalid_param.",
                  "disabled": true
                }
              ],
              "variable": [
                {
                  "key": "coin",
                  "value": "BTC",
                  "description": "Coin name, e.g. BTC (case-insensitive)."
                }
              ]
            },
            "description": "Liquidation heatmap over time from the tracked Hyperliquid positions (venue=lighter | lighter_rh: tracked Lighter / Lighter RH accounts with the liquidation price Lighter reports; venue=dydx | gmx: every open dYdX v4 / GMX v2 position read from the chain, with the liquidation price we compute from the chain state; venue=all: every enabled real layer added per column): one column per interval `tf` (times, UTC aligned), one row per price bucket (prices, ascending); cells[t][p] is the USD that would be liquidated in that bucket at that time (longCells / shortCells split by side), plus the mark per column. A column shows the levels at its start: the first stored snapshot inside it (snapshotAt), never a sum of several; the running column shows the newest snapshot (live). 1m columns (and 5m for the top 20 coins) come from a fine layer (0.1 % buckets within ±10 %, a snapshot every minute), the rest from 0.5 % buckets within ±50 % (layer, bucketPct, rangePct). freshUsdShare / ageP50Sec per column say how much of the mapped USD was re-read within the cadence and how old it is. tf=1d (Hyperliquid): every day the daily history covers shows its snapshot of every open Hyperliquid position (shortly after 00:00 UTC, the same 0.5 % buckets), the tracked wallets only the days it does not cover yet (normally today); columnSource says which per column, the price rows span the lowest to the highest column mark ± 30 %, and the window reaches as far back as the plan history. Intraday tf (Hyperliquid): every value is measured, nothing is computed between snapshots (since 1.22.0). Live columns start on 2026-11-03 14:15 UTC; before that a column shows the newest daily snapshot of all positions before its end when it is at most 24 hours older (columnSource daily_fill, never across a missing day); after it a column without a live snapshot shows the same daily snapshot until the next live column. Columns reconstructed from fills (columnSource reconstructed, dataSource reconstructed_fills, the recon* fields) are no longer returned; the values stay in the schema. data.dataSource marks every column live or daily_snapshot; columns=live keeps only the live columns. Intervals per plan: free key and keyless 15m, 1h; Pro / API Dev add 5m, 4h, 12h, 1d; Desk / API Pro add 1m. Every coin on every plan; heatmap history (also for its layers): free key and keyless the last 24 hours, Pro / API Dev 1 year, Desk / API Pro 3 years.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits."
          },
          "response": []
        },
        {
          "name": "Open interest added per price band",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/heatmap/:coin/open-interest?hours=24",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "heatmap",
                ":coin",
                "open-interest"
              ],
              "query": [
                {
                  "key": "hours",
                  "value": "24",
                  "description": "Window in hours, default 24, clamped to 1 to 840 (35 days of 5-minute open interest) and to the plan's heatmap history (free key and keyless the last 24 hours, Pro / API Dev 1 year, Desk / API Pro 3 years; meta.warnings says so)."
                },
                {
                  "key": "end",
                  "value": "",
                  "description": "End of the window (ISO 8601, default now), rounded up to the end of its 5-minute step (from / to say which steps were read). Clamped to now and to the readable history.",
                  "disabled": true
                },
                {
                  "key": "venue",
                  "value": "",
                  "description": "all (default: every enabled exchange, summed per band) | binance | bybit | okx (one exchange; 403 source_restricted while its licence review is pending, 400 when switched off).",
                  "disabled": true
                },
                {
                  "key": "bandPct",
                  "value": "",
                  "description": "Band width in percent of the price, default 0.5 (a round step near it, like the heatmap rows), 0.1 to 5.",
                  "disabled": true
                }
              ],
              "variable": [
                {
                  "key": "coin",
                  "value": "BTC",
                  "description": "Coin name as on Hyperliquid, e.g. BTC (case-insensitive). Exchange listings are matched to it (kPEPE = 1000PEPE)."
                }
              ]
            },
            "description": "Where open interest was added and removed on the exchanges (Binance, Bybit; OKX while enabled), per price band: the \"open interest added at this price\" layer of the heatmap. Built only from what the exchanges publish and our collector stores every minute (open interest and the exchange's own mark price, kept in 5-minute buckets for 35 days): for two consecutive 5-minute buckets of one exchange, the change of open interest in contracts, valued at the bucket's price (the middle of its high and low), goes into the price band of that price. addedUsd = the positive changes, removedUsd = the negative ones, netUsd = added minus removed, steps = 5-minute steps with a change. No leverage is assumed and no liquidation price is estimated: this is not a position map. Limits: only the net change per 5 minutes is visible (openings and closings inside one step offset each other); a new contract always has a long and a short side, so added open interest does not say who bought; a step whose price range crosses a band edge counts in the band of its middle price (spanningSteps); a gap in our collection is never bridged; Binance open interest of coins outside the top 60 is read in rotation, so a change can land a few minutes late. Licence review: venue=binance / bybit answers 403 source_restricted; venue=all (default) publishes the sum over the exchanges per band where at least two withheld exchanges contributed to it (otherwise the band keeps its steps and venues and has null amounts, withheld: true), byVenue lists only exchanges that are not withheld, and totals add up the published bands. Same coins per plan as /heatmap/{coin} (free key: BTC, ETH and HYPE).\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nLicence review: raw rows of Binance and Bybit (single liquidations, prints, order books, tickers, funding and ratios per exchange, exchange candles) are not redistributed through the API while the review of their terms is pending. Asking for such a venue answers 403 source_restricted, and meta.restricted lists the withheld venues. Aggregates (sums over venues, our own figures) stay."
          },
          "response": []
        },
        {
          "name": "Wallets with their liquidation price in a band",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/heatmap/:coin/wallets?clusters=3&limit=5",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "heatmap",
                ":coin",
                "wallets"
              ],
              "query": [
                {
                  "key": "lo",
                  "value": "",
                  "description": "Lower edge of the band (USD, inclusive). Needs hi; the band is at most 20 % of the price wide.",
                  "disabled": true
                },
                {
                  "key": "hi",
                  "value": "",
                  "description": "Upper edge of the band (USD, exclusive). Needs lo.",
                  "disabled": true
                },
                {
                  "key": "price",
                  "value": "",
                  "description": "Instead of lo / hi: the heatmap row (0.5 % bucket of the liquidation map) holding this price.",
                  "disabled": true
                },
                {
                  "key": "clusters",
                  "value": "3",
                  "description": "Instead of a band: the N (1 to 10) largest levels above and below the mark of the current liquidation map, each with its wallets. Default 3 when neither lo / hi nor price is given."
                },
                {
                  "key": "side",
                  "value": "",
                  "description": "long | short (optional).",
                  "disabled": true
                },
                {
                  "key": "minUsd",
                  "value": "",
                  "description": "Minimum position notional in USD, default 0.",
                  "disabled": true
                },
                {
                  "key": "limit",
                  "value": "5",
                  "description": "Number of items, default 20, clamped to 1–100."
                }
              ],
              "variable": [
                {
                  "key": "coin",
                  "value": "BTC",
                  "description": "Coin name, e.g. BTC (case-insensitive)."
                }
              ]
            },
            "description": "Tracked Hyperliquid wallets whose position in this coin has its liquidation price in a band right now: size, side, leverage, liquidation price and its signed distance from the mark (liqDistance, fraction), with a link to the wallet page (url). The same positions the live heatmap columns are built from (the newest poll of each wallet, minutes old; a long whose liquidation price is already at or above the mark, or a short at or below it, is left out as on the heatmap). Reconstructed or daily columns have no wallets: wallets are listed for now only. Ask for one band with lo and hi, the heatmap row holding a price with price, or the N largest levels above and below the mark of the current liquidation map with clusters (the default, clusters=3, when none of them is given; each with its wallets; longLevelUsd / shortLevelUsd = the USD of that level in the map). positions, longUsd and shortUsd count every tracked position in the band, wallets lists the largest (limit). Only wallets we track, not every account on Hyperliquid. Same plan rule as /liqmap/{coin}.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits."
          },
          "response": []
        },
        {
          "name": "Cluster hit rates (scoreboard)",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/scoreboard?coin=BTC",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "scoreboard"
              ],
              "query": [
                {
                  "key": "coin",
                  "value": "BTC",
                  "description": "Optional: one coin, with the hit rates of its current clusters."
                },
                {
                  "key": "limit",
                  "value": "",
                  "description": "Number of items, default 50, clamped to 1–500.",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "The cluster scoreboard: how often big liquidation clusters of the tracked Hyperliquid positions were reached by the price within 4, 24 and 72 hours, per coin (first row ALL = every coin), with the number of scored clusters, the median time to the touch and the median distance. A cluster counts for a horizon only once it is at least that old. With coin: also the big clusters of its liquidation map now (same rule as the observations: within 15 % of the mark, the 3 largest buckets of at least $5M) and, for each, how often past clusters of the same coin, side and distance band (0 to 1 %, 1 to 2 %, 2 to 3 %, 3 to 5 %, 5 to 10 %, 10 to 15 %) were reached: n, reached, rate and a 95 % Wilson interval. Below 10 scored clusters there is no rate (only reached of n), below 30 small: true; when the coin has fewer than 10 at 24 hours, scope all_coins uses the same side and band over every coin. Real computed statistics from our stored observations (method); a lower bound, because wicks between two 30-second price samples are not seen. Past results do not predict prices.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Whales",
      "item": [
        {
          "name": "Largest positions",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/positions/top?coin=BTC&limit=10",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "positions",
                "top"
              ],
              "query": [
                {
                  "key": "coin",
                  "value": "BTC",
                  "description": "Coin name as on Hyperliquid (BTC, ETH, kPEPE, HIP-3 names like xyz:TSLA); case-insensitive."
                },
                {
                  "key": "side",
                  "value": "",
                  "description": "long | short (optional).",
                  "disabled": true
                },
                {
                  "key": "minUsd",
                  "value": "",
                  "description": "Minimum position notional in USD, default 0.",
                  "disabled": true
                },
                {
                  "key": "limit",
                  "value": "10",
                  "description": "Number of items, default 50, clamped to 1–500."
                },
                {
                  "key": "cursor",
                  "value": "",
                  "description": "Next page: the value of meta.nextCursor from the previous response (keep the other parameters unchanged). Cursors are signed: an edited cursor answers 400; paging stops at the plan history.",
                  "disabled": true
                },
                {
                  "key": "venue",
                  "value": "",
                  "description": "hyperliquid (default, the Hyperliquid answer as before) | lighter (tracked Lighter accounts: address = the Lighter account index, venue = \"lighter\", liqPx as the exchange reports it). A switched-off venue answers 400.",
                  "disabled": true
                },
                {
                  "key": "fields",
                  "value": "",
                  "description": "Comma-separated fields of every item to return, e.g. address,coin,side,positionUsd,liqPx (case-insensitive). All other fields are left out, so large lists get much smaller; an unknown name answers 400 with the list of fields. Default: every field.",
                  "disabled": true
                },
                {
                  "key": "format",
                  "value": "",
                  "description": "json (default: the { data, meta } envelope) | csv (the rows with a header line; nested values as JSON text) | ndjson (one JSON object per row and line). csv and ndjson carry the meta block in headers: Link rel=\"next\" and X-Blockmetric-Next-Cursor (next page), X-Blockmetric-Next-After (forward polling), X-Blockmetric-Updated-At, X-Blockmetric-Warnings, X-Blockmetric-License. Errors stay JSON.",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "Largest tracked Hyperliquid positions (venue=lighter: tracked Lighter accounts) with entry, leverage, liquidation price and the signed distance from the mark to the liquidation price (liqDistance, fraction).\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nPaginated: pass `meta.nextCursor` as `cursor` (or follow `meta.nextUrl`) to get the next page; cursors are bound to this endpoint and its filters."
          },
          "response": []
        },
        {
          "name": "Whale leaderboard",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/whales?sort=size&limit=20",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "whales"
              ],
              "query": [
                {
                  "key": "sort",
                  "value": "size",
                  "description": "size (open notional, default) | pnl (all-time PnL) | near_liq (closest liquidation of a position ≥ $100k) | liquidated (most fill-confirmed liquidations)."
                },
                {
                  "key": "coin",
                  "value": "",
                  "description": "Only wallets with a position in this coin (sort=liquidated: liquidations in this coin).",
                  "disabled": true
                },
                {
                  "key": "labelled",
                  "value": "",
                  "description": "true = only wallets with a public label from a cited source; default false.",
                  "disabled": true
                },
                {
                  "key": "limit",
                  "value": "20",
                  "description": "Number of items, default 50, clamped to 1–500."
                },
                {
                  "key": "venue",
                  "value": "",
                  "description": "hyperliquid (default, the Hyperliquid answer as before) | lighter (tracked Lighter accounts: address = the Lighter account index, venue = \"lighter\", liqPx as the exchange reports it). A switched-off venue answers 400.",
                  "disabled": true
                },
                {
                  "key": "fields",
                  "value": "",
                  "description": "Comma-separated fields of every item to return, e.g. address,label,accountValue,positionsUsd (case-insensitive). All other fields are left out, so large lists get much smaller; an unknown name answers 400 with the list of fields. Default: every field.",
                  "disabled": true
                },
                {
                  "key": "format",
                  "value": "",
                  "description": "json (default: the { data, meta } envelope) | csv (the rows with a header line; nested values as JSON text) | ndjson (one JSON object per row and line). csv and ndjson carry the meta block in headers: Link rel=\"next\" and X-Blockmetric-Next-Cursor (next page), X-Blockmetric-Next-After (forward polling), X-Blockmetric-Updated-At, X-Blockmetric-Warnings, X-Blockmetric-License. Errors stay JSON.",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "Whale leaderboard of tracked Hyperliquid wallets with public labels (label + labelSource URL; otherwise the self-chosen leaderboard name), open notional, PnL, largest position with liquidation distance and the number of fill-confirmed liquidations. venue=lighter: tracked Lighter accounts (address = account index, l1Address, the self-chosen account name as label; sort size or pnl; liquidations null: not attributed per account).\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits."
          },
          "response": []
        },
        {
          "name": "Whale position changes",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/whales/feed?limit=20",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "whales",
                "feed"
              ],
              "query": [
                {
                  "key": "coin",
                  "value": "",
                  "description": "Coin name as on Hyperliquid (BTC, ETH, kPEPE, HIP-3 names like xyz:TSLA); case-insensitive.",
                  "disabled": true
                },
                {
                  "key": "minUsd",
                  "value": "",
                  "description": "Minimum absolute USD change, default 0.",
                  "disabled": true
                },
                {
                  "key": "since",
                  "value": "",
                  "description": "ISO 8601 time; only events after it (optional). Clamped to the plan history (free key 30 days, keyless 24 h): older events are never returned, also not via cursor.",
                  "disabled": true
                },
                {
                  "key": "limit",
                  "value": "20",
                  "description": "Number of items, default 50, clamped to 1–500."
                },
                {
                  "key": "cursor",
                  "value": "",
                  "description": "Next page: the value of meta.nextCursor from the previous response (keep the other parameters unchanged). Cursors are signed: an edited cursor answers 400; paging stops at the plan history.",
                  "disabled": true
                },
                {
                  "key": "fields",
                  "value": "",
                  "description": "Comma-separated fields of every item to return, e.g. ts,address,coin,kind,usdDelta (case-insensitive). All other fields are left out, so large lists get much smaller; an unknown name answers 400 with the list of fields. Default: every field.",
                  "disabled": true
                },
                {
                  "key": "format",
                  "value": "",
                  "description": "json (default: the { data, meta } envelope) | csv (the rows with a header line; nested values as JSON text) | ndjson (one JSON object per row and line). csv and ndjson carry the meta block in headers: Link rel=\"next\" and X-Blockmetric-Next-Cursor (next page), X-Blockmetric-Next-After (forward polling), X-Blockmetric-Updated-At, X-Blockmetric-Warnings, X-Blockmetric-License. Errors stay JSON.",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "Whale position changes (open, close, increase, decrease, flip, liquidated), newest first. Use `since` as a polling cursor. Stored history: open / close / flip / liquidated 400 days, increase / decrease 90 days.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nPaginated: pass `meta.nextCursor` as `cursor` (or follow `meta.nextUrl`) to get the next page; cursors are bound to this endpoint and its filters."
          },
          "response": []
        },
        {
          "name": "Wallet detail",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/wallets/:address",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "wallets",
                ":address"
              ],
              "query": [
                {
                  "key": "limit",
                  "value": "",
                  "description": "Number of position events, default 50, clamped to 1–200.",
                  "disabled": true
                }
              ],
              "variable": [
                {
                  "key": "address",
                  "value": "0x5b5d51203a0f9079f8aeb098a6523a13f298c060",
                  "description": "0x address (40 hex characters, any case)."
                }
              ]
            },
            "description": "One tracked Hyperliquid wallet: stored account data, current positions (largest first), latest position events (increase / decrease kept 90 days, the other kinds 400 days) and totals. 404 when the wallet is not tracked.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits."
          },
          "response": []
        },
        {
          "name": "Whale stop / TP map",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/whales/stops?coin=BTC",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "whales",
                "stops"
              ],
              "query": [
                {
                  "key": "coin",
                  "value": "BTC",
                  "description": "Coin for the bucket map and the overlay (optional; without it: per-coin table)."
                }
              ],
              "variable": []
            },
            "description": "Stop / take-profit map of the largest tracked Hyperliquid wallets (default the 150 largest by open notional, open orders read every ~40 min): with `coin`, the trigger orders per price bucket (sell stops below / buy stops above the price, TPs separately), a heatmap overlay (`overlay`: price, label, side, usd) and coverage; without `coin`, a per-coin table with the largest stop cluster below and above the price. Only these wallets and only the main dex, not the whole market. The free key covers BTC, ETH and HYPE.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits."
          },
          "response": []
        },
        {
          "name": "Trader leaderboard",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/traders?sort=pnl_month&limit=25",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "traders"
              ],
              "query": [
                {
                  "key": "sort",
                  "value": "pnl_month",
                  "description": "pnl_day | pnl_week | pnl_month (default) | pnl_all | roi_week | roi_month | roi_all | account_value | vlm_month | sharpe | drawdown (smallest first)."
                },
                {
                  "key": "search",
                  "value": "",
                  "description": "Address prefix (0x…) or part of a displayed name (paid plans).",
                  "disabled": true
                },
                {
                  "key": "style",
                  "value": "",
                  "description": "scalper | swing | position | high_turnover | high_leverage | mostly_long | mostly_short (paid plans).",
                  "disabled": true
                },
                {
                  "key": "minAccountValue",
                  "value": "",
                  "description": "Minimum account value in USD (paid plans).",
                  "disabled": true
                },
                {
                  "key": "limit",
                  "value": "25",
                  "description": "Number of items, default 50, clamped to 1–500."
                },
                {
                  "key": "cursor",
                  "value": "",
                  "description": "Next page: the value of meta.nextCursor from the previous response (keep the other parameters unchanged). Cursors are signed: an edited cursor answers 400; paging stops at the plan history.",
                  "disabled": true
                },
                {
                  "key": "fields",
                  "value": "",
                  "description": "Comma-separated fields of every data.rows item to return, e.g. rank,address,pnl,roi (case-insensitive). All other fields are left out, so large lists get much smaller; an unknown name answers 400 with the list of fields. Default: every field.",
                  "disabled": true
                },
                {
                  "key": "format",
                  "value": "",
                  "description": "json (default: the { data, meta } envelope) | csv (the rows with a header line; nested values as JSON text) | ndjson (one JSON object per row and line). csv and ndjson carry the meta block in headers: Link rel=\"next\" and X-Blockmetric-Next-Cursor (next page), X-Blockmetric-Next-After (forward polling), X-Blockmetric-Updated-At, X-Blockmetric-Warnings, X-Blockmetric-License. Errors stay JSON.",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "Trader leaderboard from the official Hyperliquid leaderboard (PnL, ROI and volume of day / week / month / all-time; PnL is the change of the account with its sub-accounts and spot balances, so deposits and withdrawals do not count) plus what we observed: win rate and holding time from our position polls, max drawdown and Sharpe from Hyperliquid portfolio history (top traders), style tags and cohorts. Only single trading accounts are listed (no vaults, dust or accounts without trading; ROI / Sharpe / drawdown sorts need more, `rules` says what applies). Names are self-chosen unless `labelSource` is a URL. Free keys: the top 100 of any sort with every column (`full: false`: no search, style filter or paging).\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nPaginated: pass `meta.nextCursor` as `cursor` (or follow `meta.nextUrl`) to get the next page; cursors are bound to this endpoint and its filters."
          },
          "response": []
        },
        {
          "name": "Cohort positioning",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/cohorts?coin=BTC",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "cohorts"
              ],
              "query": [
                {
                  "key": "coin",
                  "value": "BTC",
                  "description": "Coin, or ALL (default) for every position."
                },
                {
                  "key": "dim",
                  "value": "",
                  "description": "size | pnl. With `cohort`: only changes of that cohort.",
                  "disabled": true
                },
                {
                  "key": "cohort",
                  "value": "",
                  "description": "shrimp | fish | dolphin | shark | whale | top | profitable | flat | losing | rekt (needs dim).",
                  "disabled": true
                },
                {
                  "key": "limit",
                  "value": "",
                  "description": "Number of items, default 30, clamped to 1–200.",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "Positioning of tracked Hyperliquid wallets by cohort: size (shrimp < $10K, fish, dolphin, shark, whale ≥ $10M account value) and all-time PnL (top ≥ +$1M, profitable, flat, losing, rekt ≤ −$1M): long / short notional, wallets and long share now, its change over 15m / 1h / 4h / 24h / 3d / 7d (from 5-min snapshots, capped at the plan history), recent position changes with cohorts and the net flow of the last hour. Coverage is the wallets this service polls (large wallets far better than small ones).\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits."
          },
          "response": []
        },
        {
          "name": "Smart-money convergence",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/smart-money?limit=10",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "smart-money"
              ],
              "query": [
                {
                  "key": "coin",
                  "value": "",
                  "description": "Only this coin (optional).",
                  "disabled": true
                },
                {
                  "key": "limit",
                  "value": "10",
                  "description": "Number of items, default 30, clamped to 1–200."
                }
              ],
              "variable": []
            },
            "description": "Smart-money convergence: events when at least K (default 3) of the top all-time-PnL Hyperliquid wallets (without vaults, market makers by fill counts and turnover, and delta-neutral books) open or add the same side of a coin within the window (default 60 min), plus the current positioning of these wallets and the filter statistics. Events are delayed for free keys (meta.delayMinutes).\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits."
          },
          "response": []
        },
        {
          "name": "Whale movements (on-chain + Hyperliquid)",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/movements?minUsd=5000000&limit=20",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "movements"
              ],
              "query": [
                {
                  "key": "type",
                  "value": "",
                  "description": "Comma list of transfer | exchange_in | exchange_out | exchange_exchange | mint | burn | bridge | dex_buy | dex_sell | perp_position | big_trade (optional, default all).",
                  "disabled": true
                },
                {
                  "key": "chain",
                  "value": "",
                  "description": "ethereum | arbitrum | base | bitcoin | hyperliquid (optional).",
                  "disabled": true
                },
                {
                  "key": "asset",
                  "value": "",
                  "description": "Asset symbol, e.g. BTC, ETH, USDT, USDC (ETH also finds WETH, BTC finds WBTC, USDT finds USDT0) (optional).",
                  "disabled": true
                },
                {
                  "key": "minUsd",
                  "value": "5000000",
                  "description": "Minimum value in USD on top of the feed thresholds, default 0."
                },
                {
                  "key": "labelled",
                  "value": "",
                  "description": "true = only items with a labelled sender or receiver.",
                  "disabled": true
                },
                {
                  "key": "address",
                  "value": "",
                  "description": "Only movements of this EVM or Bitcoin address (includes smaller transfers of addresses watched by alert rules).",
                  "disabled": true
                },
                {
                  "key": "since",
                  "value": "",
                  "description": "ISO time; clamped to the plan history.",
                  "disabled": true
                },
                {
                  "key": "limit",
                  "value": "20",
                  "description": "Number of items, default 50, clamped to 1–500."
                },
                {
                  "key": "cursor",
                  "value": "",
                  "description": "Next page: the value of meta.nextCursor from the previous response (keep the other parameters unchanged). Cursors are signed: an edited cursor answers 400; paging stops at the plan history.",
                  "disabled": true
                },
                {
                  "key": "fields",
                  "value": "",
                  "description": "Comma-separated fields of every item to return, e.g. ts,type,asset,usd,from,to (case-insensitive). All other fields are left out, so large lists get much smaller; an unknown name answers 400 with the list of fields. Default: every field.",
                  "disabled": true
                },
                {
                  "key": "format",
                  "value": "",
                  "description": "json (default: the { data, meta } envelope) | csv (the rows with a header line; nested values as JSON text) | ndjson (one JSON object per row and line). csv and ndjson carry the meta block in headers: Link rel=\"next\" and X-Blockmetric-Next-Cursor (next page), X-Blockmetric-Next-After (forward polling), X-Blockmetric-Updated-At, X-Blockmetric-Warnings, X-Blockmetric-License. Errors stay JSON.",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "Whale movements, newest first, in one feed: large on-chain transfers (Ethereum, Arbitrum, Base from $1M, stablecoins from $5M; Bitcoin from $1M, change excluded), exchange in- and outflows (exchanges’ own proof-of-reserves addresses), stablecoin mints / burns, bridge transfers, large swaps on the biggest Uniswap v3 / Aerodrome pools (from $500K) and Hyperliquid whale position changes and large Hyperliquid trades (from $1M). Labels only from cited sources; every other wallet is named by its address. USD: stablecoins at their latest fresh Chainlink answer (USDT, USDC, DAI / USD), WBTC at the Hyperliquid BTC mark × Chainlink WBTC / BTC, other assets at the Hyperliquid mark; no fresh price → usd null and priceSource \"unavailable\" (such items never pass minUsd). priceSource and details.value say which. CEX trade prints are not included.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nPaginated: pass `meta.nextCursor` as `cursor` (or follow `meta.nextUrl`) to get the next page; cursors are bound to this endpoint and its filters."
          },
          "response": []
        },
        {
          "name": "Exchange on-chain flows",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/exchange-flows?hours=24",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "exchange-flows"
              ],
              "query": [
                {
                  "key": "hours",
                  "value": "24",
                  "description": "Window in hours, default 24, clamped to 1–2160 and to the plan history."
                },
                {
                  "key": "exchange",
                  "value": "",
                  "description": "Only this exchange, e.g. Binance (optional).",
                  "disabled": true
                },
                {
                  "key": "asset",
                  "value": "",
                  "description": "Only this asset family, e.g. BTC, ETH, USDT, USDC (optional).",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "On-chain exchange flows: inflow, outflow and net (in − out) per exchange and asset over a window, from every scanned transfer into or out of the exchange’s own proof-of-reserves addresses (all sizes on Ethereum, Arbitrum and Base; large transactions on Bitcoin). Internal moves between two addresses of one exchange are left out. coverageFrom = first hour with data (earlier flows are unknown, not zero).\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Order flow",
      "item": [
        {
          "name": "Order book liquidity and walls",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/orderbook/:coin",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "orderbook",
                ":coin"
              ],
              "query": [
                {
                  "key": "venue",
                  "value": "",
                  "description": "hyperliquid | binance | bybit (optional; default every covered venue the API serves).",
                  "disabled": true
                },
                {
                  "key": "hours",
                  "value": "",
                  "description": "Add the book heatmap over the last N hours (Pro / API Dev up to 168, Desk / API Pro up to 720); 0 or absent = current book only. Free keys: 403.",
                  "disabled": true
                }
              ],
              "variable": [
                {
                  "key": "coin",
                  "value": "BTC",
                  "description": "Coin name, e.g. BTC (case-insensitive)."
                }
              ]
            },
            "description": "Order book liquidity of one coin: resting USD per price bucket for every covered venue (Hyperliquid l2Book in a fine layer ≈ ±2 % and a coarse layer ≈ ±10–25 %, Binance / Bybit local books within ±5 %), depth within 1 / 2 / 5 % and the bid/ask imbalance, plus walls (large resting liquidity relative to the buckets around it) that are active or ended in the last hour. Status pulled = removed before the price touched it, filled = the price traded into it. Walls cannot be attributed to wallets and a pulled wall is not proof of spoofing. With `hours` also the book heatmap over time (paid plans). Free keys: BTC, ETH and HYPE, current book only. Distances are fractions (walls[].distance, depth[].band; the older …Pct names hold the same fractions). Coins without a Hyperliquid market answer 404. Licence review: Binance / Bybit books and walls are withheld (meta.restricted); venue=binance|bybit answers 403 source_restricted.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nLicence review: raw rows of Binance and Bybit (single liquidations, prints, order books, tickers, funding and ratios per exchange, exchange candles) are not redistributed through the API while the review of their terms is pending. Asking for such a venue answers 403 source_restricted, and meta.restricted lists the withheld venues. Aggregates (sums over venues, our own figures) stay."
          },
          "response": []
        },
        {
          "name": "Taker flow (CVD) and volume profile",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/flow/:coin?hours=24",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "flow",
                ":coin"
              ],
              "query": [
                {
                  "key": "venue",
                  "value": "",
                  "description": "hyperliquid | binance | bybit (optional).",
                  "disabled": true
                },
                {
                  "key": "hours",
                  "value": "24",
                  "description": "Window in hours, default 24 (free key 1), clamped to the plan history (Pro / API Dev 168, Desk / API Pro 9600)."
                },
                {
                  "key": "stepMinutes",
                  "value": "",
                  "description": "Bar size 1 | 5 | 15 | 60 | 240 | 1440 minutes (default: ≤ 360 bars; windows older than 8 days use hourly bars). At most 1,440 bars per call: a finer size is coarsened to the next one that fits (e.g. stepMinutes=1 over 48 hours → 5-minute bars); the answer names the size used in stepMinutes.",
                  "disabled": true
                }
              ],
              "variable": [
                {
                  "key": "coin",
                  "value": "BTC",
                  "description": "Coin name, e.g. BTC (case-insensitive)."
                }
              ]
            },
            "description": "Taker flow of one coin: buy / sell volume of the aggressor per bar, delta and cumulative volume delta (CVD), summed over the perpetual venues, per venue (Binance spot separately where collected), by print size (under $10k, $10k–100k, $100k–1M, $1M and more; a print = the fills of one taker order) and for tracked Hyperliquid whales (USD they bought minus sold, either side of the trade), plus the volume profile (taker volume by price, point of control, 70 % value area) of the window. Free keys: BTC, ETH and HYPE, last 24 hours. Coins without a Hyperliquid market answer 404. Licence review: byVenue shows Hyperliquid only; total, bySize and the profile still sum every venue, in bars of at least 5 minutes (venue=hyperliquid keeps 1-minute bars); venue=binance|bybit answers 403 source_restricted.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nLicence review: raw rows of Binance and Bybit (single liquidations, prints, order books, tickers, funding and ratios per exchange, exchange candles) are not redistributed through the API while the review of their terms is pending. Asking for such a venue answers 403 source_restricted, and meta.restricted lists the withheld venues. Aggregates (sums over venues, our own figures) stay."
          },
          "response": []
        },
        {
          "name": "Large-trade tape",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/tape?limit=50",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "tape"
              ],
              "query": [
                {
                  "key": "coin",
                  "value": "",
                  "description": "Only this coin (optional; free keys: BTC, ETH or HYPE, default all three).",
                  "disabled": true
                },
                {
                  "key": "venue",
                  "value": "",
                  "description": "hyperliquid | binance | bybit (optional).",
                  "disabled": true
                },
                {
                  "key": "side",
                  "value": "",
                  "description": "buy | sell = side of the taker (optional).",
                  "disabled": true
                },
                {
                  "key": "minUsd",
                  "value": "",
                  "description": "Minimum print size in USD on top of the tape threshold, default 0.",
                  "disabled": true
                },
                {
                  "key": "sinceMinutes",
                  "value": "",
                  "description": "Look-back window in minutes, default 60, clamped to the plan history (free key 60).",
                  "disabled": true
                },
                {
                  "key": "from",
                  "value": "",
                  "description": "Window start (ISO 8601, inclusive); replaces sinceMinutes. Clamped to the plan history (meta.warnings says so).",
                  "disabled": true
                },
                {
                  "key": "to",
                  "value": "",
                  "description": "Window end (ISO 8601, exclusive; default now): prints before it.",
                  "disabled": true
                },
                {
                  "key": "after",
                  "value": "",
                  "description": "Forward polling: only prints with an id above this one, oldest first (pass meta.nextAfter of the previous poll; without from / sinceMinutes the window is the plan history). Cannot be combined with cursor.",
                  "disabled": true
                },
                {
                  "key": "limit",
                  "value": "50",
                  "description": "Number of items, default 100, clamped to 1–1000."
                },
                {
                  "key": "cursor",
                  "value": "",
                  "description": "Next page: the value of meta.nextCursor from the previous response (keep the other parameters unchanged). Cursors are signed: an edited cursor answers 400; paging stops at the plan history.",
                  "disabled": true
                },
                {
                  "key": "fields",
                  "value": "",
                  "description": "Comma-separated fields of every item to return, e.g. ts,coin,side,px,usd (case-insensitive). All other fields are left out, so large lists get much smaller; an unknown name answers 400 with the list of fields. Default: every field.",
                  "disabled": true
                },
                {
                  "key": "format",
                  "value": "",
                  "description": "json (default: the { data, meta } envelope) | csv (the rows with a header line; nested values as JSON text) | ndjson (one JSON object per row and line). csv and ndjson carry the meta block in headers: Link rel=\"next\" and X-Blockmetric-Next-Cursor (next page), X-Blockmetric-Next-After (forward polling), X-Blockmetric-Updated-At, X-Blockmetric-Warnings, X-Blockmetric-License. Errors stay JSON.",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "Large-trade tape: taker prints at or above the tape threshold ($250k for BTC / ETH, $50k otherwise; one print = the fills of one taker order at one timestamp), newest first in order of arrival (id; an exchange print can arrive after a later Hyperliquid one), with the Hyperliquid taker address (public on-chain state) and whether it is a tracked whale. Bots poll forward with `after`. Free keys: BTC, ETH and HYPE, last 24 hours. Licence review: raw rows of Binance and Bybit (single liquidations, prints, order books, tickers, funding and ratios per exchange, exchange candles) are not redistributed through the API while the review of their terms is pending. Asking for such a venue answers 403 source_restricted, and meta.restricted lists the withheld venues. Aggregates (sums over venues, our own figures) stay.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nPaginated: pass `meta.nextCursor` as `cursor` (or follow `meta.nextUrl`) to get the next page; cursors are bound to this endpoint and its filters.\n\nForward polling: pass the newest id you have as `after` (then `meta.nextAfter`) to get only new rows, oldest first.\n\nLicence review: raw rows of Binance and Bybit (single liquidations, prints, order books, tickers, funding and ratios per exchange, exchange candles) are not redistributed through the API while the review of their terms is pending. Asking for such a venue answers 403 source_restricted, and meta.restricted lists the withheld venues. Aggregates (sums over venues, our own figures) stay."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Radar",
      "item": [
        {
          "name": "Risk radar events",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/radar/events?minSeverity=2&limit=20",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "radar",
                "events"
              ],
              "query": [
                {
                  "key": "kinds",
                  "value": "",
                  "description": "Comma-separated: whale_open, whale_close, whale_liquidated, big_liquidation, liq_cascade, funding_extreme, funding_flip, oi_spike, hack, depeg, tvl_drop, cex_outflow, hl_market_change, hl_manipulation, hl_adl, oracle_deviation, vault_drawdown, liq_extreme, protocol_outflow, incident, big_transfer, stablecoin_mint, stablecoin_burn, dex_whale_trade, risk_wallet_move, risk_wallet_listed (optional).",
                  "disabled": true
                },
                {
                  "key": "minSeverity",
                  "value": "2",
                  "description": "1 info, 2 notable, 3 major, 4 critical; default 1."
                },
                {
                  "key": "coin",
                  "value": "",
                  "description": "Coin name as on Hyperliquid (BTC, ETH, kPEPE, HIP-3 names like xyz:TSLA); case-insensitive.",
                  "disabled": true
                },
                {
                  "key": "since",
                  "value": "",
                  "description": "ISO 8601 time; only events after it (optional, a polling cursor). Clamped to the plan history (free key 30 days, keyless 24 h; meta.warnings says so).",
                  "disabled": true
                },
                {
                  "key": "limit",
                  "value": "20",
                  "description": "Number of items, default 50, clamped to 1–500."
                },
                {
                  "key": "cursor",
                  "value": "",
                  "description": "Next page: the value of meta.nextCursor from the previous response (keep the other parameters unchanged). Cursors are signed: an edited cursor answers 400; paging stops at the plan history.",
                  "disabled": true
                },
                {
                  "key": "fields",
                  "value": "",
                  "description": "Comma-separated fields of every item to return, e.g. id,ts,kind,severity,coin,title (case-insensitive). All other fields are left out, so large lists get much smaller; an unknown name answers 400 with the list of fields. Default: every field.",
                  "disabled": true
                },
                {
                  "key": "format",
                  "value": "",
                  "description": "json (default: the { data, meta } envelope) | csv (the rows with a header line; nested values as JSON text) | ndjson (one JSON object per row and line). csv and ndjson carry the meta block in headers: Link rel=\"next\" and X-Blockmetric-Next-Cursor (next page), X-Blockmetric-Next-After (forward polling), X-Blockmetric-Updated-At, X-Blockmetric-Warnings, X-Blockmetric-License. Errors stay JSON.",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "Risk radar events (whale moves, big liquidations, cascades, funding extremes, OI spikes, hacks, depegs, TVL drops, CEX outflows), newest first. Licence review: single liquidation orders reported by Binance / Bybit (big_liquidation, the record \"largest single liquidation\") are not published (also not in the stream and webhooks; a page can then hold fewer than limit items, so keep paging with meta.nextCursor); their funding / open-interest events keep venue and direction without the exchange’s figures; cascades and market-wide extremes leave out per-exchange amounts and keep their totals only where the total does not give one exchange’s amount.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nPaginated: pass `meta.nextCursor` as `cursor` (or follow `meta.nextUrl`) to get the next page; cursors are bound to this endpoint and its filters.\n\nLicence review: raw rows of Binance and Bybit (single liquidations, prints, order books, tickers, funding and ratios per exchange, exchange candles) are not redistributed through the API while the review of their terms is pending. Asking for such a venue answers 403 source_restricted, and meta.restricted lists the withheld venues. Aggregates (sums over venues, our own figures) stay."
          },
          "response": []
        },
        {
          "name": "Security incidents",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/security/incidents",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "security",
                "incidents"
              ],
              "query": [
                {
                  "key": "origin",
                  "value": "",
                  "description": "all (default) | detector | curated.",
                  "disabled": true
                },
                {
                  "key": "type",
                  "value": "",
                  "description": "Incident type (exploit, hack, rug_pull, oracle_manipulation, market_manipulation, bridge, key_compromise, governance_attack, phishing, depeg, other) or detector type (tvl_drop, outflow, adl, oracle_deviation, vault_drawdown, liquidation_surge) (optional).",
                  "disabled": true
                },
                {
                  "key": "chain",
                  "value": "",
                  "description": "ethereum | arbitrum | base | optimism | polygon | bnb | avalanche | solana | bitcoin | tron | hyperliquid | sui | aptos | ronin | harmony | fantom | starknet | blast | linea | zksync | mantle | sonic | ton | xrp | other (optional).",
                  "disabled": true
                },
                {
                  "key": "minSeverity",
                  "value": "",
                  "description": "1 info, 2 notable, 3 major, 4 critical; default 1.",
                  "disabled": true
                },
                {
                  "key": "limit",
                  "value": "",
                  "description": "Number of items, default 50, clamped to 1–500.",
                  "disabled": true
                },
                {
                  "key": "cursor",
                  "value": "",
                  "description": "Next page: the value of meta.nextCursor from the previous response (keep the other parameters unchanged). Cursors are signed: an edited cursor answers 400; paging stops at the plan history.",
                  "disabled": true
                },
                {
                  "key": "fields",
                  "value": "",
                  "description": "Comma-separated fields of every item to return, e.g. id,date,title,amountUsd (case-insensitive). All other fields are left out, so large lists get much smaller; an unknown name answers 400 with the list of fields. Default: every field.",
                  "disabled": true
                },
                {
                  "key": "format",
                  "value": "",
                  "description": "json (default: the { data, meta } envelope) | csv (the rows with a header line; nested values as JSON text) | ndjson (one JSON object per row and line). csv and ndjson carry the meta block in headers: Link rel=\"next\" and X-Blockmetric-Next-Cursor (next page), X-Blockmetric-Next-After (forward polling), X-Blockmetric-Updated-At, X-Blockmetric-Warnings, X-Blockmetric-License. Errors stay JSON.",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "Security view, newest first: detector events (Hyperliquid manipulation patterns, possible ADL, oracle / mark deviations, HLP vault drawdowns, market-wide liquidation surges, stablecoin depegs from Chainlink feeds read on-chain, outflows from bridge and lending contracts listed in the protocols’ own docs) and curated incidents (our own factual summary, amount with its primary source, status, post-mortem and transaction links). Pattern detectors are matches, not confirmed attacks. Paginated over the newest 500 items.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nPaginated: pass `meta.nextCursor` as `cursor` (or follow `meta.nextUrl`) to get the next page; cursors are bound to this endpoint and its filters.\n\nLicence review: raw rows of Binance and Bybit (single liquidations, prints, order books, tickers, funding and ratios per exchange, exchange candles) are not redistributed through the API while the review of their terms is pending. Asking for such a venue answers 403 source_restricted, and meta.restricted lists the withheld venues. Aggregates (sums over venues, our own figures) stay."
          },
          "response": []
        },
        {
          "name": "Listed wallets (OFAC, FBI, post-mortems)",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/security/wallets",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "security",
                "wallets"
              ],
              "query": [
                {
                  "key": "category",
                  "value": "",
                  "description": "sanctioned | stolen_funds | exploit | drainer | phishing | other (optional).",
                  "disabled": true
                },
                {
                  "key": "network",
                  "value": "",
                  "description": "Address family: evm, bitcoin, tron, litecoin, monero … (optional).",
                  "disabled": true
                },
                {
                  "key": "source",
                  "value": "",
                  "description": "ofac_sdn | fbi_ic3 | incident (optional).",
                  "disabled": true
                },
                {
                  "key": "q",
                  "value": "",
                  "description": "Address or part of one (optional).",
                  "disabled": true
                },
                {
                  "key": "movedDays",
                  "value": "",
                  "description": "Only addresses with a tracked movement in the last N days (1–400, optional).",
                  "disabled": true
                },
                {
                  "key": "limit",
                  "value": "",
                  "description": "Number of items, default 100, clamped to 1–500.",
                  "disabled": true
                },
                {
                  "key": "cursor",
                  "value": "",
                  "description": "Next page: the value of meta.nextCursor from the previous response (keep the other parameters unchanged). Cursors are signed: an edited cursor answers 400; paging stops at the plan history.",
                  "disabled": true
                },
                {
                  "key": "fields",
                  "value": "",
                  "description": "Comma-separated fields of every item to return, e.g. address,network,category,source (case-insensitive). All other fields are left out, so large lists get much smaller; an unknown name answers 400 with the list of fields. Default: every field.",
                  "disabled": true
                },
                {
                  "key": "format",
                  "value": "",
                  "description": "json (default: the { data, meta } envelope) | csv (the rows with a header line; nested values as JSON text) | ndjson (one JSON object per row and line). csv and ndjson carry the meta block in headers: Link rel=\"next\" and X-Blockmetric-Next-Cursor (next page), X-Blockmetric-Next-After (forward polling), X-Blockmetric-Updated-At, X-Blockmetric-Warnings, X-Blockmetric-License. Errors stay JSON.",
                  "disabled": true
                }
              ],
              "variable": []
            },
            "description": "Listed wallets: addresses that an official source lists, with the source’s own category, wording, date and a link to the listing. Sources: the OFAC SDN list (every digital currency address, re-read daily; an address OFAC removes is delisted automatically and no longer returned), FBI / IC3 public service announcements that list addresses, and addresses an official incident post-mortem names (reviewed before they are published). `listing` reads \"Listed as <category> by <source>, <date>\"; for OFAC the date is the first SDN list in which we saw the address. No person is named and no counterparty is labelled. `tracked` = we follow its on-chain movements (EVM addresses on Ethereum, Arbitrum and Base, Bitcoin); other networks are listed only. Newest activity first, then newest listing. Paginated.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nPaginated: pass `meta.nextCursor` as `cursor` (or follow `meta.nextUrl`) to get the next page; cursors are bound to this endpoint and its filters."
          },
          "response": []
        },
        {
          "name": "Listed wallet detail",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/security/wallets/:address",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "security",
                "wallets",
                ":address"
              ],
              "query": [
                {
                  "key": "limit",
                  "value": "",
                  "description": "Number of movements, default 25, clamped to 1–100.",
                  "disabled": true
                }
              ],
              "variable": [
                {
                  "key": "address",
                  "value": "0x5b5d51203a0f9079f8aeb098a6523a13f298c060",
                  "description": "The address as the source lists it (EVM 0x + 40 hex in any case, Bitcoin, Tron …)."
                }
              ]
            },
            "description": "One listed wallet: every active listing of the address (category, source, wording, date, link), its last known balances on the scanned EVM chains (native ETH and the curated tokens, at our own prices) and its tracked movements, newest first (every token on Ethereum, Arbitrum and Base, native ETH on Ethereum, Bitcoin; within the plan history). A token outside our curated list is marked unverifiedToken and never priced. The other side of a movement keeps only its own sourced label (exchange proof of reserves, protocol docs) or none. 404 when the address has no active listing.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Meta",
      "item": [
        {
          "name": "Coverage and freshness",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/stats",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "stats"
              ],
              "query": [],
              "variable": []
            },
            "description": "Coverage and freshness: tracked wallets and positions, markets per venue, event counts, liquidation-map size and the last run of every collector job.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits."
          },
          "response": []
        },
        {
          "name": "The calling key: plan, limits, usage",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/me",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "me"
              ],
              "query": [],
              "variable": []
            },
            "description": "The caller: the key (masked, never the secret: name, scopes, expiry, IP allowlist, browser origins), the plan and its limits, the account’s usage of the current minute and UTC day, overage, the history window and the venues the licence gate withholds. Not counted against the limits and never 429: ask it when a client is limited. Keyless public access (X-Blockmetric-Access: public) gets the public tier and key null.\n\nAvailable with every key and keyless (X-Blockmetric-Access: public). Keys of Free accounts get free-tier data (real-time feeds, 30 days of history, heatmap over time for every coin over the last 24 hours, liquidation levels now for every coin, the same as the free web plan); Pro and Desk keys the data of their plan; API Dev / API Pro raise the limits.\n\nNot counted against the rate limits and never answered with 429."
          },
          "response": []
        },
        {
          "name": "API status (public)",
          "request": {
            "method": "GET",
            "auth": {
              "type": "noauth"
            },
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/status",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "status"
              ],
              "query": [],
              "variable": []
            },
            "description": "Public, no key: API version, data freshness per source and collector job, measured uptime (24 h / 7 / 30 / 90 days, current SLA month) and incident notes. Cached for 15 s; at most 120 requests per minute per IP."
          },
          "response": []
        }
      ]
    }
  ]
}