Raw trade history of a wallet

GET
/chains/{chain}/wallets/{address}/trades

Every trade the wallet made on this chain, newest first. side separates a real swap from a bare token movement: transfer_in and transfer_out carry no price and must not be counted as trading.

fee_is_estimated true means the fee was modelled rather than read from the receipt.

Path Parameters

chain*string

chain slug (ton) or numeric chain id (950000)

Length1 <= length <= 32
address*string

the wallet address

Length1 <= length <= 128

Query Parameters

limit?integer

page size; plans above startup may raise the ceiling

Formatint32
Range1 <= value <= 100
Default10
cursor?string

opaque cursor from next_cursor or prev_cursor

Lengthlength <= 512

Header Parameters

Accept-Payment?string

payment methods the client can use, comma-separated, case-insensitive. With x402 in the list, a spent keyless budget answers 402 with the x402 challenge instead of 429.

PAYMENT-SIGNATURE?string

base64 x402 v2 payment payload for this request. A paid request skips the keyless budget and is settled only when it answers 2xx. The v1 header X-PAYMENT is accepted too.

Response Body

application/json

application/problem+json

application/problem+json

application/json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

application/problem+json

curl -X GET "https://example.com/chains/string/wallets/string/trades"
{  "items": [    {      "trade_uid": "string",      "token_address": "string",      "token_symbol": "string",      "pair_address": "string",      "side": "string",      "qty": 0.1,      "price_usd": 0.1,      "notional_usd": 0.1,      "fee_usd": 0.1,      "fee_is_estimated": true,      "timestamp": "string",      "block_number": 0    }  ],  "next_cursor": "string"}