Skip to content
GET /v1/matrix

Full 8x8 cross-rate grid + daily-change heatmap + strongest/weakest

Try it live

10 free calls per day — no sign-up, no API key. Goes through the oanor gateway.

Custom headers (optional)
api.oanor.com/fxheatmap-api

It works. Grab an API key and use it in your project.

Get an API key

Code snippets

curl "https://api.oanor.com/fxheatmap-api/v1/matrix" \
  -H "x-oanor-key: oanor_test_..."
await fetch("https://api.oanor.com/fxheatmap-api/v1/matrix", {
  headers: { "x-oanor-key": "oanor_test_..." }
});
$ch = curl_init("https://api.oanor.com/fxheatmap-api/v1/matrix");
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/fxheatmap-api/v1/matrix",
    headers={"x-oanor-key": "oanor_test_..."}
)

Example response

A real response from this endpoint, captured by the latest health check.

{
    "data": {
        "note": "rates[BASE][QUOTE] is units of QUOTE per 1 BASE (e.g. rates.EUR.USD is EUR/USD). changes_pct is the move on the day for each cell. strongest/weakest rank currencies by their average change against the basket. Crosses are derived from each currency's USD value; daily change is from the legs' last two daily closes.",
        "rates": {
            "AUD": {
                "AUD": 1,
                "CAD": 0.98527,
                "CHF": 0.56066,
                "EUR": 0.60848,
                "GBP": 0.52523,
                "JPY": 112.824,
                "NZD": 1.20781,
                "USD": 0.70467
            },
            "CAD": {
                "AUD": 1.01495,
                "CAD": 1,
                "CHF": 0.56904,
                "EUR": 0.61758,
                "GBP": 0.53308,
                "JPY": 114.51,
                "NZD": 1.22586,
                "USD": 0.71521
            },
            "CHF": {
                "AUD": 1.78362,
                "CAD": 1.75735,
                "CHF": 1,
                "EUR": 1.0853,
                "GBP": 0.9368,
                "JPY": 201.234,
                "NZD": 2.15427,
                "USD": 1.25687
            },
            "EUR": {
                "AUD": 1.64343,
                "CAD": 1.61922,
                "CHF": 0.9214,
                "EUR": 1,
                "GBP": 0.86317,
                "JPY": 185.417,
                "NZD": 1.98494,
                "USD": 1.15808
            },
            "GBP": {
                "AUD": 1.90394,
                "CAD": 1.8759,
                "CHF": 1.06746,
                "EUR": 1.15852,
                "GBP": 1,
                "JPY": 214.809,
                "NZD": 2.29959,
                "USD": 1.34165
            },
            "JPY": {
                "AUD": 0.00886,
                "CAD": 0.00873,
                "CHF": 0.00497,
                "EUR": 0.00539,
                "GBP": 0.00466,
                "JPY": 1,
                "NZD": 0.01071,
                "USD": 0.00625
            },
            "NZD": {
                "AUD": 0.82795,
                "CAD": 0.81575,
                "CHF": 0.46419,
                "EUR": 0.50379,
                "GBP": 0.43486,
                "JPY": 93.412,
                "NZD": 1,
                "USD": 0.58343
            },
            "USD": {
                "AUD": 1.4191,
                "CAD": 1.3982,
                "CHF": 0.79563,
                "EUR": 0.8635,
                "GBP": 0.74535,
                "JPY": 160.108,
                "NZD": 1.714,
                "USD": 1
            }
        },
        "source": "Yahoo Finance",
        "weakest": [
            {
                "currency": "CAD",
                "avg_change_pct": -0.68
            },
            {
                "currency": "USD",
                "avg_change_pct": -0.4
            },
            {
                "currency": "JPY",
                "avg_change_pct": -0.1
 
…