Don't invest unless you're prepared to lose all the money you invest. This is a high-risk investment and you should not expect to be protected if something goes wrong. Take 2 mins to learn more.

DecryptrDevelopers
Market data

Liquidation exposure per coin

Per coin totals from the live Hyperliquid reader of the last 30 minutes: accounts and positions holding the coin, how many of those have a liquidation price, and the notional behind each. Coins with fewer than 5 accounts are left out. Ordered by asset.

Served during Decryptr's friends-only testing: the exchange, CoinGecko and Coinalyze data behind it is used on Decryptr's own risk acceptance of those sources' terms, so this endpoint may be restricted or withdrawn before general availability. Keep the attribution line and meta.source with the data.

Cost: 1 call per item returned, at least one item's worth. The request first reserves limit x 1 calls (and is refused with 429 if that many are not available), then pays only for what came back.

Needs scope liquidations:read and the starter plan or above.

How calls are counted

Authorization

headerAuthorizationBearer <dcr_live_<8 hex>_<43 base64url> or dcr_test_...>

Your API key as a Bearer token: Authorization: Bearer dcr_live_....

Query Parameters

asset?string

Asset symbol, letters and digits, case-insensitive (BTC, ETH, SOL).

Match^[A-Za-z0-9]{1,15}$
cursor?string

next_cursor from the previous page, passed back as it is. Opaque: do not build or change it.

Lengthlength <= 300
limit?integer

Items to return, 1 to 100. Your plan allows max_page calls per request (Developer 10, Starter 25, Pro 50, Business 100), so at most max_page divided by this endpoint's calls per item. Default 20, or that maximum if lower. The request reserves limit x calls per item before it runs: ask only for what you need.

Range1 <= value <= 100

Response Body

OK.

application/json
  1. response
data*array<>
as_of*string

When the response was made.

Formatdate-time
next_cursor*|

Pass as cursor for the next page. null when this is the last page.

attribution*string

Attribution you must keep with this data.

disclaimer*string

Plain-language notice. Information only, not financial advice.

meta*

Where the figures come from.

Example Request
curl -X GET 'https://data.decryptr.ai/v1/market/liquidations/totals?asset=BTC&cursor=eyJ0IjoiMjAyNi0xMC0yM1QxMDowMDowMC4wMDBaIn0&limit=10'
Example Response
{  "data": [    {      "asset": "BTC",      "at": "2026-10-23T12:00:00.000Z",      "mark_price": 81175,      "accounts": 1520,      "positions": 1840,      "positions_with_liq": 1100,      "notional_usd": 3571700000,      "notional_with_liq_usd": 2900000000    }  ],  "as_of": "2026-10-23T12:12:30.000Z",  "next_cursor": null,  "attribution": "Includes data derived from Hyperliquid public data.",  "disclaimer": "Information only, not financial advice.",  "meta": {    "source": "Hyperliquid public data, as stored by Decryptr"  }}

Liquidation heatmap history GET

Where open Hyperliquid positions on one asset would be liquidated, summed into equal price buckets (bucket i covers price_floor + i x bucket_size up to the next), newest first: every 10 minutes for 7 days, then hourly. Snapshots resting on fewer than 5 accounts are left out and no address is ever shown. Served during Decryptr's friends-only testing: the exchange, CoinGecko and Coinalyze data behind it is used on Decryptr's own risk acceptance of those sources' terms, so this endpoint may be restricted or withdrawn before general availability. Keep the attribution line and meta.source with the data. Cost: 2 calls per item returned, at least one item's worth. The request first reserves limit x 2 calls (and is refused with 429 if that many are not available), then pays only for what came back. Needs scope `liquidations:read` and the starter plan or above.

Trending coins GET

Coins trending on CoinGecko's search, as Decryptr last stored them, rank 1 first. Served during Decryptr's friends-only testing: the exchange, CoinGecko and Coinalyze data behind it is used on Decryptr's own risk acceptance of those sources' terms, so this endpoint may be restricted or withdrawn before general availability. Keep the attribution line and meta.source with the data. Cost: 1 call per item returned, at least one item's worth. The request first reserves limit x 1 calls (and is refused with 429 if that many are not available), then pays only for what came back. Needs scope `coins:read` and the developer plan or above.