Skip to main content
POST
POST /v1/token/ohlcv · 5 per item credits Batch twin of Candles (OHLCV): the candles of up to 10 tokens in one call, chains mixable in the same lot. interval, limit, quote and fill are shared by the lot; endTime, from and pools are per token, so every series keeps its own pagination. The response is in input order: each slot is the body of the GET (data plus its own count, oldestTime, newestTime, hasMore, nextEndTime, pools), or { "error": { "code", "message" } } for that token alone (unknown token, malformed address, quote=usd on a chain without USD history). A bad item never costs you the rest of the lot.
An unknown interval or a lot of more than 10 items is refused with 400 for the whole call (it is a shared option). Everything else is judged per item.

Authorizations

Authorization
string
header
required

Your raw API key (not needed on the demo server).

Body

application/json
items
object[]
required

1 to 10 of {chain, address, pools?, endTime?, from?}. pools: optional CSV of up to 50 pool addresses to aggregate (default: the pool we price the token from, tracked across a bonding-curve migration). endTime / from: unix seconds (a millisecond value is accepted and normalized), per item, so each series paginates on its own with the oldestTime - 1 of its slot.

Required array length: 1 - 10 elements
Example:
interval
string
default:5m
required

Shared by the lot: 1s|5s|15s|30s|1m|3m|5m|15m|30m|1h|2h|4h|6h|12h|1d|1w|1M (default 5m). 7d and 30d are accepted as aliases of 1w and 1M; meta.interval echoes the canonical key. An unknown interval is refused with 400 for the whole call.

Example:

"1h"

limit
integer
default:200

Candles per item, 1-2000 (default 200), shared by the lot.

Required range: 1 <= x <= 2000
Example:

2

quote
default:native

native (default) or usd (Solana), shared by the lot but judged per item: an item on a chain without USD history gets its own { error } slot, the others are served.

Available options:
native
Example:

"native"

fill
boolean
default:true

Dense time axis (default true): a flat zero-volume candle for every bucket without a trade. false returns traded buckets only. Shared by the lot.

Example:

true

Response

200

Standard { data, meta } envelope.