Atlas / Categories / Currency Exchange / Frankfurter Currency Exchange — entry 014 of 18
Frankfurter Verified Jul 2026
Frankfurter aggregates and republishes daily reference rates from roughly 84 central banks, not solely the ECB, covering 200+ currencies with history back to 1948, and supports current, dated, and time-series conversion queries, including filtering to a specific source institution. It's free with no API key and no request quotas beyond abuse-prevention rate limiting, returns JSON by default plus CSV and streaming NDJSON, and now also ships an official self-hosting Docker image and an MCP server for AI-agent integration. The project's site and docs moved from frankfurter.app to frankfurter.dev, with the old domain now redirecting.
no-key historical time-series self-hostable
Authentication None required Call it straight away — no key, no signup.
HTTPS Supported Traffic is encrypted in transit.
CORS Enabled Callable directly from browser JavaScript.
Pricing Free No paid tier — free for the documented use case.
Formats JSON, CSV, NDJSON Responses can be requested as JSON or CSV or NDJSON.
GreatAPIs Score Score 100 out of 100
Authentication 25/25 No authentication required
Pricing 20/20 Free to use
Docs 20/20 Machine-readable spec file bundled
Formats 15/15 Supports 3 response formats
Freshness 20/20 Verified within 6 months
Embed this badge <a href="https://greatapis.com/api/frankfurter/"><img src="https://greatapis.com/badge/frankfurter.svg" alt="Scored 100 on greatapis.com"></a>
Auth quickstart No key needed — call it now. Stored key No key stored Clear key
Your key is stored only in this browser (localStorage) and sent directly to the API — never to greatapis.
Endpoints currencies 1 GET /currenciesGet available currencies Parameters Name In Required Type scopequery no string providersquery no string
Responses Status Description Schema 200Available currencies —
currency 1 GET /currency/{code}Get a single currency Parameters Name In Required Type codepath yes string
Responses Status Description Schema 200Currency details CurrencyDetail404— —
providers 1 GET /providersGet available data providers Responses Status Description Schema 200Available providers —
rate 1 GET /rate/{base}/{quote}Get a single exchange rate pair Parameters Name In Required Type basepath yes string quotepath yes string datequery no string providersquery no string
Responses Status Description Schema 200Exchange rate Rate404— — 422— — 503— —
rates 1 GET /ratesGet exchange rates Parameters Name In Required Type datequery no string fromquery no string toquery no string basequery no string quotesquery no string providersquery no string groupquery no string expandquery no string
Responses Status Description Schema 200Exchange rates — 404— — 422— — 503— —
Developer reference Base URL https://api.frankfurter.dev/v2
Rate limit No fixed quota — abuse-prevention rate limiting only
Key endpoints GET /rates GET /rate/{base}/{quote}
Availability Uptime 100%
Median latency 530 ms
Last check Up · 200 · Sep 2026
5 checks since Aug 2026. A person runs this check by hand, not an automated monitor.