# Курси обміну

> Публічний endpoint для отримання поточних курсів обміну між фіатними валютами та криптовалютами.

Endpoint курсів обміну повертає матрицю поточних курсів обміну між усіма підтримуваними валютами — як фіатними (USD, EUR, RUB тощо), так і криптовалютами (BTC, ETH, USDT тощо).

> **INFO:** Це **публічний endpoint**. Він не вимагає автентифікації та не вимагає заголовків `project` чи `sign`.

## Отримати курси обміну

`GET /v1/exchange-rates`

### Приклад відповіді

```json
{
  "state": 0,
  "result": {
    "USD": {
      "USD": "1.00000000",
      "EUR": "0.86090000",
      "RUB": "78.32190000",
      "BTC": "0.00001055",
      "USDT": "1.00000000"
    },
    "BTC": {
      "USD": "94786.69000000",
      "EUR": "81589.12000000",
      "ETH": "29.02345678",
      "USDT": "94786.69000000"
    }
  }
}
```

### Як читати результат

Відповідь — це вкладений об'єкт: `result[FROM][TO]` — це курс обміну для 1 одиниці `FROM` на `TO`.

- `result["USD"]["RUB"] = 78.32` означає 1 USD = 78.32 RUB
- `result["BTC"]["USD"] = 94786.69` означає 1 BTC = $94,786.69

## Приклад на PHP

```php
<?php
$ch = curl_init('https://api.2328.io/api/v1/exchange-rates');
curl_setopt_array($ch, [ CURLOPT_RETURNTRANSFER => true ]);

$response = json_decode(curl_exec($ch), true);

if ($response['state'] === 0) {
    $rates = $response['result'];
    $rubAmount = bcmul(100, $rates['USD']['RUB'], 2);
    echo "100 USD = {$rubAmount} RUB\n";
}
```

## Приклад на cURL

```bash
curl https://api.2328.io/api/v1/exchange-rates
```

> **WARNING:** Курси оновлюються часто, але не гарантуються для торгівлі. Завжди отримуйте курси заново безпосередньо перед створенням платежу або виплати, щоб мінімізувати прослизання.

## Курси криптопар

`GET /v1/prices`

Публічний фід курсів між криптовалютами. Авторизація не потрібна.

Повертає всі підтримувані пари — прямі пари coin→USDT і синтетичні крос-пари через USDT (напр. TRX→TON). Курс вже включає платформенну надбавку.

### Приклад відповіді

```json
[
  {"from": "BTC",  "to": "USDT", "price": "105234.5"},
  {"from": "ETH",  "to": "USDT", "price": "3812.08"},
  {"from": "USDT", "to": "USDC", "price": "1.0012"},
  {"from": "TRX",  "to": "TON",  "price": "0.000834"}
]
```

### Поля відповіді

| Field | Type | Description |
|-------|------|-------------|
| `from` | string | Вихідна валюта |
| `to` | string | Цільова валюта |
| `price` | string | Курс: скільки одиниць `to` за 1 одиницю `from` |

### Приклад cURL

```bash
curl https://api.2328.io/api/v1/prices
```