> ## Documentation Index
> Fetch the complete documentation index at: https://docs.financialdatapi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# FX reference rates

> Official daily foreign-exchange reference rates (e.g. the ECB euro fixings), normalized into the same observation model as everything else.

Financial Data API publishes official daily **FX reference rates** — the published fixings central banks and statistical agencies release once per business day, such as the European Central Bank's euro reference rates. They live under the `fx` category as the canonical indicator `fx_reference_rate` and flow through the same observation envelope, time model, and provenance chain as macro data.

<Note>
  These are official **reference rates**, not raw real-time market price-tick FX. Tick-level vendor FX is redistribution-blocked and deliberately not part of the product. A reference rate is one authoritative value per currency pair per day — ideal for valuation, reporting, and point-in-time conversion, not for intraday trading.
</Note>

## What data is available

<CardGroup cols={1}>
  <Card title="fx_reference_rate" icon="money-bill-transfer">
    Daily reference exchange rate for a currency pair. Sourced from the official publisher (for example the European Central Bank). Each observation identifies the pair in its metadata and provenance. Unit: an exchange rate (units of one currency per unit of the other).
  </Card>
</CardGroup>

The set of published pairs is live; resolve it from the data rather than hardcoding. The ECB reference set, for example, quotes the euro against major currencies (USD, GBP, JPY, CHF, CAD, AUD, NZD, SEK, NOK, and more).

## Query the latest reference rates

<CodeGroup>
  ```bash cURL theme={"theme":"css-variables"}
  curl "https://api.financialdatapi.com/observations/latest?indicator_id=fx_reference_rate" \
    -H "x-api-key: $FINANCIALDATA_API_KEY"
  ```

  ```typescript TypeScript theme={"theme":"css-variables"}
  import { FinancialDataApiClient } from "@financialdatapi/client";

  const client = new FinancialDataApiClient({ apiKey: process.env.FINANCIALDATA_API_KEY });

  const { data } = await client.getLatestObservations({ indicator_id: "fx_reference_rate" });
  console.log(data);
  ```
</CodeGroup>

For history, page through `GET /observations?indicator_id=fx_reference_rate` and follow the cursor. See [Pagination](/concepts/pagination).

## Response shape

Each row is a standard public observation. The fields most relevant to FX:

<ResponseField name="indicatorId" type="string">Always `fx_reference_rate`.</ResponseField>
<ResponseField name="category" type="string">`fx`.</ResponseField>
<ResponseField name="actual" type="number">The reference rate for the pair.</ResponseField>
<ResponseField name="provider" type="string">The publishing institution, for example `European Central Bank`.</ResponseField>
<ResponseField name="periodEnd" type="string">The rate date.</ResponseField>
<ResponseField name="sourceUrl" type="string">Link to the originating release.</ResponseField>

<Info>
  The currency pair is carried in the observation metadata and provenance. Use `GET /provenance/observations/{observationId}` for the full auditable chain behind any rate.
</Info>

## Related

<Columns cols={3}>
  <Card title="Interest rates" icon="percent" href="/apis/interest-rates">
    Policy rates, bond yields, and curve spreads.
  </Card>

  <Card title="Time model" icon="clock" href="/concepts/time-model">
    Knowledge time vs. period, and point-in-time queries.
  </Card>
</Columns>
