---
title: "Consolidated OHLC candles for 16 assets (Binance + Coinbase) — $0.02/call"
method: GET
path: "/api/v1/ohlc/{asset}"
tags: ["price", "paid"]
---

# Consolidated OHLC candles for 16 assets (Binance + Coinbase) — $0.02/call

`GET /api/v1/ohlc/{asset}`

## Request

- Base URL: `https://kronossignals.com` (the document declares no server; this is the origin it was published from)
- URL: `https://kronossignals.com/api/v1/ohlc/{asset}`
- Auth: none declared

Returns consolidated OHLC candlestick data for any of the 16 supported assets: Binance (primary) + Coinbase (secondary) per candle, with VWAP, dollar volume, body/wick % and doji flags, plus gap and volume-anomaly flags. Supports ?interval=1h|4h|1d (default 1h) and ?limit=1-200 (default 50). $0.02 USDC via x402.

## Path parameters

- `asset` 'btc' | 'eth' | 'sol' | 'bnb' | 'xrp' | 'doge' | 'ada' | 'avax' | 'link' | 'dot' | 'ltc' | 'trx' | 'bch' | 'atom' | 'near' | 'apt', required

## Query parameters

- `interval` '1h' | '4h' | '1d'
- `limit` integer

## Response `200`

OHLC candles returned (payment verified)

- object
  - `asset` string, required
  - `interval` string, required
  - `consolidated` boolean
  - `exchanges_used` string[]
  - `candles_consolidated` integer
  - `candles` object[], required
    - `t` integer
    - `o` number
    - `h` number
    - `l` number
    - `c` number
    - `vwap` number
    - `dollar_volume` number
    - `candle_body_pct` number
    - `upper_wick_pct` number
    - `lower_wick_pct` number
    - `doji` boolean
    - `current_candle_is_forming` boolean
  - `count` integer, required
  - `gap_flags` object[]: Candle open vs prior close gaps exceeding 1%. Empty array = no gaps.
    - `candle_index` integer
    - `gap_pct` number: Gap size in percent (signed).
    - `t` integer: Open time of gapping candle (Unix ms).
  - `baseline_insufficient` boolean: true when <20 candles returned — rolling baseline cannot be established.
  - `volume_anomaly` object
    - `detected` boolean
    - `ratio` number, nullable: Last candle vol / rolling mean. null when baseline_insufficient.
  - `source` string, required
  - `as_of` string, date-time, required
  - `disclaimer` string, required

## Other responses

- `402`: Payment Required — x402 micropayment instructions in response body

---

[API](https://skmtc.dev/kronossignals/apis/kronos-crypto-data-api.md) · [All operations](https://skmtc.dev/kronossignals/apis/kronos-crypto-data-api/llms.txt) · [OpenAPI document](https://skmtc.dev/kronossignals/apis/kronos-crypto-data-api/revisions/bfdcf7230e93?raw)
