Аутентификация
API-ключи sk-tunnel-*, заголовок Authorization и параметры ключей
Аутентификация
Все запросы к API (кроме /healthz) требуют API-ключ в заголовке
Authorization:
Authorization: Bearer sk-tunnel-...Формат ключа
sk-tunnel-<64 шестнадцатеричных символа> — случайные 32 байта. Ключ
показывается один раз при создании; в системе хранится только его хэш,
поэтому восстановить утерянный ключ невозможно — создайте новый.
Параметры ключа
При создании ключа в личном кабинете можно задать:
- название — чтобы различать ключи (например,
production,staging); - бюджет в ₽ с авто-сбросом: день, неделя или месяц. При исчерпании
бюджета запросы этим ключом получают
403; - срок жизни — от 15 минут до бессрочного. После истечения срока ключ
получает
401; - список разрешённых моделей — запросы к остальным моделям получают
403; - настройки приватности — можно отключить сохранение тел запросов и ответов в логах (останутся только метаданные: модель, токены, стоимость, latency).
Создание ключа возможно только при положительном балансе.
Информация о ключе
Текущие параметры и остаток бюджета доступны прямо через API:
curl https://api.nikagateway.ru/v1/key \
-H "Authorization: Bearer sk-tunnel-..."Ответ содержит название ключа, бюджет (изначальный / потраченный / остаток / дата сброса) и срок действия.
Баланс аккаунта
curl https://api.nikagateway.ru/v1/balance \
-H "Authorization: Bearer sk-tunnel-..."Возвращает текущий баланс аккаунта в рублях и информацию о бюджете ключа, с которым выполнен запрос.
Безопасность
- Не вставляйте ключ в клиентский код, который попадает в браузер или публичный репозиторий, — используйте переменные окружения.
- На production и staging заводите отдельные ключи с разными бюджетами.
- Скомпрометированный ключ отзовите в кабинете и создайте новый.
- Трафик — только по HTTPS.