CurrencyRateDocs
Docs › API reference › Rates/api/v1/rates/latest

GET /api/v1/rates/latest

Today's rates for every tracked currency against a base, or a subset via symbols.

Parameters

PARAM
TYPE
NOTES
base
3-letter code, optional
Defaults to EUR.
symbols
comma-separated codes, optional
Defaults to every currency.

Request

GET /api/v1/rates/latest?symbols=USD,GBP

Response

{
  "base": "EUR",
  "date": "2026-08-06",
  "rates": { "USD": "1.080000", "GBP": "0.850000" }
}

Errors

400 Bad Request

base or symbols failed validation, or referenced a currency the API does not track.

base must be a 3-letter currency code
{
  "statusCode": 400,
  "message": [
    "base must be a 3-letter currency code"
  ],
  "error": "Bad Request"
}
symbols must be a comma-separated list of 3-letter currency codes
{
  "statusCode": 400,
  "message": [
    "symbols must be a comma-separated list of 3-letter currency codes"
  ],
  "error": "Bad Request"
}
Unknown currency: XYZ
{
  "statusCode": 400,
  "message": "Unknown currency: XYZ",
  "error": "Bad Request"
}
401 Unauthorized

The Authorization header is missing, malformed, or the key is wrong.

Missing or malformed Authorization header
{
  "statusCode": 401,
  "message": "Missing or malformed Authorization header",
  "error": "Unauthorized"
}
Invalid API key
{
  "statusCode": 401,
  "message": "Invalid API key",
  "error": "Unauthorized"
}
404 Not Found

The ingestion job hasn't run yet, so there is nothing to serve.

No exchange rate data has been ingested yet
{
  "statusCode": 404,
  "message": "No exchange rate data has been ingested yet",
  "error": "Not Found"
}
429 Too Many Requests

Your plan's request quota for the current period is used up.

Rate limit exceeded: 1000 requests per 30-day period
{
  "statusCode": 429,
  "message": "Rate limit exceeded: 1000 requests per 30-day period"
}