Перейти к содержимому
NotHolyДокументация

Начало

Аутентификация

Передавайте API-ключ как Bearer-токен или в x-api-key. Ключи принадлежат организации, и у них могут быть бюджеты и ограничения по моделям.

Открыть как Markdown

Каждому запросу нужен API-ключ. Передавайте его в одном из двух заголовков:

ЗаголовокФормат
AuthorizationBearer nh_live_...
x-api-keynh_live_... (так делают SDK Anthropic)
curl
curl https://api.notholy.com/v1/models -H "x-api-key: $NOTHOLY_API_KEY"

Ключи

Ключи создаются в консоли в разделе API-ключи. Каждый ключ принадлежит организации и рабочему пространству. Секрет показывается один раз и хранится только в виде хеша.

У ключа могут быть:

  • Общий и дневной бюджет в долларах США. Если остатка бюджета не хватает на запрос, его лимит вывода уменьшается, а ниже 16 токенов запрос получает 402 key_budget_exceeded.
  • Список разрешённых моделей. На другие модели приходит 403 key_not_allowed.
  • Срок действия.
  • Список разрешённых IP-адресов или диапазонов CIDR. Другие адреса получают 403 key_not_allowed.

Отзыв ключа срабатывает со следующего запроса.

Ключи в коде

Читайте ключ из окружения. Не коммитьте его. Если ключ утёк, отзовите его в консоли и создайте новый.

Никогда не встраивайте ключ в клиентский код. Вызывайте API со своего сервера или из терминала, а ключи держите в переменных окружения или хранилище секретов.

Python
import os
from openai import OpenAI

client = OpenAI(base_url="https://api.notholy.com/v1", api_key=os.environ["NOTHOLY_API_KEY"])

print([m.id for m in client.models.list()])

Ошибки

СтатусКодЗначение
401invalid_api_keyКлюч отсутствует, неверен, отозван или истёк
403key_not_allowedКлючу нельзя использовать эту модель, или его нельзя использовать с этого IP-адреса
403account_suspendedОрганизация заблокирована. Напишите в поддержку
403consent_requiredСоздатель ключа не дал или отозвал согласие на обработку партнёрами в других странах. Принять его можно в консоли

Что дальше