---
title: "Candlestick (OHLC) data for MULTIPLE assets in one call"
method: GET
path: "/agentFriendly/ta/candlesticks_batch"
tags: ["AgentFriendly"]
---

# Candlestick (OHLC) data for MULTIPLE assets in one call

`GET /agentFriendly/ta/candlesticks_batch`

Returns OHLC candlestick data (no volume — the underlying history source is price-only) for up to 10 CoinCap slugs in a single call — use this instead of looping per-asset candlestick calls for comparison and screening tasks. Per-slug failures (e.g. an unknown slug) are returned in-band as { slug, ok: false, error } entries rather than failing the whole request. Resolve slugs with /agentFriendly/assets_search before calling. One batch call consumes a single token from the shared TA rate pool (15 calls / 15s), regardless of how many slugs are requested. Each asset's candles are capped at 30 days of underlying history per call — coarse intervals return fewer candles than requested once that cap is hit (e.g. interval=d1 returns at most ~30 candles even if limit is higher). Duplicate slugs are deduplicated. If the slug list had to be cut down to 10, the requested limit had to be clamped to 200, or the 30-day history cap reduced the number of candles returned, the response includes a top-level "truncated": true flag (omitted when nothing was truncated).

## Query parameters

- `slugs` string, required
- `interval` 'm1' | 'm5' | 'm15' | 'm30' | 'h1' | 'h2' | 'h6' | 'h12' | 'd1'
- `limit` integer

## Response `200`

Per-slug candlestick results

- object
  - `timestamp` integer
  - `interval` string
  - `truncated` boolean — Present and true when the slug list was cut down to 10, the requested limit was clamped to 200, or the 30-day history cap reduced the number of candles returned for an interval/limit combination; omitted otherwise.
  - `data` object[]
    - `slug` string
    - `ok` boolean
    - `error` 'not_found' | 'server_error'
    - `candles` object[]
      - `time` integer
      - `open` number
      - `high` number
      - `low` number
      - `close` number

## Other responses

- `400` — Bad request - invalid parameters
- `402` — Payment Required
- `500` — Internal server error

---

[API](https://skmtc.dev/coincap/apis/coincap-api.md) · [All operations](https://skmtc.dev/coincap/apis/coincap-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/coincap/coincap-api/revisions/e3d3739c2c03/schema)
