Wallets API
Wallet realised PnL over time
How a wallet's REALISED profit and loss moved over time — a per-day series of banked P&L, never a mark-to-market figure. The trend behind wallet-pnl's point-in-time book.
/api/external/wallet-analysis/wallet-pnl-history/{chain}/{address}What it returns
The TREND behind the shipped wallet-pnl (a point-in-time book of positions): a per-day series of REALISED profit and loss actually banked, never a mark-to-market/unrealised figure — this source publishes no unrealised field at all. Solana and Ethereum. No query parameters: the source is asked for its own default window (its last ~100 days) on every call.
Chains
- Solana SOL
- Ethereum ETH
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/wallet-pnl-history/SOL/<address>"
| Parameter | Description |
|---|---|
chainpath · string · required | Solana and Ethereum only; every other chain returns 400 — the wired source publishes this series for Solana and Ethereum wallets only in this build. |
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 |
|---|---|---|
history | object[] | Oldest first, the source's own order. Empty both when this wallet has genuinely nothing to report and when the address itself could not be recognised — the source does not distinguish the two, so neither does this field. |
history[].timestampMs | number | null | Unix milliseconds — the END of this daily bucket, per the source's own field. |
history[].realizedPnlUsd | number | null | Realised PnL BANKED in this bucket, USD. Always realised — this series has no unrealised (mark-to-market) figure anywhere in it, unlike some other PnL rankings on this surface. A real 0 is a genuine reading (e.g. a sale that banked no gain or loss), never a stand-in for "nothing happened". |
history[].volumeBuyUsd | number | null | USD bought in this bucket. A real 0 is genuine — observed on a sell-only bucket. |
history[].volumeSellUsd | number | null | USD sold in this bucket. A real 0 is genuine — observed on a buy-only bucket. |
history[].tokensTraded | number | null | Distinct tokens traded in this bucket. |
history[].buyCount | number | null | Buy transactions in this bucket. |
history[].sellCount | number | null | Sell transactions in this bucket. |
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