Get exchange rates

Returns exchange rates blended across providers. Without date params, returns the latest rates. Each record is a single currency pair. The response includes an identity record for the base currency (base equals quote, rate 1), subject to the quotes filter like any other record. Daily date ranges of any length are served, including full history. Limit: requests using providers or expand=providers recompute the blend per date, so at daily granularity they return 422 for ranges longer than 5 years. With providers naming at most 5 providers, a quotes list of at most 5 currencies lifts the cap; without providers, expand=providers ranges compute every currency regardless of quotes, so aggregate with group=week or group=month, add providers, or split the range into shorter requests.

get/rates

Query parameters

datestring date
Example:2024-01-15

Specific date (YYYY-MM-DD). Cannot be combined with from/to.

fromstring date
Example:2024-01-01

Start of date range (YYYY-MM-DD)

tostring date
Example:2024-01-31

End of date range (YYYY-MM-DD). Defaults to today.

basestring
Example:USD

Base currency (default: EUR)

quotesstring
Example:USD,GBP,JPY

Comma-separated list of quote currencies to include

providersstring
Example:ECB,TCMB

Comma-separated list of data providers to include

group'week' | 'month'
Example:month

Downsample rates by time period. Only applies to date ranges.

expand'providers'
Example:providers

Comma-separated list of optional fields to include per record. Currently supports providers, which adds an array of { key, date, rate } objects per record showing each provider's individual observation date and rate. Outliers excluded from the blend (and providers whose rate was overridden by a currency peg) are flagged with excluded: true. The field is omitted on synthesized peg rows where no provider published the quote. In CSV output, the providers column is encoded as KEY:RATE pairs joined by |, with a trailing * on excluded entries (e.g. ECB:0.92|FED:1.50*).

Response

Exchange rates

datestring date required

The date of the rate

basestring required

Base currency code

quotestring required

Quote currency code

ratenumber required

Exchange rate value

Changes

Changed in 9 of the 29 revisions of this API.7717

    • added the non-success response with the status 503

      response-non-success-status-added

    • added the required property items/providers/items/date to the response with the 200 status

      response-required-property-added

  • v24041a71e286513See the full diff
    • the items/providers/items/ response's property type/format changed from string/ to object/ for status 200

      response-property-type-changed

    • added the optional property items/providers/items/excluded to the response with the 200 status

      response-optional-property-added

    • added the required property items/providers/items/key to the response with the 200 status

      response-required-property-added

    • added the required property items/providers/items/rate to the response with the 200 status

      response-required-property-added

    • added the new optional query request parameter expand

      new-optional-request-parameter

    • added the optional property items/providers to the response with the 200 status

      response-optional-property-added

    • the response's body type/format changed from object/ to string/ for status 200

      response-body-type-changed

    • removed the required property base from the response with the 200 status

      response-required-property-removed

    • removed the required property date from the response with the 200 status

      response-required-property-removed

    • removed the required property quote from the response with the 200 status

      response-required-property-removed

    • removed the required property rate from the response with the 200 status

      response-required-property-removed

    • added the media type application/x-ndjson for the response with the status 200

      response-media-type-added

    • added the new optional query request parameter group

      new-optional-request-parameter

    • added the non-success response with the status 422

      response-non-success-status-added

    • removed the non-success response with the status 400

      response-non-success-status-removed

    This revision also has 2 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

  • v24048c500327522See the full diff
    • deleted the query request parameter provider

      request-parameter-removed

    • deleted the query request parameter symbols

      request-parameter-removed

    • added the new optional query request parameter providers

      new-optional-request-parameter

    • added the new optional query request parameter quotes

      new-optional-request-parameter

  • v268c20d8729a6154See the full diff
    • removed the media type application/x-ndjson for the response with the status 200

      response-media-type-removed

    • deleted the query request parameter expand

      request-parameter-removed

    • deleted the query request parameter group

      request-parameter-removed

    • deleted the query request parameter providers

      request-parameter-removed

    • deleted the query request parameter quotes

      request-parameter-removed

    • removed the optional property items/providers from the response with the 200 status

      response-optional-property-removed

    • added the new optional query request parameter provider

      new-optional-request-parameter

    • added the new optional query request parameter symbols

      new-optional-request-parameter

    • added the non-success response with the status 400

      response-non-success-status-added

    • removed the non-success response with the status 422

      response-non-success-status-removed

    This revision also has 3 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog