curl 'https://api.serialized.xyz/v1/wallet/trades?chain=evm:8453&wallet=0x95d955179a7cd45aeef394ed39f6a8d8b1bd1e09&limit=2' \
-H 'Authorization: YOUR_API_KEY'
curl 'https://api.serialized.xyz/v1/wallet/trades?chain=solana&wallet=GuhieZDx6nwJV14WjeUQH2ted6CGPKoGCCTaPSPNgG2E&limit=2' \
-H 'Authorization: YOUR_API_KEY'
{
"data": [
{
"id": "0x18ec69970caef3c490d8276810f56083c9156c670e8c68eada72853a4d6e9b83:291",
"at": 1787000365000,
"chain": "evm:8453",
"tokenAddress": "0xecaf81eb42cd30014eb44130b89bcd6d4ad98b92",
"poolAddress": "0x9f4a0c8e3f0b5a2f6c5b8b9c0d1e2f3a4b5c6d7e",
"isBuy": false,
"amountToken": 609087.0435973641,
"priceNative": 2.46340612952e-9,
"volumeNative": 0.001500827331112315,
"volumeUsd": 3.120677773718492,
"feesNative": null,
"isWash": null,
"isRoutingHop": false,
"txHash": "0x18ec69970caef3c490d8276810f56083c9156c670e8c68eada72853a4d6e9b83",
"block": 50105509,
"logIndex": 291
},
{
"id": "0x18ec69970caef3c490d8276810f56083c9156c670e8c68eada72853a4d6e9b83:286",
"at": 1787000365000,
"chain": "evm:8453",
"tokenAddress": "0xecaf81eb42cd30014eb44130b89bcd6d4ad98b92",
"poolAddress": "0x9f4a0c8e3f0b5a2f6c5b8b9c0d1e2f3a4b5c6d7e",
"isBuy": true,
"amountToken": 609087.0435973641,
"priceNative": 2.2864562986700003e-9,
"volumeNative": 0.001406562274237914,
"volumeUsd": 2.9246719696342653,
"feesNative": null,
"isWash": null,
"isRoutingHop": false,
"txHash": "0x18ec69970caef3c490d8276810f56083c9156c670e8c68eada72853a4d6e9b83",
"block": 50105509,
"logIndex": 286
}
],
"meta": {
"asOf": 1787163134462,
"hasMore": true,
"nextCursor": "MTc4NzAwMDM2NXw1MDEwNTUwOXwyODZ8MHgxOGVjNjk5NzBjYWVmM2M0OTBkODI3NjgxMGY1NjA4M2M5MTU2YzY3MGU4YzY4ZWFkYTcyODUzYTRkNmU5Yjgz",
"oldestAt": 1787000365000
}
}
{
"data": [
{
"id": "3GNhPPcE61UCifVQ5dZtfWB2yTnaVPiNA89a3X5KRQ4ySxJbWnjUABmHQTHFppxk8QKGwZNViQYtnYizCpthN9cP:GFQLVG2UKYydSCJ2WjkuMXijpgJ6hbs2nEsNwdZFpump:b",
"at": 1786907834306,
"chain": "solana",
"tokenAddress": "GFQLVG2UKYydSCJ2WjkuMXijpgJ6hbs2nEsNwdZFpump",
"poolAddress": "48WkwrpuxrjunUiWPjKE6mwt72L8Jt44ZKDzeoxfpJFq",
"isBuy": true,
"amountToken": 786309.646509,
"priceNative": 1.2603e-8,
"volumeNative": 0.009909,
"volumeUsd": 7.444819634856682,
"feesNative": 0.000005,
"isWash": false,
"isRoutingHop": false,
"txHash": "3GNhPPcE61UCifVQ5dZtfWB2yTnaVPiNA89a3X5KRQ4ySxJbWnjUABmHQTHFppxk8QKGwZNViQYtnYizCpthN9cP",
"block": 298541122,
"logIndex": 0
},
{
"id": "5QCmyqayK3StL4ixLHpPmUm7dCDKtVFjDcVRjWBjWbHqKfwM5gZ6ukTQ3rkRRgRyPxUoNg62szAXSGKZdUVRUgjG:9x4EQVaPRWSw4jKoWTpRzMP7YAu5sZwHyLJ9tbJYpump:s",
"at": 1786906537718,
"chain": "solana",
"tokenAddress": "9x4EQVaPRWSw4jKoWTpRzMP7YAu5sZwHyLJ9tbJYpump",
"poolAddress": "C9uSZfFvXF2G9Fz1wamUpP7xveWYYqcJXgzgDEfn4oY5",
"isBuy": false,
"amountToken": 1694349.271433,
"priceNative": 3.0027e-9,
"volumeNative": 0.005088,
"volumeUsd": 3.807367487098589,
"feesNative": 0.000005,
"isWash": false,
"isRoutingHop": false,
"txHash": "5QCmyqayK3StL4ixLHpPmUm7dCDKtVFjDcVRjWBjWbHqKfwM5gZ6ukTQ3rkRRgRyPxUoNg62szAXSGKZdUVRUgjG",
"block": 298540012,
"logIndex": 0
}
],
"meta": {
"asOf": 1787163134616,
"hasMore": true,
"usdBasis": "trade",
"nextCursor": "MTc4NjkwNjUzN3w1UUNteXFheUszU3RMNGl4TEhwUG1VbTdkQ0RLdFZGakRjVlJqV0JqV2JIcUtmd001Z1o2dWtUUTNya1JSZ1J5UHhVb05nNjJzekFYU0dLWmRVVlJVZ2pHfDl4NEVRVmFQUldTdzRqS29XVHBSek1QN1lBdTVzWndIeUxKOXRiSllwdW1wfDA",
"oldestAt": 1786906537718
}
}
Wallet Trades
Trade history of a wallet, newest first - multihop-deduplicated (one event per transaction, token and side; never doubled volumes). Paginate with the opaque cursor from meta.nextCursor on both EVM and Solana: exact keyset pagination that never skips or repeats a trade. Routed intermediate legs (the wSOL, stable or quote a route passes through) are excluded by default and flagged isRoutingHop; pass includeRoutingHops=true to include them. Wash/MEV rows are kept and carry the isWash badge (Solana) so consumers choose.
curl 'https://api.serialized.xyz/v1/wallet/trades?chain=evm:8453&wallet=0x95d955179a7cd45aeef394ed39f6a8d8b1bd1e09&limit=2' \
-H 'Authorization: YOUR_API_KEY'
curl 'https://api.serialized.xyz/v1/wallet/trades?chain=solana&wallet=GuhieZDx6nwJV14WjeUQH2ted6CGPKoGCCTaPSPNgG2E&limit=2' \
-H 'Authorization: YOUR_API_KEY'
{
"data": [
{
"id": "0x18ec69970caef3c490d8276810f56083c9156c670e8c68eada72853a4d6e9b83:291",
"at": 1787000365000,
"chain": "evm:8453",
"tokenAddress": "0xecaf81eb42cd30014eb44130b89bcd6d4ad98b92",
"poolAddress": "0x9f4a0c8e3f0b5a2f6c5b8b9c0d1e2f3a4b5c6d7e",
"isBuy": false,
"amountToken": 609087.0435973641,
"priceNative": 2.46340612952e-9,
"volumeNative": 0.001500827331112315,
"volumeUsd": 3.120677773718492,
"feesNative": null,
"isWash": null,
"isRoutingHop": false,
"txHash": "0x18ec69970caef3c490d8276810f56083c9156c670e8c68eada72853a4d6e9b83",
"block": 50105509,
"logIndex": 291
},
{
"id": "0x18ec69970caef3c490d8276810f56083c9156c670e8c68eada72853a4d6e9b83:286",
"at": 1787000365000,
"chain": "evm:8453",
"tokenAddress": "0xecaf81eb42cd30014eb44130b89bcd6d4ad98b92",
"poolAddress": "0x9f4a0c8e3f0b5a2f6c5b8b9c0d1e2f3a4b5c6d7e",
"isBuy": true,
"amountToken": 609087.0435973641,
"priceNative": 2.2864562986700003e-9,
"volumeNative": 0.001406562274237914,
"volumeUsd": 2.9246719696342653,
"feesNative": null,
"isWash": null,
"isRoutingHop": false,
"txHash": "0x18ec69970caef3c490d8276810f56083c9156c670e8c68eada72853a4d6e9b83",
"block": 50105509,
"logIndex": 286
}
],
"meta": {
"asOf": 1787163134462,
"hasMore": true,
"nextCursor": "MTc4NzAwMDM2NXw1MDEwNTUwOXwyODZ8MHgxOGVjNjk5NzBjYWVmM2M0OTBkODI3NjgxMGY1NjA4M2M5MTU2YzY3MGU4YzY4ZWFkYTcyODUzYTRkNmU5Yjgz",
"oldestAt": 1787000365000
}
}
{
"data": [
{
"id": "3GNhPPcE61UCifVQ5dZtfWB2yTnaVPiNA89a3X5KRQ4ySxJbWnjUABmHQTHFppxk8QKGwZNViQYtnYizCpthN9cP:GFQLVG2UKYydSCJ2WjkuMXijpgJ6hbs2nEsNwdZFpump:b",
"at": 1786907834306,
"chain": "solana",
"tokenAddress": "GFQLVG2UKYydSCJ2WjkuMXijpgJ6hbs2nEsNwdZFpump",
"poolAddress": "48WkwrpuxrjunUiWPjKE6mwt72L8Jt44ZKDzeoxfpJFq",
"isBuy": true,
"amountToken": 786309.646509,
"priceNative": 1.2603e-8,
"volumeNative": 0.009909,
"volumeUsd": 7.444819634856682,
"feesNative": 0.000005,
"isWash": false,
"isRoutingHop": false,
"txHash": "3GNhPPcE61UCifVQ5dZtfWB2yTnaVPiNA89a3X5KRQ4ySxJbWnjUABmHQTHFppxk8QKGwZNViQYtnYizCpthN9cP",
"block": 298541122,
"logIndex": 0
},
{
"id": "5QCmyqayK3StL4ixLHpPmUm7dCDKtVFjDcVRjWBjWbHqKfwM5gZ6ukTQ3rkRRgRyPxUoNg62szAXSGKZdUVRUgjG:9x4EQVaPRWSw4jKoWTpRzMP7YAu5sZwHyLJ9tbJYpump:s",
"at": 1786906537718,
"chain": "solana",
"tokenAddress": "9x4EQVaPRWSw4jKoWTpRzMP7YAu5sZwHyLJ9tbJYpump",
"poolAddress": "C9uSZfFvXF2G9Fz1wamUpP7xveWYYqcJXgzgDEfn4oY5",
"isBuy": false,
"amountToken": 1694349.271433,
"priceNative": 3.0027e-9,
"volumeNative": 0.005088,
"volumeUsd": 3.807367487098589,
"feesNative": 0.000005,
"isWash": false,
"isRoutingHop": false,
"txHash": "5QCmyqayK3StL4ixLHpPmUm7dCDKtVFjDcVRjWBjWbHqKfwM5gZ6ukTQ3rkRRgRyPxUoNg62szAXSGKZdUVRUgjG",
"block": 298540012,
"logIndex": 0
}
],
"meta": {
"asOf": 1787163134616,
"hasMore": true,
"usdBasis": "trade",
"nextCursor": "MTc4NjkwNjUzN3w1UUNteXFheUszU3RMNGl4TEhwUG1VbTdkQ0RLdFZGakRjVlJqV0JqV2JIcUtmd001Z1o2dWtUUTNya1JSZ1J5UHhVb05nNjJzekFYU0dLWmRVVlJVZ2pHfDl4NEVRVmFQUldTdzRqS29XVHBSek1QN1lBdTVzWndIeUxKOXRiSllwdW1wfDA",
"oldestAt": 1786906537718
}
}
GET /v1/wallet/trades · 1 credit
Trade history of a wallet, newest first - multihop-deduplicated (one event per transaction, token and side; never doubled volumes). Paginate with the opaque cursor from meta.nextCursor on both EVM and Solana: exact keyset pagination that never skips or repeats a trade. Routed intermediate legs (the wSOL, stable or quote a route passes through) are excluded by default and flagged isRoutingHop; pass includeRoutingHops=true to include them. Wash/MEV rows are kept and carry the isWash badge (Solana) so consumers choose.
GET /v1/wallet/swaps: one row per transaction, a routed swap reads as a single swap (what the wallet sent, what it received), with every leg, its venue and its router.limit and by a scan window over the wallet’s history: a page can hold fewer than limit rows while meta.hasMore is true. Keep passing meta.nextCursor until hasMore is false; cursors never skip or repeat a trade, and hasMore: false means the wallet’s history is fully served.from and to bound the history in unix milliseconds, both inclusive, and combine with cursor. fromAt (the same lower bound) and beforeAt (strictly older) remain supported; pass one name per bound.feesNative (the total fee paid by the trader for the transaction: gas and priority fee, plus the validator tip on Solana, in the chain’s native unit, null when it is not available for that row), isRoutingHop (a routed intermediate leg) and isWash (Solana wash/MEV flag; null on EVM). volumeUsd is at the current native price on EVM; on Solana it is valued at the SOL price at the time of the trade and meta.usdBasis reports trade. meta.nextCursor is present while meta.hasMore is true.curl 'https://api.serialized.xyz/v1/wallet/trades?chain=evm:8453&wallet=0x95d955179a7cd45aeef394ed39f6a8d8b1bd1e09&limit=2' \
-H 'Authorization: YOUR_API_KEY'
curl 'https://api.serialized.xyz/v1/wallet/trades?chain=solana&wallet=GuhieZDx6nwJV14WjeUQH2ted6CGPKoGCCTaPSPNgG2E&limit=2' \
-H 'Authorization: YOUR_API_KEY'
{
"data": [
{
"id": "0x18ec69970caef3c490d8276810f56083c9156c670e8c68eada72853a4d6e9b83:291",
"at": 1787000365000,
"chain": "evm:8453",
"tokenAddress": "0xecaf81eb42cd30014eb44130b89bcd6d4ad98b92",
"poolAddress": "0x9f4a0c8e3f0b5a2f6c5b8b9c0d1e2f3a4b5c6d7e",
"isBuy": false,
"amountToken": 609087.0435973641,
"priceNative": 2.46340612952e-9,
"volumeNative": 0.001500827331112315,
"volumeUsd": 3.120677773718492,
"feesNative": null,
"isWash": null,
"isRoutingHop": false,
"txHash": "0x18ec69970caef3c490d8276810f56083c9156c670e8c68eada72853a4d6e9b83",
"block": 50105509,
"logIndex": 291
},
{
"id": "0x18ec69970caef3c490d8276810f56083c9156c670e8c68eada72853a4d6e9b83:286",
"at": 1787000365000,
"chain": "evm:8453",
"tokenAddress": "0xecaf81eb42cd30014eb44130b89bcd6d4ad98b92",
"poolAddress": "0x9f4a0c8e3f0b5a2f6c5b8b9c0d1e2f3a4b5c6d7e",
"isBuy": true,
"amountToken": 609087.0435973641,
"priceNative": 2.2864562986700003e-9,
"volumeNative": 0.001406562274237914,
"volumeUsd": 2.9246719696342653,
"feesNative": null,
"isWash": null,
"isRoutingHop": false,
"txHash": "0x18ec69970caef3c490d8276810f56083c9156c670e8c68eada72853a4d6e9b83",
"block": 50105509,
"logIndex": 286
}
],
"meta": {
"asOf": 1787163134462,
"hasMore": true,
"nextCursor": "MTc4NzAwMDM2NXw1MDEwNTUwOXwyODZ8MHgxOGVjNjk5NzBjYWVmM2M0OTBkODI3NjgxMGY1NjA4M2M5MTU2YzY3MGU4YzY4ZWFkYTcyODUzYTRkNmU5Yjgz",
"oldestAt": 1787000365000
}
}
{
"data": [
{
"id": "3GNhPPcE61UCifVQ5dZtfWB2yTnaVPiNA89a3X5KRQ4ySxJbWnjUABmHQTHFppxk8QKGwZNViQYtnYizCpthN9cP:GFQLVG2UKYydSCJ2WjkuMXijpgJ6hbs2nEsNwdZFpump:b",
"at": 1786907834306,
"chain": "solana",
"tokenAddress": "GFQLVG2UKYydSCJ2WjkuMXijpgJ6hbs2nEsNwdZFpump",
"poolAddress": "48WkwrpuxrjunUiWPjKE6mwt72L8Jt44ZKDzeoxfpJFq",
"isBuy": true,
"amountToken": 786309.646509,
"priceNative": 1.2603e-8,
"volumeNative": 0.009909,
"volumeUsd": 7.444819634856682,
"feesNative": 0.000005,
"isWash": false,
"isRoutingHop": false,
"txHash": "3GNhPPcE61UCifVQ5dZtfWB2yTnaVPiNA89a3X5KRQ4ySxJbWnjUABmHQTHFppxk8QKGwZNViQYtnYizCpthN9cP",
"block": 298541122,
"logIndex": 0
},
{
"id": "5QCmyqayK3StL4ixLHpPmUm7dCDKtVFjDcVRjWBjWbHqKfwM5gZ6ukTQ3rkRRgRyPxUoNg62szAXSGKZdUVRUgjG:9x4EQVaPRWSw4jKoWTpRzMP7YAu5sZwHyLJ9tbJYpump:s",
"at": 1786906537718,
"chain": "solana",
"tokenAddress": "9x4EQVaPRWSw4jKoWTpRzMP7YAu5sZwHyLJ9tbJYpump",
"poolAddress": "C9uSZfFvXF2G9Fz1wamUpP7xveWYYqcJXgzgDEfn4oY5",
"isBuy": false,
"amountToken": 1694349.271433,
"priceNative": 3.0027e-9,
"volumeNative": 0.005088,
"volumeUsd": 3.807367487098589,
"feesNative": 0.000005,
"isWash": false,
"isRoutingHop": false,
"txHash": "5QCmyqayK3StL4ixLHpPmUm7dCDKtVFjDcVRjWBjWbHqKfwM5gZ6ukTQ3rkRRgRyPxUoNg62szAXSGKZdUVRUgjG",
"block": 298540012,
"logIndex": 0
}
],
"meta": {
"asOf": 1787163134616,
"hasMore": true,
"usdBasis": "trade",
"nextCursor": "MTc4NjkwNjUzN3w1UUNteXFheUszU3RMNGl4TEhwUG1VbTdkQ0RLdFZGakRjVlJqV0JqV2JIcUtmd001Z1o2dWtUUTNya1JSZ1J5UHhVb05nNjJzekFYU0dLWmRVVlJVZ2pHfDl4NEVRVmFQUldTdzRqS29XVHBSek1QN1lBdTVzWndIeUxKOXRiSllwdW1wfDA",
"oldestAt": 1786906537718
}
}
Authorizations
Your raw API key (not needed on the demo server).
Query Parameters
Public chain id - evm:<id> or solana.
Wallet address (EVM hex, case-insensitive; Solana base58).
Opaque resume token from meta.nextCursor - exact keyset pagination on both EVM and Solana, no skip or duplicate.
1-100. Default 50.
1 <= x <= 100Inclusive lower time bound, unix MILLISECONDS. A value in seconds is rejected (400).
x >= 0Inclusive upper time bound, unix MILLISECONDS. A value in seconds is rejected (400).
x >= 0Upper bound, unix MILLISECONDS: trades strictly older. A value in seconds is rejected (400). Prefer cursor for exact pagination.
x >= 0Inclusive lower time bound (ms).
x >= 0Also serve the intermediate legs of routed swaps, flagged isRoutingHop. Default false.
Response
Standard { data, meta } envelope.