Skip to main content

Currency Conversion API

Convert an amount from one currency to one or multiple target currencies using current exchange rates.

Endpoint

GET /convert

Parameters

ParameterTypeRequiredDescription
baseCurrencystringYesSource currency code - e.g., USD
targetCurrenciesstringYesComma-separated target currencies - e.g., EUR,GBP,JPY
amountnumberNoAmount to convert. Defaults to 1 if omitted.

Request Example

curl -X GET "https://api.openfxrates.com/convert?baseCurrency=USD&targetCurrencies=EUR,GBP,JPY&amount=100" \
-H "X-API-Key: your-api-key-here"

Response Schema

{
"status": "SUCCESS",
"data": {
"base_currency": {
"currency": "USD",
"amount": 100
},
"target_currencies": [
{
"currency": "EUR",
"rate": 0.861166,
"amount": 86.1166
},
{
"currency": "GBP",
"rate": 0.746252,
"amount": 74.6252
}
],
"timestamp": "2026-01-22T11:33:57.919Z",
"meta_data": {
"monthly_requests": 100000,
"remaining_requests": 99999,
"reset_time": null
}
}
}

Response Fields

FieldTypeDescription
statusstringRequest status (SUCCESS or FAILED)
dataobjectResponse data container
base_currencyobjectSource currency information
base_currency.currencystringSource currency code
base_currency.amountnumberOriginal amount to convert
target_currenciesarrayArray of conversion results
target_currencies[].currencystringTarget currency code
target_currencies[].ratenumberExchange rate from base to target
target_currencies[].amountnumberConverted amount
timestampstringISO 8601 timestamp of conversion
meta_dataobjectAPI usage information
meta_data.monthly_requestsnumberTotal monthly request limit
meta_data.remaining_requestsnumberRemaining requests for the month
meta_data.reset_timestring/nullWhen the limit resets

Status Codes

StatusDescription
200Success - Conversion completed
400Bad Request - Invalid parameters
401Unauthorized - Invalid or missing API key
429Too Many Requests - Rate limit exceeded

Examples

Convert $100 USD to EUR, GBP, JPY

curl -X GET "https://api.openfxrates.com/convert?baseCurrency=USD&targetCurrencies=EUR,GBP,JPY&amount=100" \
-H "X-API-Key: your-api-key"

Response:

{
"status": "SUCCESS",
"data": {
"base_currency": {
"currency": "USD",
"amount": 100
},
"target_currencies": [
{
"currency": "EUR",
"rate": 0.861166,
"amount": 86.1166
},
{
"currency": "GBP",
"rate": 0.746252,
"amount": 74.6252
},
{
"currency": "JPY",
"rate": 149.823,
"amount": 14982.3
}
],
"timestamp": "2026-01-22T11:33:57.919Z",
"meta_data": {
"monthly_requests": 100000,
"remaining_requests": 99999,
"reset_time": null
}
}
}

Convert 1 EUR to multiple currencies

curl -X GET "https://api.openfxrates.com/convert?baseCurrency=EUR&targetCurrencies=USD,GBP,CHF,AUD" \
-H "X-API-Key: your-api-key"

Use Cases

  • 🛍️ E-commerce - Display prices in customer's currency
  • ✈️ Travel - Show converted prices for hotels and flights
  • 💳 Payment Processing - Convert payment amounts
  • 📱 Mobile Apps - Real-time currency conversion for users

Precision

  • Decimal Places: 2-4 depending on currency
  • Rounding: Follows standard banking rules
  • Accuracy: Based on current market rates

Rate Limiting

Rate limit information is included in every response under meta_data:

  • monthly_requests - Total requests allowed per month
  • remaining_requests - Requests remaining this month
  • reset_time - When the limit resets (if applicable)

Performance Tips

  1. Cache rates for short periods if doing multiple conversions
  2. Use specific target currencies instead of converting to all
  3. Batch multiple conversions in single requests when possible

See Also