---
title: "Get a single exchange rate pair"
method: GET
path: "/rate/{base}/{quote}"
---

# Get a single exchange rate pair

`GET /rate/{base}/{quote}`

Returns the blended exchange rate for a single currency pair. Without a date param, returns the latest rate. A same-currency pair returns the identity rate of 1.

## Path parameters

- `base` string, required
- `quote` string, required

## Query parameters

- `date` string, date
- `providers` string

## Response `200`

Exchange rate

- Rate
  - `date` string, date, required — The date of the rate
  - `base` string, required — Base currency code
  - `quote` string, required — Quote currency code
  - `rate` number, required — Exchange rate value
  - `providers` object[] — Per-provider rates for this pair. Present only when `expand=providers` is set. Each entry has the provider's observation date and published rate (rebased to the row's base). Entries with `excluded: true` did not contribute to the blended `rate` — either flagged as outliers by the consensus filter, or overridden by a currency peg. Omitted on synthesized peg rows where no provider published the quote.
    - `key` string, required — Provider key
    - `date` string, date, required — Provider observation date used for this entry
    - `rate` number, required — Provider's rate, rebased to the row's base
    - `excluded` boolean — Present and true when this entry did not contribute to the blended rate

## Other responses

- `404` — No data found
- `422` — Invalid request
- `503` — The request deadline expired before the response could be computed. Retry with a narrower request: filter with quotes, aggregate with group, or split the range into shorter requests.

## Changes

- **2026-07-22** (v2) `ebf82a6197fc` — 1 info
  - added the non-success response with the status `503`
- **2026-07-06** (v2) `0295842e0d54` — 1 info
  - added the required property `providers/items/date` to the response with the `200` status
- **2026-05-07** (v2) `4041a71e2865` — 1 breaking, 3 info
  - the `providers/items/` response's property type/format changed from `string`/`` to `object`/`` for status `200`
  - added the optional property `providers/items/excluded` to the response with the `200` status
  - added the required property `providers/items/key` to the response with the `200` status
  - added the required property `providers/items/rate` to the response with the `200` status
- **2026-04-28** (v2) `6f66aaf7e5a8` — 1 info
  - added the optional property `providers` to the response with the `200` status
- **2026-03-27** (v2) `5dfb5134ec4a` — 1 info
  - added the new optional `query` request parameter `date`

[Full history](https://skmtc.dev/lineofflight/apis/frankfurter-api/changes/rate/:base/:quote/get.md)

---

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