ForexRateAPI
forexrateapi is the official Python API wrapper for ForexRateAPI.com. This allows you to quickly integrate our foreign exchange rate API and currency conversion API into your application. Check https://forexrateapi.com documentation for more information.
Installation
Install the latest release with:
pip install forexrateapi
Usage
from forexrateapi.client import Client
api_key = 'SET_YOUR_API_KEY_HERE'
client = Client(api_key)
# Or use EU server:
# client = Client(api_key, server='eu')
Server Regions
ForexRateAPI provides two regional endpoints. Choose the one closest to your servers for optimal performance.
| Region | Base URL |
|---|---|
| United States (default) | https://api.forexrateapi.com/v1 |
| Europe | https://api-eu.forexrateapi.com/v1 |
# Default (US)
client = Client('SET_YOUR_API_KEY_HERE')
# Europe
client = Client('SET_YOUR_API_KEY_HERE', server='eu')
Documentation
fetchSymbols()
client.fetchSymbols()
setServer(server)
server<string> Pass'eu'to use the EU server (api-eu.forexrateapi.com), or'us'for the US server. Defaults to US if not specified.
client.setServer('eu')
fetchLive(base, currencies, math)
base<string> Optional. Pass in a base currency, defaults to USD.currencies<List<string>> Optional. Pass in an list of currencies to return values for.math<string> Optional. Pass in a math expression to apply to the rates.
client.fetchLive(base='USD', currencies=['AUD', 'CAD', 'GBP', 'JPY'])
fetchHistorical(date, base, currencies)
date<string> Required. Pass in a string with formatYYYY-MM-DDbase<string> Optional. Pass in a base currency, defaults to USD.currencies<List<string>> Optional. Pass in an list of currencies to return values for.
client.fetchHistorical(date='2024-02-05', base='USD', currencies=['AUD', 'CAD', 'GBP', 'JPY'])
hourly(base, currency, start_date, end_date, math, date_type)
base<string> Optional. Pass in a base currency, defaults to USD.currency<string> Required. Specify currency you would like to get hourly rates for.start_date<string> Required. Specify the start date using the formatYYYY-MM-DD.end_date<string> Required. Specify the end date using the formatYYYY-MM-DD.math<string> Optional. Pass in a math expression to apply to the rates.date_type<string> Optional. Pass in a date type, overrides date parameters if passed in.
client.hourly(base='USD', currency='EUR', start_date='2024-02-05', end_date='2024-02-05')
ohlc(base, currency, date, date_type)
base<string> Optional. Pass in a base currency, defaults to USD.currency<string> Required. Specify currency you would like to get OHLC for.date<string> Required. Specify date to use historical midpoint value for conversion with formatYYYY-MM-DD. Otherwise, it will use live exchange rate date if value not passed in.date_type<string> Optional. Pass in a date type.
client.ohlc(base='USD', currency='EUR', date='2024-02-05', date_type=None)
convert(from_currency, to_currency, amount, date)
from_currency<string> Optional. Pass in a base currency, defaults to USD.to_currency<string> Required. Specify currency you would like to convert to.amount<number> Required. The amount to convert.date<string> Optional. Specify date to use historical midpoint value for conversion with formatYYYY-MM-DD. Otherwise, it will use live exchange rate date if value not passed in.
client.convert(from_currency='USD', to_currency='EUR', amount=100, date='2024-02-05')
timeframe(start_date, end_date, base, currencies)
start_date<string> Required. Specify the start date of your timeframe using the formatYYYY-MM-DD.end_date<string> Required. Specify the end date of your timeframe using the formatYYYY-MM-DD.base<string> Optional. Pass in a base currency, defaults to USD.currencies<List<string>> Optional. Pass in an list of currencies to return values for.
client.timeframe(start_date='2024-02-05', end_date='2024-02-06', base='USD', currencies=['AUD', 'CAD', 'GBP', 'JPY'])
change(start_date, end_date, base, currencies, date_type)
start_date<string> Required. Specify the start date of your timeframe using the formatYYYY-MM-DD.end_date<string> Required. Specify the end date of your timeframe using the formatYYYY-MM-DD.base<string> Optional. Pass in a base currency, defaults to USD.currencies<List<string>> Optional. Pass in an list of currencies to return values for.date_type<string> Optional. Pass in a date type, overrides date parameters if passed in.
client.change(start_date='2024-02-05', end_date='2024-02-06', base='USD', currencies=['AUD', 'CAD', 'GBP', 'JPY'])
usage()
client.usage()
Link
FAQ
-
How do I get an API Key?
Free API Keys are available here.
-
I want more information
Checkout our FAQs here.
Support
For support, get in touch using this form.
Metadata
Release files for forexrateapi 1.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| forexrateapi-1.3.0.tar.gz | 4.2 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| forexrateapi-1.3.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 8.7 kB
Release files / forexrateapi-1.3.0.tar.gz
| Download URL | forexrateapi-1.3.0.tar.gz |
|---|---|
| Size | 4.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f1f934966135c91c281c0183d0fd330a3b969a763fa82c4887012070c97485d3
|
|
BLAKE2b-256 checksum How to use checksums |
50ebe0b2da5c626b5251bd90c5d1c91b80638300ebb95496b97f862533d92a9f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.2
|
Release files / forexrateapi-1.3.0-py3-none-any.whl
| Download URL | forexrateapi-1.3.0-py3-none-any.whl |
|---|---|
| Size | 4.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
2c02842c701b7226e159a0ff96d5ad3d95f872bed0925fdce0a6b6e6ff300ca0
|
|
BLAKE2b-256 checksum How to use checksums |
1669da2ebe7cc8e3a138eb9d27d8304aa7b19db6c7af32443738ce0eadb59936
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.14.2
|