---
title: "Live and historical market rates (Wise-compatible)"
method: GET
path: "/api/v1/rates"
tags: ["Market Rates"]
---

# Live and historical market rates (Wise-compatible)

`GET /api/v1/rates`

## Request

- Base URL: `https://allratestoday.com`
- URL: `https://allratestoday.com/api/v1/rates`
- Auth: one of:
  - HTTP bearer
  - API key in cookie `art_session`

The main authenticated rates endpoint, parameter-compatible with the Wise `/v1/rates` API. Refreshed roughly every 60 seconds (responses cached 60s). Omit `target` for all rates from `source`; pass comma-separated targets (e.g. `target=EUR,GBP,JPY`) for multiple pairs in one call; use `time` for a point-in-time rate or `from`/`to` (+ optional `group`) for a series.

## Query parameters

- `source` string
- `target` string
- `time` string, date-time
- `from` string, date
- `to` string, date
- `group` 'minute' | 'hour' | 'day'
- `format` 'json' | 'csv' | 'xml' | 'xlsx'
- `amount` number
- `api_key` string

## Response `200`

Array of rate objects

- object[]
  - `rate` number, double
  - `source` string
  - `target` string
  - `time` string, date-time

## Other responses

- `400`: Invalid or missing parameters
- `401`: Authentication required — provide an API key via `Authorization: Bearer art_live_...` (free keys at https://allratestoday.com/register)
- `429`: Monthly request limit exceeded (X-Monthly-Limit / X-Monthly-Used / X-Monthly-Resets headers included)
- `500`: Server or upstream error

---

[API](https://skmtc.dev/allratestoday/apis/allratestoday-exchange-rate-central-bank-rates-api.md) · [All operations](https://skmtc.dev/allratestoday/apis/allratestoday-exchange-rate-central-bank-rates-api/llms.txt) · [OpenAPI document](https://skmtc.dev/allratestoday/apis/allratestoday-exchange-rate-central-bank-rates-api/revisions/c2e58e9b4da4?raw)
