curl -X POST 'https://api.serialized.xyz/v1/pools/data' -H 'Authorization: YOUR_API_KEY' -H 'Content-Type: application/json' -d '{"markets":[{"chain":"evm:8453","address":"0x0ca6485b7e9cf814a3fd09d81672b07323535b64"},{"chain":"solana","address":"58oQChx4yWmvKdwLLZzBi4ChoCc2fqCUWBkwMihLYQo2"}],"windows":"1h,24h"}'
{
"data": [
{
"chain": "evm:8453",
"address": "0x0ca6485b7e9cf814a3fd09d81672b07323535b64",
"type": "UNISWAP_V3",
"launchpad": null,
"exchange": {
"name": "Uniswap V3",
"logo": "https://serialized.cloud/logos/dex/uniswap.680e6da3.svg"
},
"token": {
"address": "0x4ed4e862860bed51a9570b96d89af5e1b0efefed",
"name": "Degen",
"symbol": "DEGEN",
"decimals": 18,
"totalSupply": "37000000000"
},
"quote": {
"address": "0x4200000000000000000000000000000000000006",
"symbol": "WETH"
},
"priceNative": "0.00000053241",
"priceUsd": 0.001001,
"liquidityNative": "412.882",
"liquidityUsd": 776218.24,
"marketCapUsd": 37037000,
"circulatingSupply": null,
"bondingProgress": null,
"migrated": false,
"stats": {
"1h": {
"volumeNative": 1.204518,
"volumeUsd": 2264.49,
"buys": 41,
"sells": 27,
"txns": 66,
"buyVolumeNative": 0.812337,
"sellVolumeNative": 0.392181,
"traders": 52,
"feesNative": 0.003613,
"priceChangePct": 1.87
},
"24h": {
"volumeNative": 9.021983,
"volumeUsd": 16961.28,
"buys": 512,
"sells": 388,
"txns": 881,
"buyVolumeNative": 5.118442,
"sellVolumeNative": 3.903541,
"traders": 641,
"feesNative": 0.027065,
"priceChangePct": 4.96
}
}
},
{
"error": {
"code": "NOT_FOUND",
"message": "Pool 0x000000000000000000000000000000000000dead on evm:8453"
}
}
],
"meta": {
"asOf": 1786901933078,
"count": 2
}
}
Market Data
Market Data: batch
Live snapshot of up to 100 markets in one call - the whole market-poll fan-out in a single request. Per-market shape identical to /v1/pool/data. Response is in input order; an unknown or malformed market gets its own { error } slot. Billed per market.
POST
/
v1
/
pools
/
data
curl -X POST 'https://api.serialized.xyz/v1/pools/data' -H 'Authorization: YOUR_API_KEY' -H 'Content-Type: application/json' -d '{"markets":[{"chain":"evm:8453","address":"0x0ca6485b7e9cf814a3fd09d81672b07323535b64"},{"chain":"solana","address":"58oQChx4yWmvKdwLLZzBi4ChoCc2fqCUWBkwMihLYQo2"}],"windows":"1h,24h"}'
{
"data": [
{
"chain": "evm:8453",
"address": "0x0ca6485b7e9cf814a3fd09d81672b07323535b64",
"type": "UNISWAP_V3",
"launchpad": null,
"exchange": {
"name": "Uniswap V3",
"logo": "https://serialized.cloud/logos/dex/uniswap.680e6da3.svg"
},
"token": {
"address": "0x4ed4e862860bed51a9570b96d89af5e1b0efefed",
"name": "Degen",
"symbol": "DEGEN",
"decimals": 18,
"totalSupply": "37000000000"
},
"quote": {
"address": "0x4200000000000000000000000000000000000006",
"symbol": "WETH"
},
"priceNative": "0.00000053241",
"priceUsd": 0.001001,
"liquidityNative": "412.882",
"liquidityUsd": 776218.24,
"marketCapUsd": 37037000,
"circulatingSupply": null,
"bondingProgress": null,
"migrated": false,
"stats": {
"1h": {
"volumeNative": 1.204518,
"volumeUsd": 2264.49,
"buys": 41,
"sells": 27,
"txns": 66,
"buyVolumeNative": 0.812337,
"sellVolumeNative": 0.392181,
"traders": 52,
"feesNative": 0.003613,
"priceChangePct": 1.87
},
"24h": {
"volumeNative": 9.021983,
"volumeUsd": 16961.28,
"buys": 512,
"sells": 388,
"txns": 881,
"buyVolumeNative": 5.118442,
"sellVolumeNative": 3.903541,
"traders": 641,
"feesNative": 0.027065,
"priceChangePct": 4.96
}
}
},
{
"error": {
"code": "NOT_FOUND",
"message": "Pool 0x000000000000000000000000000000000000dead on evm:8453"
}
}
],
"meta": {
"asOf": 1786901933078,
"count": 2
}
}
POST /v1/pools/data · 1 per market credit
The batch twin of Market Data: poll up to 100 markets - across chains - in one request instead of a fan-out of single calls. Each item carries the same shape as /v1/pool/data; the response array is in input order, and an unknown or malformed market gets its own { "error": { "code", "message" } } slot, so one bad market never costs you the rest of the lot. Billed per market served: a market that comes back as an { error } slot costs nothing.
circulatingSupply is null on the batch (it comes from a slower upstream that would stall a fan-poll); fetch it per market on /v1/pool/data when you need it.meta.count echoes the number of markets in the request (the per-market billing count).curl -X POST 'https://api.serialized.xyz/v1/pools/data' -H 'Authorization: YOUR_API_KEY' -H 'Content-Type: application/json' -d '{"markets":[{"chain":"evm:8453","address":"0x0ca6485b7e9cf814a3fd09d81672b07323535b64"},{"chain":"solana","address":"58oQChx4yWmvKdwLLZzBi4ChoCc2fqCUWBkwMihLYQo2"}],"windows":"1h,24h"}'
{
"data": [
{
"chain": "evm:8453",
"address": "0x0ca6485b7e9cf814a3fd09d81672b07323535b64",
"type": "UNISWAP_V3",
"launchpad": null,
"exchange": {
"name": "Uniswap V3",
"logo": "https://serialized.cloud/logos/dex/uniswap.680e6da3.svg"
},
"token": {
"address": "0x4ed4e862860bed51a9570b96d89af5e1b0efefed",
"name": "Degen",
"symbol": "DEGEN",
"decimals": 18,
"totalSupply": "37000000000"
},
"quote": {
"address": "0x4200000000000000000000000000000000000006",
"symbol": "WETH"
},
"priceNative": "0.00000053241",
"priceUsd": 0.001001,
"liquidityNative": "412.882",
"liquidityUsd": 776218.24,
"marketCapUsd": 37037000,
"circulatingSupply": null,
"bondingProgress": null,
"migrated": false,
"stats": {
"1h": {
"volumeNative": 1.204518,
"volumeUsd": 2264.49,
"buys": 41,
"sells": 27,
"txns": 66,
"buyVolumeNative": 0.812337,
"sellVolumeNative": 0.392181,
"traders": 52,
"feesNative": 0.003613,
"priceChangePct": 1.87
},
"24h": {
"volumeNative": 9.021983,
"volumeUsd": 16961.28,
"buys": 512,
"sells": 388,
"txns": 881,
"buyVolumeNative": 5.118442,
"sellVolumeNative": 3.903541,
"traders": 641,
"feesNative": 0.027065,
"priceChangePct": 4.96
}
}
},
{
"error": {
"code": "NOT_FOUND",
"message": "Pool 0x000000000000000000000000000000000000dead on evm:8453"
}
}
],
"meta": {
"asOf": 1786901933078,
"count": 2
}
}
Authorizations
Your raw API key (not needed on the demo server).
Body
application/json
1 to 100 of {chain, address} pools, across chains. Billed per market.
Required array length:
1 - 100 elementsShow child attributes
Show child attributes
Example:
[
{ "chain": "evm:8453", "address": "0x0ca6…" },
{ "chain": "solana", "address": "58oQCh…" }
]
Comma-separated stat windows among 5m, 1h, 4h, 6h, 24h, applied to every market. Default: 5m,1h,6h,24h, the same default as /v1/pool/data.
Example:
"1h,24h"
Response
200
Standard { data, meta } envelope.