Документация

Запуск за 5 минут

HolyAPI полностью совместим с OpenAI API. Если у вас уже есть код на OpenAI SDK, поменяйте две строки.

Быстрый старт

  1. Войдите через GitHub и попробуйте модели в песочнице.
  2. Пополните баланс и нажмите «Выпустить ключ» в кабинете.
  3. Укажите base_url и ключ в SDK.
Python
pip install openai

from openai import OpenAI

client = OpenAI(base_url="https://api.nart.top/v1", api_key="sk-holy...")

resp = client.chat.completions.create(
    model="grok-4.7",
    messages=[{"role": "user", "content": "Объясни квантовую запутанность в двух предложениях"}],
)
print(resp.choices[0].message.content)
JavaScript
npm i openai

import OpenAI from 'openai';

const client = new OpenAI({ baseURL: 'https://api.nart.top/v1', apiKey: process.env.HOLY_API_KEY });

const resp = await client.chat.completions.create({
  model: 'claude-fable-5.1',
  messages: [{ role: 'user', content: 'Напиши функцию debounce на TypeScript' }],
});
console.log(resp.choices[0].message.content);
cURL
curl https://api.nart.top/v1/chat/completions \
  -H "Authorization: Bearer $HOLY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"gpt-6-astra","messages":[{"role":"user","content":"Привет!"}]}'

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

Передавайте ключ в заголовке Authorization: Bearer sk-holy…. Ключ персональный: один ключ на один аккаунт. Остаток токенов виден в кабинете.

POST /v1/chat/completions

Параметры: model, messages, temperature, max_tokens, top_p, stop, stream. Ответ всегда в формате OpenAI с полем usage.

Ответ
{
  "id": "chatcmpl-…",
  "object": "chat.completion",
  "model": "grok-4.7",
  "choices": [{ "index": 0, "message": { "role": "assistant", "content": "…" }, "finish_reason": "stop" }],
  "usage": { "prompt_tokens": 18, "completion_tokens": 64, "total_tokens": 82 }
}

Стриминг

С stream: true ответ приходит как Server-Sent Events. Последний чанк перед [DONE] содержит usage.

python
stream = client.chat.completions.create(model="gpt-5.6-luna", messages=[...], stream=True)
for chunk in stream:
    if chunk.choices:
        print(chunk.choices[0].delta.content or "", end="")

GET /v1/models

Возвращает актуальный список моделей. Актуальные ID смотрите в каталоге.

bash
curl https://api.nart.top/v1/models

Ошибки и лимиты

КодКогда
401Нет ключа, неверный ключ, ключ отозван
404Модель не найдена или отключена
429Больше 60 запросов в минуту на ключ или закончился лимит токенов
503Все провайдеры модели недоступны (fallback не помог)