Wallets API
One wallet's whole trading record
Whether a wallet is any good over a long window: invested, realised and unrealised profit, tokens traded, wins, losses and win rate. SOL, ETH, BNB and BASE; one record per chain, never summed.
GET
/api/external/wallet-analysis/trader-record/{chain}/{address}Chains
- Solana SOL
- BNB Chain BNB
- Ethereum ETH
- Base BASE
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/wallet-analysis/trader-record/SOL/<address>"
| Parameter | Description |
|---|---|
chainpath · string · required | SOL, ETH, BNB and BASE; every other chain returns 400, because no wired source keeps this record there. The record is per chain, not per wallet: the same address on two chains is two records, and they are not summed. |
addresspath · string · required | The wallet address. |
Response fields
A JSON response. Every field is always present; null means the value could not be established, never zero.
| Field | Type | Description |
|---|---|---|
since | number | null | Unix SECONDS marking the start of the window these figures cover. The window is NOT the wallet's lifetime, which is why it is published rather than assumed: on SOL it came back as the same instant for every wallet measured, which is where that record starts, and a wallet that traded earlier is missing that history here. On ETH, BNB and BASE it is null because the window start is not stated at all, and on SOL it is null when the record came from the second SOL source, which states none either — null means UNKNOWN, never "since forever". Reading any of these figures as all-time is wrong. |
realizedPnlUsd | number | null | |
unrealizedPnlUsd | number | null | |
totalPnlUsd | number | null | |
totalInvestedUsd | number | null | |
tokensTraded | number | null | |
wins | number | null | Tokens that ended in profit. SOL only; null on ETH, BNB and BASE, where only a win rate is reported and its denominator is not tokensTraded, so no count can be derived. |
losses | number | null | Tokens that ended in loss. SOL only, for the same reason as wins. |
winRatePct | number | null | |
averageBuyUsd | number | null | Mean USD size of one buy. null for a wallet with no buys at all, rather than 0. |
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