Tokens API
Are big wallets buying into or selling out of this token right now?
The 10 most active wallets on a token over 1h-7d with their net worth: which are large ($250K+ by default), and whether those are net buying or selling. SOL only.
/api/external/token-analysis/large-holder-flow/{chain}/{mint}What it returns
The 10 wallets that traded the most USD of one token inside the window, each with what it holds in USD across the wallet (netWorthUsd), what it bought and sold of this token in the window, and whether it counts as a large holder (net worth at or above minNetWorthUsd, default 250,000 USD). summary counts the large holders among them and sums their buying and selling: a positive largeHolderNetFlowUsd means large wallets were net buyers. IT IS THE 10 MOST ACTIVE WALLETS, NOT EVERY LARGE WALLET: a large wallet that traded less than the tenth is not seen. The most active wallets are often trading bots and market makers, which are large wallets too; read labels (e.g. bundler, sniper, dev, fresh) to set them apart. netWorthUsd covers this chain only. A net worth that could not be read is null, and so is that wallet's largeHolder; summary.netWorthKnown says how many were read, and the summary's USD sums are then null. An empty wallets list means nobody traded the token in the window or the address is not a token. SOL only.
Chains
- Solana SOL
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/token-analysis/large-holder-flow/SOL/<mint>"
| Parameter | Description |
|---|---|
windowquery · string · optional | The trading window, ending now: 1h, 4h, 24h or 7d. The ranking and every buy/sell figure cover this window. Defaults to 24h.1h4h24h7d |
minNetWorthUsdquery · number · optional | The net worth, in USD, from which a wallet counts as a large holder. Defaults to 250000. Changing it costs nothing extra: every ranked wallet's net worth is read either way. |
chainpath · string · required | The chain the token lives on. SOL only; every other chain returns 400. |
mintpath · string · required | The token mint address (Solana) or contract address (EVM). |
Response fields
A JSON response. Every field is always present; null means the value could not be established, never zero.
| Field | Type | Description |
|---|---|---|
window | string | The window asked for. |
minNetWorthUsd | number | The large-holder threshold applied, USD. |
summary | object | |
summary.walletsRanked | integer | How many wallets are listed (at most 10). |
summary.netWorthKnown | integer | Of those, how many net worths were read. Below walletsRanked, largeHolders is a lower bound. |
summary.largeHolders | integer | Listed wallets whose net worth is at or above minNetWorthUsd. |
summary.largeHoldersBuying | integer | Large holders that bought more USD than they sold in the window. A lower bound when netWorthKnown is below walletsRanked. |
summary.largeHoldersSelling | integer | Large holders that sold more USD than they bought in the window. A lower bound when netWorthKnown is below walletsRanked. |
summary.largeHolderBuyUsd | number | null | USD the large holders bought in the window; 0 when there are none. Null when a large holder has no figure, or when any listed wallet's net worth could not be read. |
summary.largeHolderSellUsd | number | null | USD the large holders sold in the window; 0 when there are none. Null when a large holder has no figure, or when any listed wallet's net worth could not be read. |
summary.largeHolderNetFlowUsd | number | null | Bought minus sold by the large holders, USD; positive = net buying. 0 when there are none. Null when a large holder has no figure, or when any listed wallet's net worth could not be read. |
wallets | object[] | Most USD traded in the window first. Empty when nobody traded the token in the window. |
wallets[].rank | integer | 1 = the most USD traded in the window. |
wallets[].wallet | string | The trading address. |
wallets[].labels | string[] | What the wallet is known as, e.g. bundler, sniper, dev, fresh. Often empty. |
wallets[].netWorthUsd | number | null | USD value of everything the wallet holds on this chain, now. Null when it could not be read. |
wallets[].largeHolder | boolean | null | netWorthUsd at or above minNetWorthUsd; null when the net worth could not be read. |
wallets[].buyUsd | number | null | USD of this token bought in the window. |
wallets[].sellUsd | number | null | USD of this token sold in the window. |
wallets[].netFlowUsd | number | null | buyUsd - sellUsd; positive = net buying. |
wallets[].direction | string | null | The sign of netFlowUsd: buying (positive), selling (negative), flat (zero). |
wallets[].buys | integer | null | Buy trades in the window. |
wallets[].sells | integer | null | Sell trades in the window. |
wallets[].walletFirstTradeAt | integer | null | Unix seconds of the wallet's first trade of ANY token: how old the wallet is as a trader. It is the same on every token, so it does NOT say when the wallet entered this one. |
wallets[].lastTradeAt | integer | null | Unix seconds of its latest trade of this token. |
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