Migration Guide — Open Exchange Rates → fastFOREX API
Migrate from Open Exchange Rates in under an hour
Both APIs are JSON over HTTPS with near-identical concepts. Most migrations come down to a base URL, an auth parameter, and two renamed response fields. This guide covers every endpoint, the exact response differences, and how to benchmark us side by side before you cut over.
Draft guide — endpoint mapping to be validated against both APIs' current docs before publishing.
Four steps, most of them small.
Get a free API key
Sign up for the 7-day trial — no credit card. Full access to your plan's endpoints from minute one.
Swap base URL & auth
openexchangerates.org/api → api.fastforex.io, and ?app_id= becomes ?api_key=. That's the whole auth story.
Rename two fields
Their "rates" is our "results"; their unix "timestamp" is our ISO-8601 "updated". Parsers rarely need more.
Benchmark, then cut over
Run both APIs in parallel during the trial, compare latency and values, and switch when the numbers convince you.
Endpoint mapping
Every endpoint, translated.
One row per call your code makes today. Parameters keep their meaning — only names and paths change.
Purpose
Open Exchange Rates
fastFOREX API
Latest rates (all currencies)
GET /api/latest.json
GET /fetch-all?from=USD
Latest rates (specific symbols)
GET /api/latest.json?symbols=EUR,GBP
GET /fetch-multi?from=USD&to=EUR,GBP
Single pair
GET /api/latest.json?symbols=EUR
GET /fetch-one?from=USD&to=EUR
Historical (single date)
GET /api/historical/2020-01-01.json
GET /historical?date=2020-01-01
Time-series (date range)
GET /api/time-series.json (Enterprise+)
GET /time-series?start=…&end=… (every plan)
Convert an amount
GET /api/convert/100/USD/EUR (Unlimited only)
GET /convert?from=USD&to=EUR&amount=100 (every plan)
List currencies
GET /api/currencies.json
GET /currencies
Account usage
GET /api/usage.json
GET /usage
Authentication
?app_id=YOUR_ID
?api_key=YOUR_KEY
Response shapes
Before and after.
In your code, the change is typically one line: data.rates becomes data.results. If you consumed their unix timestamp, parse our ISO-8601 "updated" instead — no timezone guesswork.
$ curl "https://openexchangerates.org/api/
latest.json?app_id=YOUR_ID&symbols=EUR,GBP"
{
"timestamp": 1752999540,
"base": "USD",
"rates": {
"EUR": 0.874883,
"GBP": 0.742914
}
}
$ curl "https://api.fastforex.io/
fetch-multi?api_key=YOUR_KEY&from=USD&to=EUR,GBP"
{
"base": "USD",
"results": {
"EUR": 0.874883,
"GBP": 0.742914
},
"updated": "2026-07-20T09:39:00Z"
}
Watch for these differences.
The honest list — everything that behaves differently, including the ones that work in your favour.
Two field renames
"rates" → "results" and unix "timestamp" → ISO-8601 "updated". These are the only response-shape changes for latest and historical calls.
Base currency freedom
OXR's free plan locks USD as base. Every fastFOREX API plan supports any base — if you built client-side cross-rate maths to work around that, you can delete it.
Time-series metering flips in your favour
OXR counts one request per day of data returned (a year ≈ 365 requests). fastFOREX API counts one request per call. Remove any batching or throttling built around their metering.
Check currency coverage
OXR lists ~195 codes including some alternative rates; fastFOREX API covers 170+ physical currencies plus 500+ crypto. Diff /currencies against your usage before cutover.
Prove it to yourself
Benchmark both during your trial.
Don't take our 21ms average on faith. Run both APIs from your own infrastructure with this snippet, compare the numbers, and cut over when the data says so.
$ for i in 1 2 3 4 5; do
> curl -s -o /dev/null -w "fastforex %{time_total}s\n" \
> "https://api.fastforex.io/fetch-all?from=USD&api_key=KEY"
> curl -s -o /dev/null -w "oxr %{time_total}s\n" \
> "https://openexchangerates.org/api/latest.json?app_id=ID"
> done
fastforex 0.021s
oxr 0.183s
fastforex 0.019s
oxr 0.177s
Switching support included.
Our team answers 365 days a year and has guided many migrations from this exact provider. Need longer than 7 days to validate? Ask about extending your trial.
Migration questions.
What teams ask when leaving Open Exchange Rates.
Can I run both APIs in parallel?
Will historical values match what OXR gave me?
What about my stored unix timestamps?
I use time-series heavily. What changes?
Can you help with the migration?
Something specific to your setup?
Send us your current integration details and we'll map it for you.
An hour of work for 60x fresher data.
Get your free API key and run fastFOREX API alongside your current provider today.