Appearance
wallet_trades
What a wallet traded, counted once per route rather than once per hop.
Subscribe
Requires a wallet address.
json
{
"op": "subscribe",
"stream": "wallet_trades",
"params": {
"wallet": "7xK…3F2a",
"platforms": ["jupiter"],
"tradeTypes": ["SWAP"],
"minUsdAmount": "100"
},
"id": 1
}Filters
| Param | Type | Description |
|---|---|---|
wallet | string | Required. Wallet to follow. |
platforms | string[] | Venue / router slugs. |
tradeTypes | string[] | BUY, SELL, SWAP, or all. |
minUsdAmount | string | Minimum notional in USD. |
detail | basic / full | Payload level; basic by default. |
tradeType is relative to the subscribed wallet: spending the quote asset is BUY, receiving it is SELL, and token-to-token is SWAP. user always equals the subscribed wallet.
Event
json
{
"op": "event",
"sub": "wr_1f08",
"stream": "wallet_trades",
"cursor": "330112261:6:0",
"data": {
"slot": 330112261,
"signature": "6Qz…9vTs",
"blockTime": 1769270448,
"protocol": "jupiter",
"tradeType": "SWAP",
"user": "7xK…3F2a",
"input": {
"mint": "So111…1112",
"amountRaw": "10000000000",
"amount": "10"
},
"output": {
"mint": "EPj…Dt1v",
"amountRaw": "1458000000",
"amount": "1458.00"
},
"valueUsd": "1458.00"
}
}Basic fields
The envelope, tradeType, user, input, output, and valueUsd have the same shape as token_trades.
valueUsd is null when neither leg is SOL or a stablecoin. Those events pass the minUsdAmount filter.
Full fields
| Field | Type | Notes |
|---|---|---|
route.venues | string[] | Venues used by the route |
route.hops | Hop[] | Protocol, pool, input, output, and reserves per hop |
fees | Fee[] | Decoded transaction fees |
computeUnits | number | Transaction-level compute use |
priorityFee | { amountRaw, decimals } | Transaction priority fee |
transfers | Transfer[] | Standalone movements outside the route |
Each route is emitted once rather than once per hop.