curl -X POST "https://api.blocktronics.xyz/v1/tools/token_series" \
-H "Authorization: Bearer $BLOCKTRONICS_KEY" \
-H "content-type: application/json" \
-d '{"token":"base:0x4ed4e862860bed51a9570b96d89af5e1b0efefed","metrics":["holders_all"],"days":60}'const res = await fetch("https://api.blocktronics.xyz/v1/tools/token_series", {
method: "POST",
headers: { Authorization: `Bearer ${process.env.BLOCKTRONICS_KEY}`, "content-type": "application/json" },
body: JSON.stringify({ token: "base:0x4ed4e862860bed51a9570b96d89af5e1b0efefed", metrics: ["holders_all"], days: 60 }),
});
const body = await res.json();
// Refused, or the tool couldn't answer: nothing was charged.
if (!res.ok) throw new Error(`${body.code}: ${body.error}`);
console.log(body.charged, body.data);Make an API key on your account page and keep it on your server. A pull is 2 credits per token; refusals and errors cost nothing.
{
"metrics": [
"holders",
"holders_ge_100",
"holders_ge_1k",
"holders_ge_10k",
"holders_ge_100k"
],
"days": 2,
"from": "2026-10-24",
"to": "2026-10-25",
"format": "columns",
"summary": {
"…": "first, last, change, min, max, total and null days for each metric"
},
"unavailable": {},
"data": {
"day": [
"2026-10-24",
"2026-10-25"
],
"holders": [
4052,
4041
],
"holders_ge_100": [
1318,
1320
],
"holders_ge_1k": [
409,
410
],
"holders_ge_10k": [
95,
95
],
"holders_ge_100k": [
26,
26
]
}
}