/cex/ohlcv/batchcex-historyBatchPOST batch variant of /cex/ohlcv. Body: { pairs: [{asset, base}], interval, startTime, endTime, limit } (max 50 pairs). Returns one row per requested pair as { asset, base, candles: [...] } — pairs with no data in the window surface as candles: []. Time-window / interval / limit are shared across the batch.
| Name | Location | Details |
|---|---|---|
BearerAuth | Authorization header · bearer | JWT issued by the Honeycluster auth service for the `oracle` audience. Present as `Authorization: Bearer <token>`. |
| Field | Type | Default | Description |
|---|---|---|---|
pairsrequired | object[] | Up to 50 (asset, base) pairs to fetch candles for. | |
pairs[].required | string | Asset symbol to query (e.g. `XRP`). | |
pairs[]. | string | "USD" | Base currency. Defaults to `USD`. |
interval | enum<string> | "1h" | OHLCV candle interval. Defaults to `1h`. Available 1m3m5m15m30m1h2h4h |
startTime | integer | Inclusive lower bound for candle time, Unix-seconds. Defaults to `endTime − (interval × limit)`. | |
endTime | integer | Exclusive upper bound for candle time, Unix-seconds. Defaults to the current server time. | |
limit | integer | 500 | Per-pair maximum number of candles to return (1–1000). Defaults to 500. |
{
"pairs": [
{
"asset": "XRP",
"base": "USD"
}
],
"interval": "1h",
"startTime": 1745798400,
"endTime": 1745798400,
"limit": 500
}| Field | Type | Description |
|---|---|---|
items | object[] | One entry per requested pair, in request order. |
items[]. | string | Echoed asset symbol. |
items[]. | string | Echoed base currency. |
items[]. | object[] | OHLCV candles for the pair, ascending bucket order. Empty when no data exists in the window. |
items[]. | string | Asset symbol. |
items[]. | string | Base currency. |
items[]. | integer | Candle start time, Unix-seconds. |
items[]. | object | Opening price (decimal string), or `null` when only ticker-derived close is available. |
items[]. | object | Highest price (decimal string), or `null` when only ticker-derived close is available. |
items[]. | object | Lowest price (decimal string), or `null` when only ticker-derived close is available. |
items[]. | string | Closing price (decimal string). |
items[]. | object | Total volume in the interval, or `null` when only ticker-derived close is available. |
items[]. | object | Volume-weighted average price. |
items[]. | number | Number of trades aggregated into the candle. |
{
"items": [
{
"asset": "string",
"base": "string",
"candles": [
{
"asset": "XRP",
"base": "USD",
"bucket": 1745712000,
"open": "0.512",
"high": "0.518",
"low": "0.509",
"close": "0.514",
"volume": "128450.32",
"vwap": 0.5135,
"tradeCount": 312
}
]
}
]
}| Field | Type | Description |
|---|---|---|
message | string | The error message |
code | string | The error code |
issues | object[] | An array of issues that were responsible for the error |
issues[]. | string |
{
"code": "BAD_REQUEST",
"message": "Invalid input data",
"issues": []
}| Field | Type | Description |
|---|---|---|
message | string | The error message |
code | string | The error code |
issues | object[] | An array of issues that were responsible for the error |
issues[]. | string |
{
"code": "UNAUTHORIZED",
"message": "Authorization not provided",
"issues": []
}| Field | Type | Description |
|---|---|---|
message | string | The error message |
code | string | The error code |
issues | object[] | An array of issues that were responsible for the error |
issues[]. | string |
{
"code": "FORBIDDEN",
"message": "Insufficient access",
"issues": []
}| Field | Type | Description |
|---|---|---|
message | string | The error message |
code | string | The error code |
issues | object[] | An array of issues that were responsible for the error |
issues[]. | string |
{
"code": "INTERNAL_SERVER_ERROR",
"message": "Internal server error",
"issues": []
}