/v1/cross
Implied cross rate from chained pairs
Try it live
10 free calls per day — no sign-up, no API key. Goes through the oanor gateway.
It works. Grab an API key and use it in your project.
Get an API keyCode snippets
curl "https://api.oanor.com/fxcross-api/v1/cross" \ -H "x-oanor-key: oanor_test_..."
await fetch("https://api.oanor.com/fxcross-api/v1/cross", {
headers: { "x-oanor-key": "oanor_test_..." }
});
$ch = curl_init("https://api.oanor.com/fxcross-api/v1/cross");
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-oanor-key: oanor_test_..."]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$out = curl_exec($ch);
import requests
requests.get(
"https://api.oanor.com/fxcross-api/v1/cross",
headers={"x-oanor-key": "oanor_test_..."}
)
Example response
A real response from this endpoint, captured by the latest health check.
{
"data": {
"base": "EUR",
"legs": [
{
"pair": "EUR/USD",
"rate": 1.08
},
{
"pair": "USD/JPY",
"rate": 150
}
],
"pair": "EUR/JPY",
"path": "EUR -> USD -> JPY",
"quote": "JPY",
"source": "FX-CROSS",
"arbitrage": true,
"discrepancy": 1,
"quoted_rate": 163,
"implied_rate": 162,
"inverse_rate": 0.0061728395,
"discrepancy_bps": 61.73
},
"meta": {
"timestamp": "2026-06-11T07:49:28.023Z",
"request_id": "51be726c-6bda-439a-bb9b-556acd55f42e"
},
"status": "ok",
"message": "Cross rate computed",
"success": true
}