AIRouter

Docs · OpenAI-compatible API

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

Подключайте приложения, SDK, RAG‑поиск и AI‑агенты к OpenAI‑совместимым Chat Completions и Embeddings API AIRouter. Начните с API‑ключа, баланса и модели из каталога.

QuickstartcurlEmbeddingsSDKEndpointsБаланс и платежиОшибкиИнструкции для AI‑агентов

Base URL и авторизация

Base URL
https://api.ai-router.app/v1
Auth header
Authorization: Bearer $AIROUTER_API_KEY
Chat endpoint
POST /chat/completions
Embeddings endpoint
POST /embeddings
Models endpoint
GET /models

Полный ключ показывается один раз при создании. Для публичных примеров используйте переменную окружения AIROUTER_API_KEY.

Порядок запуска

  1. Создайте аккаунт.Зарегистрируйтесь и подтвердите email.
  2. Пополните баланс.Откройте биллинг и внесите сумму от 100 ₽.
  3. Создайте ключ.Откройте API‑ключи, сохраните ключ в менеджер паролей или хранилище секретов.
  4. Выберите модель.Скопируйте model id из каталога моделей: chat‑модели работают в Chat Completions, embedding‑модели — в Embeddings.
  5. Отправьте запрос.Начните с non‑streaming Chat Completions и явного max_tokens либо с маленького embeddings‑запроса.

curl: non-streaming chat completions

Рабочий стартовый запрос: текстовый ответ, без stream.

curl https://api.ai-router.app/v1/chat/completions \
  -H "Authorization: Bearer $AIROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek/deepseek-v4-flash",
    "messages": [{"role":"user","content":"Проверь подключение и ответь коротко"}],
    "max_tokens": 64
  }'

Embeddings для RAG и поиска

OpenAI‑совместимый endpoint для векторизации текстов и запросов.

curl https://api.ai-router.app/v1/embeddings \
  -H "Authorization: Bearer $AIROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "openai/text-embedding-3-small",
    "input": ["Документ для поиска", "Вопрос пользователя"],
    "encoding_format": "float",
    "input_type": "query"
  }'

Endpoint.Используйте POST /embeddings относительно base URL https://api.ai-router.app/v1.

Input.Поддерживаются строка, массив строк, массив token id и массив массивов token id; безопасные поля: encoding_format, dimensions, user, input_type.

Onyx / LiteLLM.Если клиент ждёт полный URL embeddings‑endpoint, укажите https://api.ai-router.app/v1/embeddings.

В истории запросов отображаются только служебные данные: модель, время, статус и сумма списания. Исходный текст embeddings‑запроса и сами embedding‑векторы в истории не показываются. Списание идёт с рублёвого баланса по тарифу выбранной модели; ориентируйтесь на каталог моделей и историю расходов в кабинете.

OpenAI SDK‑совместимые примеры

Если SDK поддерживает замену base URL, обычно достаточно указать AIRouter base URL и Bearer‑ключ.

Python

Выберите язык выше — пример не ужимается в узкую колонку и остаётся читаемым.

from openai import OpenAI
import os

client = OpenAI(
    api_key=os.environ["AIROUTER_API_KEY"],
    base_url="https://api.ai-router.app/v1",
)

completion = client.chat.completions.create(
    model="deepseek/deepseek-v4-flash",
    messages=[{"role": "user", "content": "Проверь подключение и ответь коротко"}],
    max_tokens=64,
)

print(completion.choices[0].message.content)

Поддерживаемые публичные endpoints

Текущий публичный OpenAI‑compatible API AIRouter.

EndpointAuthНазначениеСтатус
GET /modelsНе требуетсяПубличный каталог активных chat и embedding моделей, capabilities и цен в ₽.Поддерживается
POST /chat/completionsBearer AIRouter API keyOpenAI-compatible Chat Completions: JSON and stream:true SSE.Поддерживается
POST /embeddingsBearer AIRouter API keyOpenAI-compatible Embeddings для RAG/поиска: text/token input, encoding_format, dimensions, input_type.Поддерживается
POST /v1/messagesBearer or X-Api-Key AIRouter API keyAnthropic-native Messages API in AIRouter: JSON, streaming, tools, thinking, and multimodal blocks.Экспериментально

Баланс

Запросы списываются с баланса AIRouter в рублях. Для первого запроса нужен подтверждённый email, активный API‑ключ и положительный баланс.

Открыть биллинг →

Платежи

Минимальное пополнение — 100 ₽. Финальный статус платежа и историю операций смотрите в кабинете.

История платежей →

Стоимость запроса

Цена зависит от модели, входных токенов и размера ответа. Для chat‑запросов задавайте max_tokens; для embeddings выбирайте embedding‑модель из каталога.

Модели и цены →

HTTP статусы и error types

Ошибки возвращаются как JSON с объектом error: type, человекочитаемое message и HTTP code.

HTTPtypeЧто сделать
400validation_errorПроверьте JSON, model, messages, max_tokens, stream и неподдерживаемые параметры.
400billing_preflight_requiredУкажите max_tokens для предварительной оценки стоимости.
400/402request_too_expensiveУменьшите max_tokens, размер запроса или выберите более дешёвую модель.
401invalid_api_keyПроверьте Bearer‑ключ, активность ключа и отсутствие лишних пробелов.
402insufficient_balanceПополните баланс, снизьте max_tokens или выберите более дешёвую модель.
403email_not_verifiedПодтвердите email аккаунта.
404model_not_foundСкопируйте актуальный model id из каталога.
408/504request_timeoutПовторите запрос позже или уменьшите размер запроса.
502model_request_errorПовторите запрос позже; если ошибка стабильная, смените модель.
502billing_unavailableСтоимость запроса не была подтверждена; запрос не списан, попробуйте позже или уменьшите ответ.
500internal_errorПовторите запрос позже; если ошибка повторяется, напишите в поддержку.

Безопасность API‑ключей

Используйте переменные окружения.В коде и документации оставляйте $AIROUTER_API_KEY или <AIROUTER_API_KEY>.

Разделяйте ключи по проектам.Создавайте отдельные ключи для локальной разработки, серверов и агентов.

Отключайте лишнее.Если ключ больше не нужен или мог попасть к третьим лицам, отключите его в кабинете и создайте новый.

AI‑агенты и coding agents

Для популярных AI‑агентов, SDK и automation‑сценариев есть отдельные инструкции с готовыми настройками. В прямых OpenAI‑совместимых интеграциях используйте Chat Completions для генерации текста и Embeddings для RAG/поиска.