Public access to ten central banks' policy rates in one schema is live. The central bank interest rates API provides current observations and history on every plan, including Free, with live access. REST routes and MCP tools use the same policy rate schema.
What you can read
Coverage includes the official policy rate of the ten banks listed below. Each observation identifies the country, authority, currency and instrument. Rates are decimal strings in percent per annum, and negative values are allowed. A point observation has rate and qualifier; a range has lower_bound and upper_bound.
Banks and instruments
| Bank | Country code to send | Instrument | History from |
|---|---|---|---|
| European Central Bank | Any supported euro member code | Deposit facility rate | 1 January 1999 or the member's later euro adoption |
| Federal Reserve | USA | Federal funds target, later target range | 25 June 2003 |
| Bank of Canada | CAN | Overnight rate target | 21 April 2009 |
| Czech National Bank | CZE | Two-week repo rate | 8 December 1995 |
| Bank Negara Malaysia | MYS | Overnight policy rate | 2004 |
| Reserve Bank of Australia | AUS | Cash rate target, including early ranges | 23 January 1990 |
| Sveriges Riksbank | SWE | Policy rate, previously repo rate | 1 June 1994 |
| Norges Bank | NOR | Sight deposit rate | 1 January 1991 |
| Danmarks Nationalbank | DNK | Certificate-of-deposit rate | 1 April 1992 |
| Banco Central do Brasil | BRA | Selic target | 5 March 1999 |
Supported euro member codes are DEU, FRA, IRL, NLD, PRT, SVN, EST, LVA, LTU and HRV. Each returns the same ECB instrument, with history from that member's euro adoption. Send country codes in uppercase.
Get the current rate
Omit date to request the latest source observation at or before today UTC. A future effective date never replaces the current rate early. These requests describe the scheduled public contract.
curl -H "Authorization: Bearer $NARWHAL_API_KEY" \
"https://api.narwhalapi.com/v1/economics/USA/central-bank/policy-rate"The illustrative USA response uses the saved range example effective 11 December 2025. The Canada example illustrates a point response; its value and date are illustrative.
{
"country": "USA",
"authority": "federal_reserve",
"currency": "USD",
"instrument": "federal_funds_target_range",
"rate_type": "range",
"lower_bound": "3.50",
"upper_bound": "3.75",
"unit": "percent",
"effective_on": "2025-12-11"
}{
"country": "CAN",
"authority": "bank_of_canada",
"currency": "CAD",
"instrument": "overnight_rate_target",
"rate_type": "point",
"rate": "2.00",
"qualifier": "exact",
"unit": "percent",
"observed_on": "2025-12-11"
}Get a rate on a past date
Pass date=YYYY-MM-DD for the latest observation at or before that date. Missing days are not synthesised. Every observation has exactly one of effective_on or observed_on; announced_on may also be present. Preserve that distinction when you compare countries or record rate changes.
curl -H "Authorization: Bearer $NARWHAL_API_KEY" \
"https://api.narwhalapi.com/v1/economics/USA/central-bank/policy-rate?date=2025-12-11"Get the history
Use start, end and limit on the history route. The default limit is 100, with an allowed range of 1 to 1000. Responses contain country, observations in oldest-first order and next_cursor. Pass the returned cursor as cursor for the next page.
curl -H "Authorization: Bearer $NARWHAL_API_KEY" \
"https://api.narwhalapi.com/v1/economics/USA/central-bank/policy-rate/history?start=2025-12-11&end=2026-10-27&limit=100"A cursor pins publications for 24 hours. Expired cursors or withdrawn rights return 409. Invalid input returns 400, unavailable data returns 404, and unsafe source data returns 503. Each request consumes one metered unit. See error documentation for error handling.
Official reserves
The scheduled reserves route is /v1/economics/{country}/central-bank/reserves, with optional period=YYYY-MM. Coverage includes AUS, MYS, the ten euro members listed above and CZE through the ECB series. Australia reports AUD, Malaysia MYR, and the ECB series EUR. Responses preserve the published currency and scale, either units or millions; values are never converted. Missing months remain missing. released_on is the publisher's file update date.
Sources
Narwhal normalised the Bank of Canada format. ECB modifications are limited to format. Values are served exactly as published. No bank endorsement is implied.
- Source: Bank of Canada. This information is available free of charge on the Bank of Canada website: https://www.bankofcanada.ca.
- Source: European Central Bank (ECB). This information is available free of charge on the ECB website: https://www.ecb.europa.eu.
- Source: Reserve Bank of Australia 2026. This information is available free of charge on the RBA website: https://www.rba.gov.au.
- Source: Board of Governors of the Federal Reserve System
- Source: Bank Negara Malaysia. Data and information are subject to Terms of Use for BNM Datasets. https://www.bnm.gov.my/terms-of-use-bnm-datasets
- Source: Sveriges Riksbank, with the date of the data.
- Source: the CNB
- Source: Norges Bank
- Source: Danmarks Nationalbank
- Source: Statistics Denmark - StatBank.dk/dnrentd
- Source: Banco Central do Brasil (SGS 432), Open Data Commons Open Database License (ODbL).
What is a policy rate?
A central bank sets a policy rate to steer short-term interest rates. The instrument differs by bank: the ECB stream reports the deposit facility rate, while the US stream reports the federal funds target range.
Is the central bank interest rate data free?
Access is available on every plan, including Free, with live data. Each request consumes one metered unit. The underlying data is available free at the banks' websites, subject to the source terms and notices above.
Published .
Next steps
- API referencePolicy rate API reference
- How-toTrack central bank rate changes
- How-toCompare policy rates across countries
- Federal funds rate
- PricingPlans and pricing
Create a free key and call the API from your own code. Get a free API key
