Справочник API
Используйте ключ Void API для работы со шлюзом, совместимым с OpenAI. Выберите идентификатор модели в каталоге и проверьте, поддерживает ли она нужный метод и функции.
Базовый URL и аутентификация
Базовый URL публичного шлюза: https://void-api.tech/v1. Отправляйте запросы по HTTPS. Запросы к /v1 передаются в шлюз LLM, а маршруты управления учётной записью находятся в /api/.
Создайте ключ в личном кабинете и передавайте его в заголовке Authorization: Bearer <your-api-key>. Храните ключ в тайне: не добавляйте его в код, выполняемый в браузере, и не сохраняйте в репозитории. Токен доступа к учётной записи для /api/ - не то же самое, что API-ключ шлюза.
Список моделей
GET /v1/models возвращает модели, доступные вашему ключу шлюза. Используйте id из массива data в качестве значения model в запросах к модели. Публичный каталог моделей и цены также доступны на странице «Модели»; доступность и возможности зависят от модели.
curl "https://void-api.tech/v1/models" \
-H "Authorization: Bearer $VOID_API_KEY"Каталог моделей и ценыПубличный каталог моделей (JSON)
GET /api/models/catalog не требует авторизации или JavaScript. Возвращает JSON-массив: name содержит ID модели для запросов, group обозначает группу для отображения, а все поля *_price_per_million_tokens содержат цены в долларах США за миллион токенов: входных, выходных, чтения и записи кэша. Цены передаются строками с десятичными числами. Запрашивайте актуальные цены через этот эндпоинт, а не полагайтесь на сохранённые значения. Публичный каталог не заменяет GET /v1/models, требующий авторизации.
curl -fsS "https://void-api.tech/api/models/catalog"Генерация ответов в чате
POST /v1/chat/completions принимает тело JSON в формате OpenAI с идентификатором модели и сообщениями. Без потоковой передачи возвращается JSON-ответ чата; ответ ассистента, если он есть, находится в choices. Доступные поля и форматы сообщений зависят от выбранной модели и провайдера.
curl "https://void-api.tech/v1/chat/completions" \
-H "Authorization: Bearer $VOID_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"<model-id>","messages":[{"role":"user","content":"Hello!"}]}'Для потоковой передачи добавьте "stream": true в JSON-запрос. Вместо одного полного JSON-ответа шлюз отправит события сервера (SSE) с последовательными фрагментами. Обрабатывайте события по мере поступления и учитывайте маркер завершения потока. Данные об использовании токенов при потоковой передаче доступны не для каждой модели и не для каждого запроса.
curl -N "https://void-api.tech/v1/chat/completions" \
-H "Authorization: Bearer $VOID_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"<model-id>","messages":[{"role":"user","content":"Hello!"}],"stream":true}'Responses API
POST /v1/responses направляется в шлюз LLM. Отправляйте запрос в формате OpenAI с model и input, только если выбранная модель поддерживает этот API. Некоторые подключения моделей работают в режиме чата, другие - в режиме ответов; не считайте, что каждая модель поддерживает оба метода. Для поддерживаемых моделей укажите "stream": true, чтобы получать события ответов через SSE вместо одного JSON-ответа. Формат этих событий отличается от фрагментов ответа чата.
curl "https://void-api.tech/v1/responses" \
-H "Authorization: Bearer $VOID_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"<responses-capable-model-id>","input":"Hello!"}'Ошибки и совместимость
Перед обработкой успешного ответа проверяйте статус HTTP. Вызов может завершиться ошибкой из-за аутентификации или прав доступа, некорректного запроса, недоступной модели, недостаточного баланса, ограничения частоты запросов или сбоя вышестоящего сервиса. Тела и коды ошибок шлюза могут отличаться от ошибок /api/ для учётной записи; не рассчитывайте на единый формат ошибок для всех маршрутов. При работе с SSE ошибки могут возникать и после установления соединения, поэтому обрабатывайте прерванные потоки.
Совместимость с OpenAI не означает одинаковое поведение всех моделей и провайдеров. Параметры, инструменты, мультимодальные данные, потоковые события и учёт токенов зависят от модели и базового провайдера. Начните с минимального примера и проверьте дополнительные возможности на нужной модели.
Оплата и учётная запись
Актуальные цены за токены указаны в публичном каталоге моделей. Управляйте балансом и просматривайте расход в своей учётной записи. Цены и доступность могут меняться; проверяйте текущий каталог перед отправкой запросов.