Discovery and markets API
Most traded coins on centralized spot exchanges, with taker buy/sell flow
The largest coins by 24h spot volume across centralized exchanges, with USD price, market cap and, over 1h to 1w, volume split into taker buys and sells and net flow.
/api/external/discovery/spot-coinsWhat it returns
A cross-venue spot ranking: every row is one coin aggregated across the centralized spot venues covered, ordered by 24h volume descending (coins with no 24h volume last). The ranking is taken among the 200 largest coins by market capitalisation, so a smaller coin having an unusually heavy day does not appear even when it out-trades the coins listed. Each row carries its price and market cap in USD and, for the last 1h, 4h, 12h, 24h and 1w, its price change, volume split into taker buys and sells, net flow (buys minus sells) and volume change. No chain and no token subject in the request: a symbol here is a coin ticker (e.g. "BTC"), never a token mint or contract address on any of this API's chains. The major dollar stablecoins are not ranked.
Chains
This endpoint is not tied to a chain: it takes no chain in its request.
Request
Send your key in the x-dex-data-key header. Replace each <placeholder> with a real value.
curl -H "x-dex-data-key: $DEXDATA_API_KEY" \ "https://api.dexdata.io/api/external/discovery/spot-coins"
| Parameter | Description |
|---|---|
limitquery · integer · optional | How many coins to return, from the top. Defaults to 20; at most 100. limit ≤ 30 keeps the answer under 32 KB. |
Response fields
A JSON response. Every field is always present; null means the value could not be established, never zero.
| Field | Type | Description |
|---|---|---|
coins | object[] | One row per coin, by 24h volume descending. |
coins[].symbol | string | The coin ticker, e.g. "BTC". Not a token mint or contract address. |
coins[].priceUsd | number | null | Current price, USD. |
coins[].marketCapUsd | number | null | Market capitalisation, USD. |
coins[].windows | object | The figures over each trailing window. |
coins[].windows.1h | object | |
coins[].windows.1h.priceChangePercent | number | null | Price change over the window, percent. |
coins[].windows.1h.volumeUsd | number | null | Spot volume across the venues covered over the window, USD. null when the coin did not trade in it. |
coins[].windows.1h.buyVolumeUsd | number | null | Volume from taker buys over the window, USD. |
coins[].windows.1h.sellVolumeUsd | number | null | Volume from taker sells over the window, USD. |
coins[].windows.1h.netFlowUsd | number | null | Taker buys minus taker sells over the window, USD; negative when sellers dominated. |
coins[].windows.1h.volumeChangePercent | number | null | Change of the window's volume against the previous window of the same length, percent. |
coins[].windows.4h | object | |
coins[].windows.4h.priceChangePercent | number | null | Price change over the window, percent. |
coins[].windows.4h.volumeUsd | number | null | Spot volume across the venues covered over the window, USD. null when the coin did not trade in it. |
coins[].windows.4h.buyVolumeUsd | number | null | Volume from taker buys over the window, USD. |
coins[].windows.4h.sellVolumeUsd | number | null | Volume from taker sells over the window, USD. |
coins[].windows.4h.netFlowUsd | number | null | Taker buys minus taker sells over the window, USD; negative when sellers dominated. |
coins[].windows.4h.volumeChangePercent | number | null | Change of the window's volume against the previous window of the same length, percent. |
coins[].windows.12h | object | |
coins[].windows.12h.priceChangePercent | number | null | Price change over the window, percent. |
coins[].windows.12h.volumeUsd | number | null | Spot volume across the venues covered over the window, USD. null when the coin did not trade in it. |
coins[].windows.12h.buyVolumeUsd | number | null | Volume from taker buys over the window, USD. |
coins[].windows.12h.sellVolumeUsd | number | null | Volume from taker sells over the window, USD. |
coins[].windows.12h.netFlowUsd | number | null | Taker buys minus taker sells over the window, USD; negative when sellers dominated. |
coins[].windows.12h.volumeChangePercent | number | null | Change of the window's volume against the previous window of the same length, percent. |
coins[].windows.24h | object | |
coins[].windows.24h.priceChangePercent | number | null | Price change over the window, percent. |
coins[].windows.24h.volumeUsd | number | null | Spot volume across the venues covered over the window, USD. null when the coin did not trade in it. |
coins[].windows.24h.buyVolumeUsd | number | null | Volume from taker buys over the window, USD. |
coins[].windows.24h.sellVolumeUsd | number | null | Volume from taker sells over the window, USD. |
coins[].windows.24h.netFlowUsd | number | null | Taker buys minus taker sells over the window, USD; negative when sellers dominated. |
coins[].windows.24h.volumeChangePercent | number | null | Change of the window's volume against the previous window of the same length, percent. |
coins[].windows.1w | object | |
coins[].windows.1w.priceChangePercent | number | null | Price change over the window, percent. |
coins[].windows.1w.volumeUsd | number | null | Spot volume across the venues covered over the window, USD. null when the coin did not trade in it. |
coins[].windows.1w.buyVolumeUsd | number | null | Volume from taker buys over the window, USD. |
coins[].windows.1w.sellVolumeUsd | number | null | Volume from taker sells over the window, USD. |
coins[].windows.1w.netFlowUsd | number | null | Taker buys minus taker sells over the window, USD; negative when sellers dominated. |
coins[].windows.1w.volumeChangePercent | number | null | Change of the window's volume against the previous window of the same length, percent. |
Start building with DexData today
Sign in, create a key and make your first call in a minute. Free credits every month, and you only pay for calls that succeed.
Get a free API key