API
Совместим с OpenAI Chat Completions. Любой код и инструмент, который умеет работать с OpenAI, работает и с нами: достаточно поменять адрес и ключ.
Быстрый старт
- Зарегистрируйтесь и пополните баланс.
- Создайте ключ в разделе API-ключи.
- Укажите адрес
https://slovai.ru/v1.
curl https://slovai.ru/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{"model": "openai/gpt-6-luna", "messages": [{"role": "user", "content": "Привет!"}]}'from openai import OpenAI
client = OpenAI(base_url="https://slovai.ru/v1", api_key="sk-slovai-…")
r = client.chat.completions.create(
model="openai/gpt-6-luna",
messages=[{"role": "user", "content": "Привет!"}],
)
print(r.choices[0].message.content)import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://slovai.ru/v1", apiKey: process.env.API_KEY });
const r = await client.chat.completions.create({
model: "anthropic/claude-sonnet-5",
messages: [{ role: "user", content: "Привет!" }],
});
console.log(r.choices[0].message.content);Авторизация
Ключ передаётся в заголовке Authorization: Bearer sk-slovai-…. Ключ показывается один раз при создании, мы храним только его отпечаток. У ключа можно задать месячный лимит в рублях. Утёкший ключ отзовите в кабинете: остальные продолжат работать.
Чат-комплишены
POST /v1/chat/completions принимает те же поля, что и OpenAI: model, messages, temperature, max_tokens, tools, response_format и другие. Дополнительные поля передаются модели без изменений. Если поставщик модели не отвечает, запрос автоматически уходит к резервному.
Стриминг
С "stream": true ответ приходит событиями text/event-stream, как у OpenAI. Последнее событие перед [DONE] всегда содержит usage с токенами и суммой. Если соединение оборвётся, спишется только то, что модель успела сгенерировать.
Стоимость запроса
В каждом ответе в usage есть поле cost_rub: сколько списано с баланса за этот запрос. Так можно считать расходы по пользователям своего продукта без отдельной аналитики.
"usage": {
"prompt_tokens": 1240,
"completion_tokens": 380,
"total_tokens": 1620,
"prompt_tokens_details": { "cached_tokens": 0 },
"cost_rub": 1.8614
}Если поставщик не сообщил количество токенов, мы считаем их по длине текста и добавляем "estimated": true. Заголовок x-request-id — номер запроса в детализации кабинета.
Список моделей
GET /v1/models отдаёт доступные модели с ценами в рублях за 1 млн токенов. Ключ не нужен.
{
"id": "anthropic/claude-sonnet-5",
"owned_by": "Anthropic",
"context_length": 1000000,
"pricing": { "currency": "RUB", "prompt_per_million": 362, "completion_per_million": 1810 },
"data_in_russia": false
}Данные только в России
Модели с "data_in_russia": true — YandexGPT, Alice AI и GigaChat — обрабатывают запросы только на серверах в России. Остальные модели передают текст запроса разработчику за рубеж. Чтобы запрос гарантированно не покинул Россию, добавьте параметр:
{
"model": "yandex/yandexgpt-5.1-pro",
"messages": [{ "role": "user", "content": "Привет!" }],
"provider": { "country": "ru" }
}Если выбранная модель работает за рубежом, запрос не уйдёт никуда и вернётся ошибка 403 data_residency. Для всей компании режим включается в кабинете, раздел «Команда»: тогда ограничение действует для чата и всех ключей без изменений в коде. Другие поля provider мы не передаём: поставщика выбирает шлюз.
Ошибки
| 400 | invalid_request | Неверный формат запроса. Текст ошибки подскажет поле. |
| 401 | invalid_api_key | Нет ключа, ключ неверный или отозван. |
| 402 | insufficient_balance | Закончились деньги на балансе. |
| 403 | data_residency | Модель работает за рубежом, а запрос ограничен Россией. |
| 404 | model_not_found | Такой модели нет. Проверьте id в GET /v1/models. |
| 429 | key_limit_exceeded | Исчерпан месячный лимит ключа. |
| 429 | rate_limited | Больше 10 запросов в секунду с одного ключа. |
| 502 | upstream_unavailable | Все поставщики модели недоступны. Повторите позже или выберите другую модель. |
{ "error": { "message": "Недостаточно средств на балансе…", "type": "insufficient_quota", "code": "insufficient_balance" } }Готовые инструменты
Везде, где можно указать свой OpenAI-совместимый адрес: Cursor, Continue, n8n, Make, LangChain, LlamaIndex, Open WebUI, боты в Telegram. Укажите адрес https://slovai.ru/v1, свой ключ и id модели из списка.