forexrateapi is the official Java 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.
Add the following dependency to your pom.xml:
<dependency>
<groupId>io.github.forexrateapi</groupId>
<artifactId>forexrateapi</artifactId>
<version>1.3.0</version>
</dependency>Add the following to your build.gradle:
implementation 'io.github.forexrateapi:forexrateapi:1.3.0'import io.github.forexrateapi.client.ForexRateApiClient;
String apiKey = "SET_YOUR_API_KEY_HERE";
ForexRateApiClient client = new ForexRateApiClient(apiKey);
// Or use EU server:
// ForexRateApiClient client = new ForexRateApiClient(apiKey, "eu");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 |
import io.github.forexrateapi.client.ForexRateApiClient;
// Default (US)
ForexRateApiClient client = new ForexRateApiClient("SET_YOUR_API_KEY_HERE");
// Europe
ForexRateApiClient client = new ForexRateApiClient("SET_YOUR_API_KEY_HERE", "eu");client.fetchSymbols();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");base<string> Optional. Pass in a base currency, defaults to USD.currencies<List<string>> Optional. Pass in a list of currencies to return values for.math<string> Optional. Pass in a math expression to apply to the rates.
client.fetchLive("USD", List.of("AUD", "CAD", "GBP", "JPY"), "");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 a list of currencies to return values for.
client.fetchHistorical("2024-02-05", "USD", List.of("AUD", "CAD", "GBP", "JPY"));base<string> Optional. Pass in a base currency, defaults to USD.currency<string> Required. Specify currency you would like to get hourly rates for.startDate<string> Required. Specify the start date using the formatYYYY-MM-DD.endDate<string> Required. Specify the end date using the formatYYYY-MM-DD.math<string> Optional. Pass in a math expression to apply to the rates.dateType<string> Optional. Pass in a date type, overrides date parameters if passed in.
client.hourly("USD", "EUR", "2024-02-05", "2024-02-05", "", "");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 get OHLC for specific date using formatYYYY-MM-DD.dateType<string> Optional. Pass in a date type, overrides date parameter if passed in.
client.fetchOHLC("USD", "EUR", "2024-02-05", "");fromCurrency<string> Optional. Pass in a base currency, defaults to USD.toCurrency<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("USD", "EUR", 100, "2024-02-05");startDate<string> Required. Specify the start date of your timeframe using the formatYYYY-MM-DD.endDate<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 a list of currencies to return values for.
client.timeframe("2024-02-05", "2024-02-06", "USD", List.of("AUD", "CAD", "GBP", "JPY"));startDate<string> Required. Specify the start date of your timeframe using the formatYYYY-MM-DD.endDate<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 a list of currencies to return values for.dateType<string> Optional. Pass in a date type, overrides date parameters if passed in.
client.change("2024-02-05", "2024-02-06", "USD", List.of("AUD", "CAD", "GBP", "JPY"), "");client.usage();-
How do I get an API Key?
Free API Keys are available here.
-
I want more information
Checkout our FAQs here.
For support, get in touch using this form.