curl "https://api.metastreams.io/v1/tokens/solana/DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263" \
-H "Authorization: Bearer $API_KEY"
const response = await fetch(
"https://api.metastreams.io/v1/tokens/solana/DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263",
{ headers: { Authorization: `Bearer ${process.env.API_KEY}` } },
);
if (!response.ok) throw new Error(`HTTP ${response.status}`);
const token = await response.json();
console.log(token.symbol, token.price.usd);
{
"chain": "solana",
"address": "DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263",
"name": "Bonk",
"symbol": "Bonk",
"decimals": 5,
"price": { "native": "0.000000121", "usd": "0.0000216" },
"marketCap": { "native": "10741962.1", "usd": "1917440000" },
"liquidity": { "native": "61230.4", "usd": "10929626" },
"stats": {
"24h": {
"priceChangePct": "-3.4",
"volume": { "native": "301422.8", "usd": "53803970" },
"buyCount": 48211,
"sellCount": 45390,
"buyVolume": { "native": "151002.1", "usd": "26953870" },
"sellVolume": { "native": "150420.7", "usd": "26850100" }
}
},
"holders": { "count": 972311, "top10Pct": "31.7", "sniperPct": "0.2" },
"security": { "mintDisabled": true, "transferBlockable": false },
"updatedAt": 1789632012345
}
{
"error": {
"code": "NOT_FOUND",
"message": "No such token on this chain."
}
}
Token details
Read one token’s price, market cap, liquidity, trailing stats, holders, security and launch data.
curl "https://api.metastreams.io/v1/tokens/solana/DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263" \
-H "Authorization: Bearer $API_KEY"
const response = await fetch(
"https://api.metastreams.io/v1/tokens/solana/DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263",
{ headers: { Authorization: `Bearer ${process.env.API_KEY}` } },
);
if (!response.ok) throw new Error(`HTTP ${response.status}`);
const token = await response.json();
console.log(token.symbol, token.price.usd);
{
"chain": "solana",
"address": "DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263",
"name": "Bonk",
"symbol": "Bonk",
"decimals": 5,
"price": { "native": "0.000000121", "usd": "0.0000216" },
"marketCap": { "native": "10741962.1", "usd": "1917440000" },
"liquidity": { "native": "61230.4", "usd": "10929626" },
"stats": {
"24h": {
"priceChangePct": "-3.4",
"volume": { "native": "301422.8", "usd": "53803970" },
"buyCount": 48211,
"sellCount": 45390,
"buyVolume": { "native": "151002.1", "usd": "26953870" },
"sellVolume": { "native": "150420.7", "usd": "26850100" }
}
},
"holders": { "count": 972311, "top10Pct": "31.7", "sniperPct": "0.2" },
"security": { "mintDisabled": true, "transferBlockable": false },
"updatedAt": 1789632012345
}
{
"error": {
"code": "NOT_FOUND",
"message": "No such token on this chain."
}
}
chain is a chain slug, and address is in that chain’s own format. updatedAt says when the state was last refreshed.
Reading the response
- Holder groups defines every field of
holders, and wallet classifications defines the flags those groups count. security.rugPctandmetadata.twitterReuseCountread"0"and0on every token. Do not rely on them yet.platformsandannotationsare left out when they are empty. Today the only listing inplatformsis a paid DexScreener profile.
Errors
| Code | When |
|---|---|
UNSUPPORTED_CHAIN | chain is not a supported slug |
VALIDATION_ERROR | address is malformed, or not of the chain’s family |
NOT_FOUND | No such token on this chain |
curl "https://api.metastreams.io/v1/tokens/solana/DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263" \
-H "Authorization: Bearer $API_KEY"
const response = await fetch(
"https://api.metastreams.io/v1/tokens/solana/DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263",
{ headers: { Authorization: `Bearer ${process.env.API_KEY}` } },
);
if (!response.ok) throw new Error(`HTTP ${response.status}`);
const token = await response.json();
console.log(token.symbol, token.price.usd);
{
"chain": "solana",
"address": "DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263",
"name": "Bonk",
"symbol": "Bonk",
"decimals": 5,
"price": { "native": "0.000000121", "usd": "0.0000216" },
"marketCap": { "native": "10741962.1", "usd": "1917440000" },
"liquidity": { "native": "61230.4", "usd": "10929626" },
"stats": {
"24h": {
"priceChangePct": "-3.4",
"volume": { "native": "301422.8", "usd": "53803970" },
"buyCount": 48211,
"sellCount": 45390,
"buyVolume": { "native": "151002.1", "usd": "26953870" },
"sellVolume": { "native": "150420.7", "usd": "26850100" }
}
},
"holders": { "count": 972311, "top10Pct": "31.7", "sniperPct": "0.2" },
"security": { "mintDisabled": true, "transferBlockable": false },
"updatedAt": 1789632012345
}
{
"error": {
"code": "NOT_FOUND",
"message": "No such token on this chain."
}
}
Authorizations
Send the API key as Authorization: Bearer <key>.
Path Parameters
Chain the resource lives on. Chain slug. One spelling per chain, in paths and bodies alike. Only a chain with spot data is published.
solana, base, bsc, robinhood, arc Token mint or contract address.
Response
The token.
GET /v1/tokens/{chain}/{address} response.
Token address.
All-time-high price and market cap.
Show child attributes
Show child attributes
Chain the token trades on.
solana, base, bsc, robinhood, arc Creation timestamp.
Creator address.
Token decimals.
x >= 0The creator wallet's first inbound funding. Always present; its status says whether the lookup has settled.
Show child attributes
Show child attributes
Venues the token's top pools trade on, deepest first.
["pumpswap", "raydium"]
Holder-risk breakdown.
Show child attributes
Show child attributes
Current liquidity.
Show child attributes
Show child attributes
Current market cap.
Show child attributes
Show child attributes
Off-chain project metadata.
Show child attributes
Show child attributes
Token name.
Current price.
Show child attributes
Show child attributes
On-chain security flags.
Show child attributes
Show child attributes
Trailing-window stats, one key per rolling window.
Show child attributes
Show child attributes
Total supply.
"123.456789"
Token symbol.
All-time volume and fee totals.
Show child attributes
Show child attributes
Last update timestamp.
Address of the quote asset in the token's deepest pool; null where it is not known.
Display symbol of that quote asset, on anchorAddress's terms.
Platform-scoped quirk flags the launch carried.
A platform-scoped flag the launch carried, tagged by kind.
- Option 1
- Option 2
- Option 3
- Option 4
Show child attributes
Show child attributes
[{ "kind": "mayhem_mode" }]
Bonding-curve completion, 0-100; null off launchpad curves.
"123.456789"
When the token graduated off its launchpad; null until graduation.
Venue the graduation pool trades on; null until graduation.
Pool the launchpad pool migrated into; null until graduation.
Launchpad the token launched through; null for non-launchpad tokens.
The token's external-platform listings.
A platform attached to a token, a wallet, or a trade.
The fieldless variants are trading terminals. Each doc gives the producer string its variant maps from.
- Option 1
- Option 2
- Option 3
- Option 4
- Option 5
- Option 6
- Option 7
- Option 8
- Option 9
- Option 10
- Option 11
- Option 12
- Option 13
- Option 14
- Option 15
- Option 16
- Option 17
- Option 18
- Option 19
- Option 20
- Option 21
- Option 22
- Option 23
- Option 24
- Option 25
- Option 26
- Option 27
Show child attributes
Show child attributes