Skip to main content

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()

Link


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'])

Link


fetchHistorical(date, base, currencies)

  • date <string> Required. Pass in a string with format YYYY-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.fetchHistorical(date='2024-02-05', base='USD', currencies=['AUD', 'CAD', 'GBP', 'JPY'])

Link


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 format YYYY-MM-DD.
  • end_date <string> Required. Specify the end date using the format YYYY-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')

Link


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 format YYYY-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)

Link


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 format YYYY-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')

Link


timeframe(start_date, end_date, base, currencies)

  • start_date <string> Required. Specify the start date of your timeframe using the format YYYY-MM-DD.
  • end_date <string> Required. Specify the end date of your timeframe using the format YYYY-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'])

Link


change(start_date, end_date, base, currencies, date_type)

  • start_date <string> Required. Specify the start date of your timeframe using the format YYYY-MM-DD.
  • end_date <string> Required. Specify the end date of your timeframe using the format YYYY-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'])

Link


usage()

client.usage()

Official documentation


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)

Source distribution for forexrateapi 1.3.0
File Size Uploaded
forexrateapi-1.3.0.tar.gz 4.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for forexrateapi 1.3.0
File Interpreter ABI Platform
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

Release history Release notifications | RSS feed

This release

1.3.0 This release

2 release files

1.1.2

2 release files

1.0.4

2 release files

1.0.3

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page