# Latest official rate table for a bank

**GET /api/v1/central-bank/{bank}/latest**

The bank's most recent published table (e.g. `ecb`, `boc`, `cbsl`, `banxico`). Pass `source`+`target` to get a single pair — cross-computed via the bank's home currency when not directly published and flagged `derived`. Available on all plans.


## Servers
- Production: https://allratestoday.com (Production)


## Authentication methods
- Bearer auth
- Session cookie


## Parameters

### Path parameters

- **bank** (string)
  Source code from /api/v1/central-banks (e.g. ecb, boc, cbsl, banxico, ustreasury)


### Query parameters

- **source** (string)
  Pair mode: source currency, 3-letter code (requires target)

- **target** (string)
  Pair mode: target currency, 3-letter code (requires source)

- **type** (string)
  Rate type to return when the pair is requested with source+target on a two-sided table (buy/sell banks such as TCMB, BCB, BI, CBN). Values are the bank's own type labels as shown in its full table, e.g. buy or sell. Without it the pair resolves reference, mid, import, buy, sell in that order and rate_type says which side was used. A type the bank does not publish returns 404 listing the available types.

- **format** (string)
  Response format (default json). csv is UTF-8 with a BOM; xlsx is a real Excel workbook with typed dates and numbers; xml mirrors the JSON fields.



## Responses
### 200
Latest published table (or single resolved pair when source+target given)

#### Body: application/json (object)
- **bank** (string)

- **name** (string)

- **rate_date** (string(date))

- **rates** (array[object])

- **disclaimer** (string)


### 400
Invalid or missing parameters

#### Body: application/json (object)
- **error** (string)
  Error message

- **hint** (string)
  Optional remediation hint


### 401
Authentication required — provide an API key via `Authorization: Bearer art_live_...` (free keys at https://allratestoday.com/register)

#### Body: application/json (object)
- **error** (string)
  Error message

- **hint** (string)
  Optional remediation hint


### 404
Unknown bank, or the bank does not publish the requested pair

#### Body: application/json (object)
- **error** (string)
  Error message

- **hint** (string)
  Optional remediation hint


### 429
Monthly request limit exceeded (X-Monthly-Limit / X-Monthly-Used / X-Monthly-Resets headers included)

#### Body: application/json (object)
- **error** (string)

- **used** (integer)

- **limit** (integer)

- **plan** (string)

- **resets_at** (string(date-time))

- **upgrade_url** (string)


### 503
No rates ingested yet for this bank

#### Body: application/json (object)
- **error** (string)
  Error message

- **hint** (string)
  Optional remediation hint



[Powered by Bump.sh](https://bump.sh)
