> For the complete documentation index, see [llms.txt](https://docs.iexexchanger.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.iexexchanger.com/exchanger-api/poluchenie-dostupa-i-klyuchei/client-get-api-key.md).

# Как клиенту получить API-ключ

API-ключ создает клиент в личном кабинете. Администратор только разрешает доступ к API и задает права. Сам Bearer-токен и HMAC-секрет видит только клиент в момент создания ключа.

Сохраните секреты сразу. После обновления страницы они больше не показываются.

## 1. Открыть меню профиля

Войдите в аккаунт обменника. В правой верхней части сайта нажмите на иконку профиля и выберите:

```
Настройки
```

Для API нужен раздел `Настройки`. Остальные пункты меню, например `Мои заявки` или `Реферальная программа`, к созданию ключа не относятся.

## 2. Открыть вкладку API

На странице настроек откройте вкладку:

```
API
```

На вкладке находится блок:

```
API
Управляйте ключами публичного API и HMAC-подписью запросов.
```

Ниже отображается счетчик ключей:

```
API-ключи
Использовано 9 / 10
```

Если лимит достигнут, появится предупреждение:

```
Использовано 10 / 10
Достигнут лимит API-ключей. Максимум ключей на аккаунт: 10.
```

При лимите `10 / 10` новый ключ создать нельзя. Удалите старый ключ или попросите администратора увеличить лимит.

## 3. Нажать “Создать ключ”

Нажмите кнопку:

```
Создать ключ
```

После создания появится блок:

```
Новый ключ создан
Сохраните Bearer-токен и HMAC-секрет сейчас. После обновления страницы останутся только безопасные данные ключа.
```

Скопируйте оба значения до перезагрузки страницы.

## 4. Скопировать Bearer-токен

В блоке “Новый ключ создан” скопируйте:

```
Bearer-токен
```

Bearer-токен отправляется в каждом приватном API-запросе:

```http
Authorization: Bearer YOUR_API_KEY
```

Пример:

```bash
curl -sS https://example.com/api/v3/private/health/client \
  -H "Accept: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY"
```

## 5. Скопировать HMAC-секрет

В том же блоке скопируйте:

```
HMAC-секрет
```

HMAC-секрет нужен для подписи запросов. Алгоритм отображается рядом с секретом:

```
Алгоритм подписи: hmac-sha256-v1
```

Если в карточке ключа есть статус `HMAC включён`, разработчик должен отправлять HMAC headers:

```http
X-Api-Timestamp: 1782190000
X-Api-Nonce: req-20260623-001
X-Api-Signature: sha256=...
```

Подробно: [HMAC-подпись запросов](/exchanger-api/kak-ustroen-api/hmac-signature.md).

## 6. Проверить карточку ключа

После создания ключ появится в списке. В карточке видно:

| Поле                    | Что означает                                   |
| ----------------------- | ---------------------------------------------- |
| Название ключа          | Понятное имя ключа, например `production-crm`. |
| ID ключа                | Внутренний номер для поиска и поддержки.       |
| Белый список IP         | IP-адреса, с которых разрешены запросы.        |
| Ключ включён            | Тумблер активности ключа.                      |
| Создан                  | Дата создания ключа.                           |
| Последнее использование | Когда ключ последний раз применялся.           |
| Scopes                  | Какие действия разрешены ключу.                |
| `HMAC включён`          | Запросы должны подписываться HMAC.             |
| `Активен`               | Ключ включен и может работать.                 |
| `Удалить`               | Удаляет ключ.                                  |

## 7. Настроить белый список IP

Если интеграция работает с backend-сервера, в поле `Белый список IP` укажите IP, с которых API будет принимать запросы:

```
127.0.0.1
192.168.1.0/24
203.0.113.10
```

Для production нужен публичный IP сервера. Если запросы идут через NAT, proxy или load balancer, укажите внешний IP, который видит обменник.

Если белый список заполнен, запросы с других IP будут отклонены.

## 8. Включить или выключить ключ

В карточке есть тумблер:

```
Ключ включён
```

Если выключить ключ, запросы с этим Bearer-токеном перестанут работать. Это удобно, если нужно временно остановить интеграцию без удаления ключа.

После изменения названия, IP или активности нажмите:

```
Сохранить ключ
```

## 9. Передать данные разработчику

Передайте разработчику:

```
Base URL: https://example.com/api/v3
Bearer-токен: ...
HMAC-секрет: ...
Алгоритм: hmac-sha256-v1
Список scopes
IP allow-list, если он включен
```

Передавайте эти данные через password manager, vault, зашифрованное сообщение или временную защищенную ссылку.

Нельзя отправлять ключи в открытом виде в email, чат, GitHub issue, скриншотах или задачах.

## 10. Если секреты не сохранили

Если страница обновилась, а Bearer-токен или HMAC-секрет не были сохранены, посмотреть их повторно нельзя.

Что делать:

1. Удалить старый ключ или выключить его.
2. Создать новый ключ.
3. Сразу скопировать Bearer-токен и HMAC-секрет.
4. Передать новые данные разработчику.
5. Проверить `GET /private/health/client`.

## 11. Когда удалять ключ

Удалите ключ, когда:

* интеграция больше не используется;
* секрет случайно попал в переписку или лог;
* подрядчик больше не должен иметь доступ;
* создан новый ключ после ротации;
* лимит `10 / 10` достигнут и нужно освободить место.
