---
title: "Range Endpoint"
method: GET
path: "/v1/range"
---

# Range Endpoint

`GET /v1/range`

## Query parameters

- `symbols` string, nullable
- `start_date` string, nullable
- `end_date` string, nullable
- `base` string, nullable
- `cursor` string, nullable
- `format` 'json' | 'csv' | 'parquet'

## Response `200`

Successful Response

- RangeResponse
  - `result` string
  - `base` string, required
  - `start_date` string, required
  - `end_date` string, required
  - `data` RangeRow[], required
    - `date` string, required
    - `rates` object, required
    - `source` 'live' | 'ecb_daily' | 'fred_daily' | 'banxico_daily' | 'dof_daily', required — Public `source` enum — wire contract (D2). NO `cached` value (cache lives in X-Cache). `banxico_daily`/`dof_daily` (added 2026-07-26) are the two official Mexican peso reference rates — both fetched from Banxico's SIE API (verified against banxico.org.mx), the only machine-readable source for either figure. They are Tier-C, `active=False` in the pair registry (never enter the USD-pivot rebase engine — pricing._legs skips inactive pairs) and are served only via the dedicated `/v1/rate/usd-mxn-banxico` / `/v1/rate/usd-mxn-dof` branch, never through /latest, /convert, or /range. See docs/DECISIONS.md D2/D9.
    - `is_forward_filled` boolean, required
    - `derived_symbols` string[], required
  - `next_cursor` string, nullable
  - `has_more` boolean
  - `notice` string, required

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `422` — Unprocessable Entity
- `429` — Too Many Requests
- `500` — Internal Server Error
- `503` — Service Unavailable

---

[API](https://skmtc.net/exchangerate/apis/exchangerate-dev.md) · [All operations](https://skmtc.net/exchangerate/apis/exchangerate-dev/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/exchangerate/exchangerate-dev/versions/6ab03101f1ce/schema)
