# 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. 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) or csv (date_from,date_to,base_currency,currency,start_rate,end_rate,change,change_pct) |
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.
{
"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
},
"GBP": {
"code": "GBP",
"start_rate": 0.7988,
"end_rate": 0.7302,
"change": -0.0686,
"change_pct": -8.5879
}
}
}