Overview
Frankfurter is a fully open and free API that requires no authentication. No API key, account, or signup is needed.
Setup guide
Get started
Simply make requests to https://api.frankfurter.dev/v2. The public API is immediately available without any registration or credentials.
For high-volume usage, consider self-hosting via Docker (see the deploy guide) or caching responses locally.
Add it to Ingest
In the Ingest UI under Connectors → Frankfurter Exchange Rates, no credentials are required. Ingest connects directly to the public API.
Mind the limits
Requests are rate-limited to 5 requests per second to prevent abuse. There are no monthly or daily quotas. HTTP 429, 500, 502, 503, and 504 status codes trigger automatic retries; 400, 401, 403, 404, and 422 are fatal and do not retry.
Supported streams
7 endpoints are available out of the box. Each endpoint syncs into its own Iceberg table in Snowflake.
| Endpoint | Description | Reference |
|---|---|---|
| get_currency get_currency | – | |
| get_currency_pair_rate get_currency_pair_rate | – | |
| get_historical_rates get_historical_rates | – | |
| get_latest_rates get_latest_rates | – | |
| get_time_series_rates get_time_series_rates | – | |
| list_currencies list_currencies | – | |
| list_providers list_providers | – |
Authentication
- Auth type
- None
- Provider docs
- frankfurter.dev ↗
Performance & limits
- Rate limit
- 5 requests per second