# Central Bank of Uzbekistan API
> Live official exchange-rate data from the Central Bank of the Republic of Uzbekistan (CBU), the central bank of Uzbekistan, for the Uzbek soum (UZS) — one of the widest official rate lists of any central bank (over 70 currencies), each with its daily change: the CBU official rate for every published currency (normalised to one unit) with the day's change, a single currency's soum-per-unit rate and inverse plus daily change, a currency's official rate on a specific past date, and currency conversion between any two published currencies (including UZS) cross-computed through the soum.

## Authentication
All requests require your oanor API key in the `x-oanor-key` header. Get one at https://www.oanor.com/developer/keys.

```bash
curl -H "x-oanor-key: oanor_live_…" "https://api.oanor.com/cbu-api/..."
```

## Pricing
- **Free** (Free) — 14,000 calls/Mo, 3 req/s
- **Basic** ($6/Mo) — 175,000 calls/Mo, 8 req/s
- **Pro** ($20/Mo) — 1,070,000 calls/Mo, 15 req/s
- **Scale** ($48/Mo) — 5,700,000 calls/Mo, 35 req/s

## Endpoints

### Rates

#### `GET /v1/rate` — One currency soum-per-unit rate, inverse and daily change

**Parameters:**
- `currency` (query, required, string) — 3-letter ISO currency code Example: `USD`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/cbu-api/v1/rate?currency=USD"
```

**Response:**
```json
{
    "data": {
        "base": "UZS",
        "date": "2026-06-10",
        "name": "US Dollar",
        "source": "Central Bank of Uzbekistan",
        "nominal": 1,
        "currency": "USD",
        "code_numeric": 840,
        "daily_change": 21.82,
        "unit_per_uzs": 8.30895e-5,
        "uzs_per_unit": 12035.22
    },
    "meta": {
        "timestamp": "2026-06-10T14:01:27.793Z",
        "request_id": "38bdd863-83b5-42a2-9fb8-882843565ac3"
    },
    "status": "ok",
    "message": "Rate retrieved successfully",
    "success": true
}
```

#### `GET /v1/rates` — CBU official rate for every currency vs the soum

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/cbu-api/v1/rates"
```

**Response:**
```json
{
    "data": {
        "base": "UZS",
        "date": "2026-06-10",
        "count": 74,
        "rates": [
            {
                "date": "2026-06-10",
                "name": "UAE Dirham",
                "rate": 3276.58,
                "nominal": 1,
                "currency": "AED",
                "code_numeric": 784,
                "daily_change": 5.58,
                "uzs_per_unit": 3276.58
            },
            {
                "date": "2026-06-10",
                "name": "AF Afghani",
                "rate": 187.38,
                "nominal": 1,
                "currency": "AFN",
                "code_numeric": 971,
                "daily_change": -0.95,
                "uzs_per_unit": 187.38
            },
            {
                "date": "2026-06-10",
                "name": "Armenian Dram",
                "rate": 32.66,
                "nominal": 1,
                "currency": "AMD",
                "code_numeric": 51,
                "daily_change": 0.06,
                "uzs_per_unit": 32.66
            },
            {
                "date": "2026-06-10",
                "name": "Argentine Peso",
                "rate": 8.32,
                "nominal": 1,
                "currency": "ARS",
                "code_numeric": 32,
                "daily_change": -0.02,
                "uzs_per_unit": 8.32
            },
            {
                "date": "2026-06-10",
                "name": "Australian Dollar",
                "rate": 848
…(truncated, see openapi.json for full schema)
```

### History

#### `GET /v1/history` — A currency official rate on a specific past date

**Parameters:**
- `currency` (query, required, string) — 3-letter ISO currency code Example: `USD`
- `date` (query, required, string) — Date YYYY-MM-DD Example: `2026-05-15`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/cbu-api/v1/history?currency=USD&date=2026-05-15"
```

**Response:**
```json
{
    "data": {
        "base": "UZS",
        "date": "2026-05-15",
        "name": "US Dollar",
        "source": "Central Bank of Uzbekistan",
        "nominal": 1,
        "currency": "USD",
        "daily_change": -98.06,
        "unit_per_uzs": 8.35048e-5,
        "uzs_per_unit": 11975.36
    },
    "meta": {
        "timestamp": "2026-06-10T14:01:28.411Z",
        "request_id": "9d1c2266-6767-4b79-97c8-568906d3127b"
    },
    "status": "ok",
    "message": "History retrieved successfully",
    "success": true
}
```

### Convert

#### `GET /v1/convert` — Convert an amount between two currencies at CBU rates

**Parameters:**
- `from` (query, required, string) — Source currency Example: `USD`
- `to` (query, required, string) — Target currency Example: `EUR`
- `amount` (query, optional, string) — Amount to convert Example: `100`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/cbu-api/v1/convert?from=USD&to=EUR&amount=100"
```

**Response:**
```json
{
    "data": {
        "to": "EUR",
        "date": "2026-06-10",
        "from": "USD",
        "rate": 0.86490235,
        "amount": 100,
        "result": 86.490235,
        "source": "Central Bank of Uzbekistan",
        "uzs_per_to": 13915.12,
        "uzs_per_from": 12035.22
    },
    "meta": {
        "timestamp": "2026-06-10T14:01:28.662Z",
        "request_id": "027bf6de-5bdc-4cac-9d41-a7bf7f632fd1"
    },
    "status": "ok",
    "message": "Conversion completed successfully",
    "success": true
}
```

### Meta

#### `GET /v1/meta` — Service metadata and endpoint catalog

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/cbu-api/v1/meta"
```

**Response:**
```json
{
    "data": {
        "source": "Central Bank of Uzbekistan API (cbu.uz, live)",
        "service": "cbu-api",
        "usd_uzs": 12035.22,
        "endpoints": {
            "GET /v1/meta": "This document.",
            "GET /v1/rate": "One currency's official rate, soum-per-unit and inverse, plus daily change (currency=USD).",
            "GET /v1/rates": "The CBU official rate for every currency vs the soum, with daily change.",
            "GET /v1/convert": "Convert an amount between two currencies at CBU rates (from=USD, to=EUR, amount=100).",
            "GET /v1/history": "A currency's official rate on a specific past date (currency=USD, date=2026-05-15)."
        },
        "description": "Live official exchange-rate data from the Central Bank of the Republic of Uzbekistan (CBU), the central bank of Uzbekistan, for the Uzbek soum (UZS), via its public API — one of the widest official rate lists of any central bank (over 70 currencies), each with its daily change. The rates endpoint returns the CBU's official rate for every published currency against the soum, normalised to one unit, with the day's change; the rate endpoint returns a single currency's official rate (soum-per-unit and the inverse) plus the daily change; the history endpoint returns a currency's official rate on a specific past date; the convert endpoint converts an amount between any two published currencies (including UZS) at the CBU's official rates, cross-computed through the soum. Live, no key,
…(truncated, see openapi.json for full schema)
```


---
Marketplace page: https://www.oanor.com/api/cbu-api
OpenAPI spec: https://www.oanor.com/api/cbu-api/openapi.json
