All datasets

Daily exchange rates

The daily average exchange rates for various foreign currencies (either currently or historically published) expressed as one unit of the foreign currency converted into Canadian dollars. These rates are typically published once each business day by 16:30 (ET). All Bank of Canada exchange rates are indicative rates only, obtained from averages of aggregated price quotes from financial institutions.

Source: Bank of Canada Valet58,096 rowsUpdated: 9/21/2026
exchange-ratesforexcurrencycanadafinance

Quality

100

Attribution

Bank of Canada (Valet web service)

Schema

ColumnTypeDescription
datestringDate of the observation, as published by the Bank of Canada (the observation's 'd' field).
series_idstringValet series name (for example 'BD.CDN.2YR.DQ.YLD'); the unique identifier of the series in the Bank of Canada Valet API.
series_labelstringHuman-readable series label published by the Bank of Canada in the series detail.
valuefloatObserved value for the series and date (the 'v' field of the Valet observation record). Units follow the series definition in the dataset description. Missing observations are null.

Sample rows

dateseries_idseries_labelvalue
2017-01-03FXAUDCADAUD/CAD0.9702
2017-01-04FXAUDCADAUD/CAD0.9678
2017-01-05FXAUDCADAUD/CAD0.9708
2017-01-06FXAUDCADAUD/CAD0.9668
2017-01-09FXAUDCADAUD/CAD0.9728

Use with an LLM

Point any LLM at the metadata endpoint — the documentation above is machine-readable too (JSON-LD + Croissant).

cURL

curl "https://datazimuts.com/v1/datasets/boc_valet/boc_daily_exchange_rates" | jq '{title, rows, columns_count, license}'

Python

import requests

ds = requests.get("https://datazimuts.com/v1/datasets/boc_valet/boc_daily_exchange_rates").json()
print(ds["title"], ds["rows"], "rows")

# Sample rows for an LLM context window
for row in ds.get("sample_rows", [])[:5]:
    print(row)

API endpoint: https://datazimuts.com/v1/datasets/boc_valet/boc_daily_exchange_rates

Tip: fetch /llms.txt for the full machine-readable catalog.