# Подключение

> Ключ API, адрес запросов и баланс.

## <a id="key"></a>Ключ доступа

Ключ создаётся в кабинете в разделе «Ключи доступа» после подтверждения почты. Секрет показывается один раз: храните его на своём сервере, в браузер и в открытый код не кладите.

[Открыть ключи доступа](https://cyhub.ai/cabinet/keys)

Ключ потерян или мог утечь: отзовите его в кабинете и создайте новый. Отозванный ключ перестаёт работать сразу.

## <a id="address"></a>Адрес и заголовки

```
https://api.cyhub.ai/v1
```

В каждом запросе заголовок Authorization. Тело запросов это JSON в UTF-8 с Content-Type: application/json.

```http
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
```

Язык текстов в ответах (сообщения об ошибках, описания моделей): заголовок Accept-Language: ru или en, либо ?lang=ru в адресе. Без них русский.

## <a id="balance"></a>Баланс

```bash
curl "https://api.cyhub.ai/v1/me" \
  -H "Authorization: Bearer YOUR_API_KEY"
```

```python
import requests

API = "https://api.cyhub.ai/v1"
HEADERS = {"Authorization": "Bearer YOUR_API_KEY"}

response = requests.get(f"{API}/me", headers=HEADERS, timeout=30)
response.raise_for_status()
me = response.json()
for wallet in me["wallets"]:
    print(wallet["currency"], wallet["available_minor"])
```

В ответе id (номер кабинета), platform, key (каким ключом сделан запрос) и wallets. У кошелька balance_minor (всё на балансе), reserved_minor (удержано задачами в работе) и available_minor (доступно новым задачам). Суммы в минорных единицах: 15000 это 150 ₽.

Баланс общий с Telegram и MAX, если кабинеты связаны. Пополнение сейчас в RUB, на странице «Баланс» в кабинете.

[Пополнить баланс](https://cyhub.ai/balance)
