> 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/get-started/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-подпись запросов](/get-started/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` достигнут и нужно освободить место.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.iexexchanger.com/get-started/exchanger-api/poluchenie-dostupa-i-klyuchei/client-get-api-key.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
