Skip to content

Windowed stats

GET
/tokens/stats/{address}
curl --request GET \
--url https://api.getchord.xyz/v1/tokens/stats/example

DexScreener-style windows (5 m, 1 h, 6 h, 24 h): change, transactions, buys/sells, buy/sell volume, makers, buyers, sellers — plus all-time high, 24-hour range, first trade, total transactions and the markets (pools) the token trades on. Cached with stale-while-revalidate, so it answers fast and refreshes in the background.

address
required

EVM address, hex, case-insensitive.

string
/^0x[a-fA-F0-9]{40}$/
Media typeapplication/json
object
priceUsd
number | null
windows
object
m5
object
change

Percent.

number
txns
integer
buys
integer
sells
integer
buyVol
number
sellVol
number
makers
integer
buyers
integer
sellers
integer
h1
object
change

Percent.

number
txns
integer
buys
integer
sells
integer
buyVol
number
sellVol
number
makers
integer
buyers
integer
sellers
integer
h6
object
change

Percent.

number
txns
integer
buys
integer
sells
integer
buyVol
number
sellVol
number
makers
integer
buyers
integer
sellers
integer
h24
object
change

Percent.

number
txns
integer
buys
integer
sells
integer
buyVol
number
sellVol
number
makers
integer
buyers
integer
sellers
integer
liquidityUsd
number | null
ath
object
priceUsd
number
ts

Unix time, seconds, UTC.

integer
range24h
object
high
number
low
number
firstTradeTs

Unix time, seconds, UTC.

integer | null
totalTxns
integer
markets
Array<object>
object
dex
string
pool

A pool: a 20-byte contract address (V2 / V3) or a 32-byte Uniswap V4 pool id.

string
/^0x([a-fA-F0-9]{40}|[a-fA-F0-9]{64})$/
txns24h
integer
vol24h
number
makers24h
integer
Example
{
"priceUsd": 80418.25435738193,
"windows": {
"m5": {
"change": 0,
"txns": 26,
"buys": 12,
"sells": 14,
"buyVol": 3176.8774229999995,
"sellVol": 3214.276456,
"makers": 16,
"buyers": 10,
"sellers": 8
},
"h1": {
"change": 0.12,
"txns": 405,
"buys": 217,
"sells": 188,
"buyVol": 64728.724117999926,
"sellVol": 46488.608315000005,
"makers": 149,
"buyers": 95,
"sellers": 79
},
"h6": {
"change": -0.81,
"txns": 5797,
"buys": 2956,
"sells": 2841,
"buyVol": 877524.8736700043,
"sellVol": 985143.4303749993,
"makers": 850,
"buyers": 530,
"sellers": 535
},
"h24": {
"change": -0.87,
"txns": 20459,
"buys": 11127,
"sells": 9332,
"buyVol": 2902488.2480250364,
"sellVol": 3019938.9815319907,
"makers": 2942,
"buyers": 2228,
"sellers": 1933
}
},
"liquidityUsd": null,
"ath": {
"priceUsd": 93752.28222071448,
"ts": 1789520400
},
"range24h": {
"high": 81967.21311475411,
"low": 79796.7741935484
},
"firstTradeTs": 1789520400,
"totalTxns": 78768,
"markets": [
{
"dex": "uniswap_v3",
"pool": "0x82916bee18fcef517b26c72d7cb5f13694e1db41",
"txns24h": 17884,
"vol24h": 5118587.965404977,
"makers24h": 2673
},
{
"dex": "slipstream_fork",
"pool": "0xd945caee4635bcd7fb8a9fa74dc1d0c4c1472782",
"txns24h": 1744,
"vol24h": 787999.6481669984,
"makers24h": 347
}
]
}

Invalid parameters — error names the check that failed (INVALID_PARAMS, BAD_ADDRESS, BAD_LIMIT, BAD_HOURS, …).

Media typeapplication/json

Every non-2xx body.

object
error
required

Stable machine code, e.g. INVALID_PARAMS, NOT_READY, RATE_LIMIT_EXCEEDED.

string
message

For humans.

string
statusCode

HTTP status, when included.

integer
Example
{
"error": "INVALID_PARAMS",
"message": "amount must be an integer string in the token's smallest unit"
}

Nothing at this identity (NOT_FOUND, UNKNOWN_TOKEN, NO_ROUTE).

Media typeapplication/json

Every non-2xx body.

object
error
required

Stable machine code, e.g. INVALID_PARAMS, NOT_READY, RATE_LIMIT_EXCEEDED.

string
message

For humans.

string
statusCode

HTTP status, when included.

integer
Example
{
"error": "INVALID_PARAMS",
"message": "amount must be an integer string in the token's smallest unit"
}