---
title: "Get CeFi instrument price history"
url: https://docs.truemarkets.co/api/market-data/get-cefi-price-history
description: "Returns historical bid/ask midpoint prices for a CeFi instrument"
---

Docs index: https://docs.truemarkets.co/llms.txt

# Get CeFi instrument price history

```
GET https://api.truemarkets.co/v1/cefi/market/prices/history
```

Returns historical bid/ask midpoint prices for a CeFi instrument
over a configurable lookback window, sampled at a configurable
resolution. Each price is `(bid + ask) / 2` from the latest EBBO
snapshot in the bucket; buckets without both a bid and an ask are
excluded.

The `symbol` parameter is the venue-native instrument symbol (e.g.
`BTC-USD`) — there is no registry translation today.

See the [Time Window & Resolution](#section/Time-Window-and-Resolution)
section for the format of `window` and `resolution`.

## Parameters

| Name | In | Type | Required | Description |
| --- | --- | --- | --- | --- |
| `symbol` | query | string | yes | Venue-native CeFi instrument symbol (e.g. `BTC-USD`). Required here: `asset_id` is rejected with a 400 on the CeFi routes, since CeFi instruments carry no price-source mapping to resolve one against. |
| `window` | query | string | no | Lookback period (e.g. `1h`, `4h`, `1d`, `7d`, `1M`). |
| `resolution` | query | string | no | Gap between consecutive data points (e.g. `5s`, `1m`, `5m`, `1h`). |

## Responses

Every error status returns the same body, described in [Errors](https://docs.truemarkets.co/developer-resources/errors.md).

### 200

CeFi price history data for the requested symbol

| Field | Type | Required | Description |
| --- | --- | --- | --- |
| `asset_id` | string (uuid) | no | Backend asset ID. Absent on the CeFi routes. |
| `symbol` | string | no | The asset symbol |
| `window` | string | no | The time window used for the query |
| `resolution` | string | no | The time resolution used for the query |
| `points` | array of object | no | List of price points |
| `points[].t` | string | no | ISO 8601 timestamp for the price point |
| `points[].price` | string | no | Price at this timestamp |

### 400

Bad request - invalid parameters

### 404

No price data found

### 500

Internal server error
