---
api: 'Revolut X Crypto Exchange REST API'
---

# Get historical OHLCV candles

Retrieve historical market data (Open, High, Low, Close, Volume) for a specific symbol.
If there is trading volume, the view is based on recent trades.
If there is no volume, the view is based on the Mid Price (Bid/Ask average).

## Endpoint

GET `/candles/{symbol}`

## Parameters

### header parameters

- `X-Revx-Timestamp` (integer, required)
  Current timestamp in Unix epoch milliseconds. 
  Used to prevent replay attacks and construct the signature.
  Provided with other authentication headers.

- `X-Revx-Signature` (string, required)
  The Ed25519 signature of the request. 
  Provided with other authentication headers.
  
  :::tip
  See **Authentication headers: Signing a request** for details on how to generate this.
  :::

### path parameters

- `symbol` (string, required)
  The trading pair symbol (e.g., BTC-USD).

### query parameters

- `interval` (enum, optional)
  Time interval between candles in minutes.
  Possible enum values:

  - `1`
  - `5`
  - `15`
  - `30`
  - `60`
  - `240`
  - `1440`
  - `2880`
  - `5760`
  - `10080`
  - `20160`
  - `40320`

- `since` (integer, optional)
  Start timestamp for the query in Unix epoch milliseconds.
  
  :::note
  If omitted, up to 5000 candles leading up to the `until` parameter will be returned.
  :::

- `until` (integer, optional)
  End timestamp for the query in Unix epoch milliseconds.
  
  :::note
  If omitted, this defaults to the current timestamp.
  :::

## Returns

### 200

OK

List of OHLCV candles.

#### Response attributes

- `data` (array of object)
  - `data[].start` (integer)
      Start timestamp of the candle in Unix epoch milliseconds.
  - `data[].open` (string)
      Opening price.
  - `data[].high` (string)
      Highest price during the interval.
  - `data[].low` (string)
      Lowest price during the interval.
  - `data[].close` (string)
      Closing price.
  - `data[].volume` (string)
      Total trading volume during the interval.

## Error responses

| HTTP status code | Description |
| --- | --- |
| 400 | Bad request |
| 401 | Unauthorized |
| 403 | Forbidden |
| 409 | Conflict |
| 429 | Rate Limit Exceeded |
| 5XX | Server Error |
