ExchangeRate-API

App · Accounting & Finance · 6 actions

Convert currencies with ExchangeRate-API: convert an amount between any two of over 160 currencies, get the exchange rate between two currencies or every rate from one, at the latest rates or on a past date back to 1990, get a currency's name, symbol, country and flag, and check your plan's request quota. Needs a free ExchangeRate-API key; past dates and currency details need a paid plan.

Actions

ActionWhat it does
Convert an amountConvert an amount of money from one currency to another at ExchangeRate-API's latest rate, or at its rate on a past date, which needs a paid plan (Pro or above).
Get an exchange rateGet the exchange rate between two currencies, the latest one or the one on a past date, which needs a paid plan (Pro or above).
Get currency detailsGet a currency's name, symbol, country and flag, with its latest exchange rate from another currency.
Get every rate for a currencyGet the exchange rates from one currency to every currency ExchangeRate-API supports, or to just the ones you list, in one step.
Get request quotaGet how many requests your ExchangeRate-API plan allows a month, how many are left and when they renew.
List currenciesList every currency ExchangeRate-API has rates for, each with its three-letter code and name, in code order.

Convert an amount

Convert an amount of money from one currency to another at ExchangeRate-API's latest rate, or at its rate on a past date, which needs a paid plan (Pro or above). Comes back with the converted amount, the rate used and the conversion as a sentence.

Inputs

AmountamountnumberRequired
How much to convert, in the From currency, such as 100 or 19.99. A negative amount, such as a refund, converts too.
From currencyfrom_currencytextRequired
The currency to convert from, as a three-letter code such as USD. List currencies lists every code ExchangeRate-API supports.
To currencyto_currencytextRequired
The currency to convert into, as a three-letter code such as EUR.
Dateon_datedate
The day whose rate to use, back to 1990-01-01. Leave blank for the latest rate. A date needs a paid ExchangeRate-API plan (Pro or above).

Outputs

amountnumber
The amount that was converted, in the From currency
converted_amountnumber
The amount in the To currency, unrounded: round it for display, or use Summary
datetext
The day the rate is for, YYYY-MM-DD: the date asked for, or the day ExchangeRate-API last updated its latest rates (UTC)
from_currencytext
The From currency's three-letter code, e.g. USD
next_update_attext
When it will next update them, as an ISO 8601 UTC time. Empty for a rate on a past date
ratenumber
The rate used: how much of the To currency one unit of the From currency buys
summarytext
The conversion as a sentence, ready to show someone, e.g. 100 USD = 85.12 EUR
to_currencytext
The To currency's three-letter code, e.g. EUR
updated_attext
When ExchangeRate-API last updated its latest rates, as an ISO 8601 UTC time. Empty for a rate on a past date
Example output
{
  "amount": 100,
  "converted_amount": 88.152,
  "date": "2026-09-30",
  "from_currency": "USD",
  "next_update_at": "2026-10-01T00:00:01Z",
  "rate": 0.88152,
  "summary": "100 USD = 88.15 EUR",
  "to_currency": "EUR",
  "updated_at": "2026-09-30T00:00:01Z"
}

Get an exchange rate

Get the exchange rate between two currencies, the latest one or the one on a past date, which needs a paid plan (Pro or above). Comes back with the rate both ways round, so there is no need to divide one into the other.

Inputs

From currencyfrom_currencytextRequired
The currency to convert from, as a three-letter code such as USD. List currencies lists every code ExchangeRate-API supports.
To currencyto_currencytextRequired
The currency to convert into, as a three-letter code such as EUR.
Dateon_datedate
The day whose rate to use, back to 1990-01-01. Leave blank for the latest rate. A date needs a paid ExchangeRate-API plan (Pro or above).

Outputs

datetext
The day the rate is for, YYYY-MM-DD: the date asked for, or the day ExchangeRate-API last updated its latest rates (UTC)
from_currencytext
The From currency's three-letter code, e.g. USD
inverse_ratenumber
The rate the other way round: how much of the From currency one unit of the To currency buys
next_update_attext
When it will next update them, as an ISO 8601 UTC time. Empty for a rate on a past date
ratenumber
How much of the To currency one unit of the From currency buys
summarytext
The rate as a sentence, e.g. 1 USD = 0.8512 EUR
to_currencytext
The To currency's three-letter code, e.g. EUR
updated_attext
When ExchangeRate-API last updated its latest rates, as an ISO 8601 UTC time. Empty for a rate on a past date
Example output
{
  "date": "2026-09-30",
  "from_currency": "USD",
  "inverse_rate": 1.134404,
  "next_update_at": "2026-10-01T00:00:01Z",
  "rate": 0.88152,
  "summary": "1 USD = 0.88152 EUR",
  "to_currency": "EUR",
  "updated_at": "2026-09-30T00:00:01Z"
}

Get currency details

Get a currency's name, symbol, country and flag, with its latest exchange rate from another currency. Needs a paid ExchangeRate-API plan (Pro or above).

Inputs

CurrencycurrencytextRequired
The currency to describe, as a three-letter code such as JPY.
Base currencybase_currencytext
The currency to give the exchange rate from, as a three-letter code such as USD. Leave blank for the US dollar.

Outputs

base_currencytext
The currency the rate is from, e.g. USD
countrytext
The country or region that uses it, e.g. Japan or European Union
country_codetext
That country's or region's two-letter code, e.g. JP
currencytext
The currency's three-letter code, e.g. JPY
currency_nametext
Its name, e.g. Japanese Yen
currency_short_nametext
Its short name, e.g. Yen
flag_urltext
A link to a picture of its flag
next_update_attext
When it will next update them, as an ISO 8601 UTC time. Empty for a rate on a past date
ratenumber
How much of the currency one unit of the base currency buys, at the latest rate
symboltext
The symbol it is written with, e.g. ¥
updated_attext
When ExchangeRate-API last updated its latest rates, as an ISO 8601 UTC time. Empty for a rate on a past date
Example output
{
  "base_currency": "USD",
  "country": "Japan",
  "country_code": "JP",
  "currency": "JPY",
  "currency_name": "Japanese Yen",
  "currency_short_name": "Yen",
  "flag_url": "https://www.exchangerate-api.com/img/docs/JP.gif",
  "next_update_at": "2026-10-01T00:00:01Z",
  "rate": 157.389062,
  "symbol": "\u00a5",
  "updated_at": "2026-09-30T00:00:01Z"
}

Get every rate for a currency

Get the exchange rates from one currency to every currency ExchangeRate-API supports, or to just the ones you list, in one step. The latest rates, or those on a past date back to 1990, which needs a paid plan (Pro or above).

Inputs

Base currencybase_currencytext
The currency every rate is from: each rate is how much of another currency one unit of it buys. A three-letter code such as USD; leave blank for the US dollar.
Only these currenciescurrenciestext
Only the rates to these currencies, as three-letter codes separated by commas or spaces, such as EUR, GBP, JPY, in the order to list them. Leave blank for every currency.
Dateon_datedate
The day to get the rates for, back to 1990-01-01. Leave blank for the latest rates. A date needs a paid ExchangeRate-API plan (Pro or above), and before 2021 has rates for 35 major currencies only.

Outputs

base_currencytext
The currency every rate is from, e.g. USD
currency_countnumber
How many rates there are
datetext
The day the rates are for, YYYY-MM-DD: the date asked for, or the day ExchangeRate-API last updated its latest rates (UTC)
next_update_attext
When it will next update them, as an ISO 8601 UTC time. Empty for a rate on a past date
rateslist
One entry per currency: the base currency first, at 1, then the rest in code order, or in the order they were asked for
rates_by_currencyobject
The same rates keyed by currency code, for looking one up without searching the list
updated_attext
When ExchangeRate-API last updated its latest rates, as an ISO 8601 UTC time. Empty for a rate on a past date
Example output
{
  "base_currency": "USD",
  "currency_count": 3,
  "date": "2026-09-30",
  "next_update_at": "2026-10-01T00:00:01Z",
  "rates": [
    {
      "currency": "EUR",
      "rate": 0.88152
    },
    {
      "currency": "GBP",
      "rate": 0.755961
    },
    {
      "currency": "JPY",
      "rate": 157.389062
    }
  ],
  "rates_by_currency": {
    "EUR": 0.88152,
    "GBP": 0.755961,
    "JPY": 157.389062
  },
  "updated_at": "2026-09-30T00:00:01Z"
}

Get request quota

Get how many requests your ExchangeRate-API plan allows a month, how many are left and when they renew. The check counts as a request itself, and its figures can lag 5 to 60 minutes behind.

Inputs

None.

Outputs

next_refresh_datetext
The next date the requests renew, YYYY-MM-DD, worked out from the renewal day
percent_usednumber
The share used, as a percentage, e.g. 14.6 for 14.6%
plan_quotanumber
How many requests the plan allows a month
refresh_day_of_monthnumber
The day of the month the requests renew: the day the plan started
requests_remainingnumber
How many are left this month. The count lags the requests by 5 to 60 minutes
requests_usednumber
How many have been used this month
Example output
{
  "next_refresh_date": "2026-10-17",
  "percent_used": 14.6,
  "plan_quota": 30000,
  "refresh_day_of_month": 17,
  "requests_remaining": 25623,
  "requests_used": 4377
}

List currencies

List every currency ExchangeRate-API has rates for, each with its three-letter code and name, in code order.

Inputs

None.

Outputs

codeslist
Just the codes, e.g. to check whether one is supported before using it
currencieslist
Every supported currency, in code order
currency_countnumber
How many currencies there are
Example output
{
  "codes": [
    "AED",
    "AFN",
    "ALL",
    "AMD",
    "ANG",
    "AOA",
    "ARS",
    "AUD",
    "AWG",
    "AZN",
    "BAM",
    "BBD"
  ],
  "currencies": [
    {
      "code": "AED",
      "name": "UAE Dirham"
    },
    {
      "code": "AFN",
      "name": "Afghan Afghani"
    },
    {
      "code": "ALL",
      "name": "Albanian Lek"
    },
    {
      "code": "AMD",
      "name": "Armenian Dram"
    },
    {
      "code": "ANG",
      "name": "Netherlands Antillian Guilder"
    },
    {
      "code": "AOA",
      "name": "Angolan Kwanza"
    },
    {
      "code": "ARS",
      "name": "Argentine Peso"
    },
    {
      "code": "AUD",
      "name": "Australian Dollar"
    },
    {
      "code": "AWG",
      "name": "Aruban Florin"
    },
    {
      "code": "AZN",
      "name": "Azerbaijani Manat"
    },
    {
      "code": "BAM",
      "name": "Bosnia and Herzegovina Convertible Mark"
    },
    {
      "code": "BBD",
      "name": "Barbados Dollar"
    }
  ],
  "currency_count": 12
}

On this page