Discovery and markets API
One coin's spot taker buy and sell volume, summed across exchanges, over time
A coin's spot taker buy and sell volume and the net, summed across major exchanges or on one exchange's pair (KRW included), in USD per bucket, 1m to 1w. Spot only.
/api/external/discovery/spot-taker-flow-history/{symbol}What it returns
One coin's spot taker flow over time: the US-dollar volume that takers bought (market buys, lifting the offer) and sold (market sells, hitting the bid) on the coin's spot pairs, summed across twelve major centralized exchanges (Binance, OKX, Bybit, Coinbase, Bitfinex, Kraken, Gemini, Gate, Bitget, Bitstamp, Crypto.com, Upbit), per time bucket, oldest first, with the net of the two. Spot only: not perpetuals or dated futures. Its running sum from the first returned bucket is the cumulative volume delta over that window. The series starts at the coin's first traded bucket; after it, a side on which no taker traded states 0. The newest bucket is normally the one still in progress when the figures were read (complete: false, its figures still growing); it counts toward limit. An answer may be served from a cache up to a few minutes old. symbol is the coin ticker (e.g. "BTC"), matched case-insensitively — not a pair, not a token mint or contract address, and not scoped to any of this API's chains. An unknown ticker answers 404. With venue (optionally quote), the same series for the coin's one pair on that exchange instead of the cross-exchange sum — still in US dollars whatever the quote currency, a KRW pair included — and the answer also names venue, quote and pair; without quote, the exchange's USDT pair is used, else its USD pair, else its USDC pair, else the first other quote the exchange lists (alphabetically; Upbit BTC answers its KRW pair). A coin the exchange lists no pair for, or none in the quote asked, answers 404.
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-taker-flow-history/<symbol>"
| Parameter | Description |
|---|---|
intervalquery · string · optional | Bucket width. Defaults to one day.1m3m5m15m30m1h4h6h8h12h1d1w |
limitquery · integer · optional | How many of the most recent buckets to return, the one in progress included, 1 to 1000. Defaults to 100. Fewer come back when the coin's history is shorter or a bucket carries no figures. limit ≤ 250 keeps the answer under 32 KB. |
venuequery · string · optional | Optional: one exchange, spelled exactly as listed (case-sensitive), as spot-coin-venues names it. With it, the series is the coin's one pair on that exchange rather than the sum across exchanges.BinanceBitfinexBitgetBybitCoinbaseGateKrakenOKXUpbit |
quotequery · string · optional | Optional, and only with venue: the quote currency of the pair, e.g. "USDT", "USD" or "KRW". Case-insensitive. Without it, USDT, then USD, then USDC, else the first other quote the exchange lists (alphabetically). |
symbolpath · string · required | The coin (base asset) ticker, e.g. "BTC" or "PEPE" — not a pair such as "BTCUSDT" or "BTC/USDT", and not a token mint or contract address. Case-insensitive. |
Response fields
A JSON response. Every field is always present; null means the value could not be established, never zero.
| Field | Type | Description |
|---|---|---|
symbol | string | The coin, spelled as it is listed (e.g. "BTC" for "btc"). |
venue | string | Only with venue asked: the exchange. Absent from the cross-exchange answer. |
quote | string | Only with venue asked: the quote currency of the pair, e.g. "USDT" or "KRW". The figures stay in US dollars. |
pair | string | Only with venue asked: the pair, BASE/QUOTE, as spot-coin-venues prints it. |
interval | string | The bucket width. |
buckets | object[] | Oldest first, from the coin's first traded bucket. |
buckets[].at | number | The bucket's open, unix seconds. |
buckets[].buyUsd | number | null | Spot volume bought by takers in the bucket, summed across exchanges (or on the one pair, with venue), US dollars. null when not stated. |
buckets[].sellUsd | number | null | Spot volume sold by takers in the bucket, summed across exchanges (or on the one pair, with venue), US dollars. null when not stated. |
buckets[].netUsd | number | null | buyUsd minus sellUsd, US dollars, rounded to 4 decimal places; negative when takers sold more. null unless both are stated. |
buckets[].complete | boolean | Whether the figures are final. false only on the newest bucket, which was still in progress when its figures were read. |
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