Overview
The authenticated conversion endpoint provides unlimited currency conversion with access to historical rates. Unlike the free conversion endpoint , this endpoint supports historical dates and has no rate limiting beyond your plan’s daily quota.
This endpoint requires authentication. Get your API key to start making requests.
Authentication
Bearer token with your API key: Bearer your_api_key_here
Query Parameters
Source currency code. All supported currencies are available for conversion, including cross-currency pairs (e.g., USD to EUR, JPY to GBP). Examples: AUD, USD, EUR, GBP, JPY
Target currency code (case-insensitive). Must be one of the supported currencies . Examples: USD, EUR, GBP, JPY TWI (Trade-Weighted Index) is not allowed for conversion and will return a 400 error.
Amount to convert. Must be a positive number. Examples: 100, 1500.50, 0.01
Historical date for conversion in YYYY-MM-DD format. If omitted, uses latest available rates. Examples: 2025-08-31, 2024-12-31, 2023-06-15 Historical dates: Free plan has no historical access. Starter plan has 30 days access. Professional/Business plans have full historical access.
Request
cURL - Latest Rates (AUD to USD)
cURL - Cross Currency (USD to EUR)
cURL - Historical Conversion
JavaScript
Python
PHP
curl "https://api.exchangeratesapi.com.au/convert?from=AUD&to=USD&amount=100" \
-H "Authorization: Bearer your_api_key_here"
Response
200 OK - Latest Conversion
200 OK - Historical Conversion
{
"success" : true ,
"query" : {
"from" : "AUD" ,
"to" : "USD" ,
"amount" : 100
},
"info" : {
"timestamp" : 1725148800 ,
"rate" : 0.643512
},
"date" : "2025-09-01" ,
"result" : 64.3512
}
Response Fields
Indicates if the request was successful
Echo of the conversion parameters from the request Source currency code from request
Target currency code from request
Amount to convert from request
Information about the exchange rate used Unix timestamp for the rate date (midnight UTC)
Exchange rate used for conversion (AUD per unit of foreign currency) with up to 6 decimal places
Date of the exchange rate used in YYYY-MM-DD format
Conversion result with 4 decimal places
Cache-Control: no-store - Response should not be cached
X-Request-Id: <uuid> - Unique request identifier for debugging
X-Data-Stale: true - Present only when serving fallback data (latest rates only)
X-RBA-Source-Date: YYYY-MM-DD - Present only when serving fallback data (latest rates only)
Error Responses
400 Bad Request - Missing Parameters
400 Bad Request - Invalid Amount
400 Bad Request - Invalid Currency
400 Bad Request - TWI Not Allowed
400 Bad Request - Unsupported Currency
400 Bad Request - Invalid Date Format
404 Not Found - Historical Data
401 Unauthorized
503 Service Unavailable
{
"success" : false ,
"error" : {
"code" : 400 ,
"type" : "bad_request" ,
"info" : "Missing required parameters: from, to, amount"
}
}
Rate Limits
This endpoint is subject to your plan’s monthly request limits:
Plan Monthly Requests Historical Access Rate Limiting Free 300 No historical data No per-endpoint limits Starter 5,000 Last 30 days No per-endpoint limits Professional 50,000 Full history (2018+) No per-endpoint limits Business 500,000 Full history (2018+) No per-endpoint limits
Unlike the free /convert endpoint (3/hour), authenticated conversion has no additional rate limiting beyond your plan’s monthly quota.
Current Limitations
Current API limitations:
TWI restriction : Trade-Weighted Index cannot be used for conversions
Date format : Historical dates must be in YYYY-MM-DD format
Date availability : Weekend and holiday dates (when RBA doesn’t publish) will return 404
Rate precision : Some currencies (IDR, VND) are provided as whole numbers by the RBA source data
Precision & Calculation
Rate precision : Exchange rates provided with up to 6 decimal places (varies by currency)
Currency-specific precision : IDR and VND are provided as whole numbers by the Reserve Bank of Australia
Result precision : Conversion results rounded to 4 decimal places
Calculation method : result = amount × rate using decimal-safe arithmetic
Storage format : Rates stored as micro-units (rate × 1e6) for precision where applicable
Rounding : Only applied at response boundary, not during calculations
Currency Precision Table
Currency Example Rate Decimal Places Source USD, EUR, GBP 0.6566 Up to 4 RBA JPY, KRW 97.26 Up to 2 RBA IDR, VND 10739 0 (whole numbers) RBA Other currencies Varies Up to 6 RBA
Use Cases
Invoice Processing : Convert AUD amounts to foreign currencies for international transactions
E-commerce : Real-time price conversion for international customers
Financial Analysis : Historical conversion analysis with exact dated rates
Accounting Integration : Automated conversion with official RBA rates
Compliance Reporting : ATO-compliant currency conversion using official rates
Contract Settlements : Apply exact historical rates to dated agreements
Comparison with Free Endpoint
Feature Free /convert Authenticated /convert Rate Limiting 3 requests/hour Plan-based monthly limits Historical Dates ❌ Not supported ✅ Full access (based on plan) Authentication ❌ Not required ✅ Required Usage Tracking ❌ IP-based only ✅ Account-based Error Details Basic Comprehensive Support Community Plan-based SLA
API key authentication using Bearer token
Source currency code
Three-letter currency code
Available options:
AUD,
USD,
EUR,
GBP,
JPY,
CNY,
KRW,
INR,
SGD,
NZD,
THB,
MYR,
IDR,
VND,
HKD,
PHP,
CAD,
CHF,
TWD,
TWI,
SDR
Target currency code
Three-letter currency code
Available options:
AUD,
USD,
EUR,
GBP,
JPY,
CNY,
KRW,
INR,
SGD,
NZD,
THB,
MYR,
IDR,
VND,
HKD,
PHP,
CAD,
CHF,
TWD,
TWI,
SDR
Historical date for conversion (YYYY-MM-DD). Requires authentication.
Exchange rate used for conversion with precision varying by currency (up to 6 decimal places for most, whole numbers for IDR/VND as provided by RBA)
Unix timestamp of the rate date
Indicates if this was a free (unauthenticated) request