# Taux de change

> Endpoint public pour récupérer les taux de change actuels entre fiat et cryptomonnaies.

L'endpoint des taux de change renvoie une matrice des taux de change actuels entre toutes les devises prises en charge — fiat (USD, EUR, RUB, etc.) et crypto (BTC, ETH, USDT, etc.).

> **INFO:** Il s'agit d'un **endpoint public**. Il ne nécessite pas d'authentification ni les headers `project` ou `sign`.

## Récupérer les taux de change

`GET /v1/exchange-rates`

### Exemple de réponse

```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"
    }
  }
}
```

### Comment lire le résultat

La réponse est un objet imbriqué : `result[FROM][TO]` est le taux de change pour 1 unité de `FROM` vers `TO`.

- `result["USD"]["RUB"] = 78.32` signifie 1 USD = 78,32 RUB
- `result["BTC"]["USD"] = 94786.69` signifie 1 BTC = 94 786,69 $

## Exemple 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";
}
```

## Exemple cURL

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

> **WARNING:** Les taux sont mis à jour fréquemment mais ne sont pas garantis pour le trading. Récupérez toujours les taux juste avant de créer un paiement ou un retrait afin de minimiser le slippage.