# Fluctuation

Returns, for every requested currency, its rate at the end of date_from and of date_to (UTC) and how much it changed in between, in absolute terms and in percent, together with the high, low and average of the daily closes in the span. One request replaces two historical lookups and the arithmetic.

Request Method: GET
Request URL: https://api.fxapi.com/v1/fluctuation

# Request Parameters

Parameter Type Mandatory Description
apikey string ️ Your API Key
date_from string ️ First day, format YYYY-MM-DD, 1999-01-01 or later
date_to string ️ Last day, format YYYY-MM-DD, on or after date_from and yesterday at the latest
base_currency string The base currency all rates are expressed in
Default: USD
currencies string A list of comma-separated currency codes (EUR,GBP,JPY)
By default all currencies are returned
type string Filter by type: fiat, metal, crypto
format string json (default), csv (date_from,date_to,base_currency,currency,start_rate,end_rate,change,change_pct) or xlsx
xlsx gives the same table as an Excel workbook, see Excel downloads (opens new window)

A request costs one request of your quota. If no rates are stored for one of the two days, the endpoint returns a 404.

# Sample Request

curl -G https://api.fxapi.com/v1/fluctuation \
    -d date_from=2026-01-01 \
    -d date_to=2026-06-30 \
    -d currencies=EUR,GBP \
    -H "apikey: YOUR-API-KEY"

# Sample Response

change is end_rate - start_rate; change_pct is the change in percent of start_rate, rounded to 4 decimals. high, low and average are the highest, lowest and average daily close from date_from to date_to (the average as /average (opens new window) computes it for the whole span). They are null when the two days are more than 1830 days apart or no rates are stored in the span, and they are part of the JSON response only: the CSV keeps its columns.

{
    "meta": {
        "base_currency": "USD",
        "date_from": "2026-01-01",
        "date_to": "2026-06-30"
    },
    "data": {
        "EUR": {
            "code": "EUR",
            "start_rate": 0.9654,
            "end_rate": 0.8771,
            "change": -0.0883,
            "change_pct": -9.1465,
            "high": 0.9712,
            "low": 0.8695,
            "average": 0.9183
        },
        "GBP": {
            "code": "GBP",
            "start_rate": 0.7988,
            "end_rate": 0.7302,
            "change": -0.0686,
            "change_pct": -8.5879,
            "high": 0.8051,
            "low": 0.7244,
            "average": 0.7653
        }
    }
}