kosareva.cloud

Документация API kosareva.cloud

Один ключ — и все модели каталога через OpenAI-совместимый API: текст и код, эмбеддинги, картинки, озвучка и распознавание речи. Если у вас уже есть код под OpenAI SDK, меняются две строки — ключ и base_url.

Клиентам в формате Anthropic, например Claude Code, нужен тот же адрес без /v1. Ниже — всё для первого запроса, список эндпоинтов с примерами, разбор ошибок и API личного кабинета.

Base URL
https://api.kosareva.cloud/v1
Формат Anthropic
https://api.kosareva.cloud — без /v1, путь /v1/messages SDK допишет сам
Авторизация
Authorization: Bearer ВАШ_API_КЛЮЧ, в формате Anthropic — и x-api-key
Имя модели
как в каталоге, латиницей через дефисы: gpt-5-6, claude-sonnet-5-5
Оплата
рубли на балансе, списание по факту: за токены, картинку, минуту записи. Абонентской платы нет

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

Три шага, после которых работает любой код под OpenAI SDK.

/1Зарегистрируйтесь и пополните баланс

Вход в личный кабинет — по почте, Яндекс ID или VK ID. Пополнение картой или СБП — от 50 ₽, юрлицам — по счёту от 1 000 ₽, с договором и актом.

/2Создайте API-ключ

В кабинете откройте «API-ключи» и создайте ключ. Полный ключ показывается один раз — сохраните его сразу. Под каждый проект или сотрудника удобно завести свой ключ: расход виден по каждому, а лимит в рублях задаётся отдельно.

/3Отправьте первый запрос

Подставьте ключ вместо ВАШ_API_КЛЮЧ. Модель — любая текстовая из каталога, здесь gpt-5-6.

curl https://api.kosareva.cloud/v1/chat/completions \
  -H "Authorization: Bearer ВАШ_API_КЛЮЧ" \
  -H "Content-Type: application/json" \
  -d '{"model":"gpt-5-6","messages":[{"role":"user","content":"Привет!"}]}'

Python, OpenAI SDK

from openai import OpenAI

client = OpenAI(
    api_key="ВАШ_API_КЛЮЧ",
    base_url="https://api.kosareva.cloud/v1",
)

response = client.chat.completions.create(
    model="gpt-5-6",
    messages=[{"role": "user", "content": "Привет!"}],
)
print(response.choices[0].message.content)

Node.js, OpenAI SDK

import OpenAI from 'openai';

const client = new OpenAI({
  apiKey: 'ВАШ_API_КЛЮЧ',
  baseURL: 'https://api.kosareva.cloud/v1',
});

const response = await client.chat.completions.create({
  model: 'gpt-5-6',
  messages: [{ role: 'user', content: 'Привет!' }],
});
console.log(response.choices[0].message.content);

Ключ лучше держать в переменной окружения, а не в коде: OpenAI SDK сам читает OPENAI_API_KEY и OPENAI_BASE_URL.

Эндпоинты

Пути и форматы — как у OpenAI, поэтому подходят официальные SDK и любые клиенты, где можно поменять base URL. Модель выбирается полем model в каждом запросе, к ключу она не привязана.

Что делаетМетод и путьМодели
Чат, код, агентыPOST /v1/chat/completionsвсе текстовые модели каталога — сейчас их 105
Responses APIPOST /v1/responsesмодели OpenAI; так работает, например, Codex CLI
Формат AnthropicPOST /v1/messagesмодели Claude — сейчас их 13; base URL без /v1
ЭмбеддингиPOST /v1/embeddingsyandex-embeddings-doc, yandex-embeddings-query и gemini-embedding-2
Генерация картинокPOST /v1/images/generations26 моделей, таблица ниже
Правки картинокPOST /v1/images/edits13 моделей, таблица ниже
Озвучка текстаPOST /v1/audio/speechelevenlabs-turbo-2-5 и elevenlabs-multilingual-v2
Распознавание речиPOST /v1/audio/transcriptionsgemini-3-5-transcribe
Список моделейGET /v1/modelsвсе, что доступны вашему ключу
Баланс, ключи, счетаGET /api/v1/…на kosareva.cloud, а не на api. — API личного кабинета

Видео по API пока не отдаётся: ролики генерируются только в личном кабинете. Запрос, который закончился ошибкой, не списывается ни на одном эндпоинте.

Текст и код

Чат-запросы идут на /v1/chat/completions: те же messages, tools, response_format и max_tokens, что у OpenAI. Работает с любой из 105 текстовых моделей каталога.

Потоковая выдача

С stream: true ответ приходит по кусочкам, как у OpenAI. Для длинных ответов это ещё и защита от таймаута: без потока ответ приходит целиком в конце, и клиент с коротким таймаутом может не дождаться.

stream = client.chat.completions.create(
    model="gpt-5-6",
    messages=[{"role": "user", "content": "Объясни, что такое RAG, в трёх абзацах"}],
    stream=True,
)
for chunk in stream:
    if chunk.choices and chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="", flush=True)

Формат Anthropic: Messages API

Для Anthropic SDK и инструментов на нём адрес — https://api.kosareva.cloud без /v1: путь /v1/messages SDK допишет сам. Через этот формат работают модели Claude из каталога, остальные модели подключайте через OpenAI-совместимый адрес.

from anthropic import Anthropic

client = Anthropic(
    api_key="ВАШ_API_КЛЮЧ",
    base_url="https://api.kosareva.cloud",
)

message = client.messages.create(
    model="claude-sonnet-5-5",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Привет!"}],
)
print(message.content[0].text)

Claude Code настраивается переменными окружения ANTHROPIC_BASE_URL и ANTHROPIC_AUTH_TOKEN — пошагово на странице Claude Code.

Responses API

Клиенты на Responses API — например, Codex CLI — работают по тому же адресу https://api.kosareva.cloud/v1, путь /v1/responses. Подходят модели OpenAI из каталога.

Защита персональных данных

Если в запросах бывают ФИО, телефоны, ИНН или реквизиты, поменяйте адрес на https://api.kosareva.cloud/guard/v1: такие данные заменяются заглушками до отправки в модель, а в ответе возвращаются на место. Подробнее — на странице API Guard.

Эмбеддинги

Векторы для поиска по смыслу, RAG и классификации считаются на /v1/embeddings тем же ключом. Поле input принимает строку или список строк: при индексации базы знаний отправляйте фрагменты пачками — один запрос вместо сотни.

curl https://api.kosareva.cloud/v1/embeddings \
  -H "Authorization: Bearer ВАШ_API_КЛЮЧ" \
  -H "Content-Type: application/json" \
  -d '{"model":"gemini-embedding-2","input":["Первый фрагмент","Второй фрагмент"]}'
МодельИмя в запросеВектор и фрагментЗа 1M токенов
Yandex Embeddings Docyandex-embeddings-doc256 измерений, до 8192 токенов на фрагмент, для индексации документов14,14 ₽
Yandex Embeddings Queryyandex-embeddings-query256 измерений, до 8192 токенов на фрагмент, для поисковых запросов14,14 ₽
Gemini Embedding 2gemini-embedding-23072 измерения, до 2048 токенов на фрагмент21,6 ₽

Ответ — массив data, в каждом элементе поле embedding. Векторы разных моделей несовместимы: сменили модель — переиндексируйте базу целиком. У Yandex две модели в паре: Doc для документов в базе, Query для поисковых запросов к ней. Как собрать поиск по своей базе целиком — в разборе RAG-системы.

Изображения

Генерация — на /v1/images/generations, правки по исходнику — на /v1/images/edits. Цена у большинства моделей фиксирована за картинку и не зависит от размера; у GPT Image 2.5 — по токенам, как у самой модели.

Генерация

curl https://api.kosareva.cloud/v1/images/generations \
  -H "Authorization: Bearer ВАШ_API_КЛЮЧ" \
  -H "Content-Type: application/json" \
  -d '{"model":"gpt-image-2","prompt":"Белые кроссовки на светлом фоне","n":1}'

Правка по исходнику

Файл уходит в multipart/form-data, поле image. У апскейла и удаления фона prompt не нужен.

curl https://api.kosareva.cloud/v1/images/edits \
  -H "Authorization: Bearer ВАШ_API_КЛЮЧ" \
  -F model="gpt-image-2" \
  -F image="@photo.png" \
  -F prompt="Замени фон на белый"
МодельИмя в запросеЦенаГенерацияПравки
Nano Banana 2nano-banana-2от 5 ₽да—
Nano Banana Pro (Gemini 3 Pro Image)nano-banana-pro-gemini-3-pro-imageот 16 ₽дада
FLUX.1-schnellflux-1-schnellот 1,4 ₽да—
GPT Image 2gpt-image-2от 4,5 ₽дада
GPT Image 2.5gpt-image-2-5около 6,7 ₽да—
Seedream 4.5seedream-4-5от 4,5 ₽дада
FLUX.2 Flexflux-2-flexот 13 ₽дада
FLUX.2 Proflux-2-proот 3,5 ₽дада
GPT Image 2.5 Sunburstgpt-image-2-5-sunburstоколо 6,7 ₽да—
GPT Image 2.5 Flaregpt-image-2-5-flareоколо 6,7 ₽да—
Imagen 4imagen-4от 9,7 ₽да—
Imagen 4 Fastimagen-4-fastот 4,9 ₽да—
Imagen 4 Ultraimagen-4-ultraот 14,6 ₽да—
FLUX Kontext Proflux-kontext-proот 6,1 ₽да—
FLUX Kontext Maxflux-kontext-maxот 12,2 ₽да—
Seedream 4.0seedream-4-0от 6,1 ₽да—
Seedream 5.0 Liteseedream-5-0-liteот 6,7 ₽да—
Ideogram V3ideogram-v3от 6,5 ₽да—
Qwen Image 3.0qwen-image-3-0от 5,8 ₽да—
Qwen Image 3.0 Proqwen-image-3-0-proот 7,8 ₽да—
Wan 2.7 Imagewan-2-7-imageот 3,3 ₽дада
Wan 2.7 Image Prowan-2-7-image-proот 8,1 ₽дада
Z-Image Basez-image-baseот 1 ₽да—
Gemini 2.5 Flash Imagegemini-2-5-flash-imageот 4,9 ₽да—
Gemini 3.1 Flash-Lite Imagegemini-3-1-flash-lite-imageот 4,9 ₽да—
Grok Imagine Image 2.0grok-imagine-image-2-0от 4,9 ₽да—
GPT Image 1.5gpt-image-1-5от 4,9 ₽—да
Seedream 5.0 Proseedream-5-0-proот 8,5 ₽—да
Qwen Image 2.0qwen-image-2-0от 6,8 ₽—да
Topaz Image Upscaletopaz-image-upscaleот 12,2 ₽—да
Recraft Crisp Upscalerecraft-crisp-upscaleот 0,6 ₽—да
Recraft Remove Backgroundrecraft-remove-backgroundот 1,2 ₽—да

Прочерк значит, что этот путь модель не принимает: запрос вернёт ошибку, денег за него не спишут. Цены за картинку — минимальные, у некоторых моделей крупный размер стоит дороже; точные условия — на странице модели. Обзор моделей и примеры — на странице API генерации изображений.

Озвучка

Текст в речь — на /v1/audio/speech, как у OpenAI: model, input и voice. В ответ приходит файл mp3.

curl https://api.kosareva.cloud/v1/audio/speech \
  -H "Authorization: Bearer ВАШ_API_КЛЮЧ" \
  -H "Content-Type: application/json" \
  -d '{"model":"elevenlabs-turbo-2-5","input":"Добрый день! Это озвучка через API."}' \
  -o speech.mp3
speech = client.audio.speech.create(
    model="elevenlabs-turbo-2-5",
    voice="EkK5I93UQWFDigLMpZcX",  # id голоса ElevenLabs, без него — голос по умолчанию
    input="Добрый день! Это озвучка через API.",
)
speech.write_to_file("speech.mp3")
МодельИмя в запросеДля чегоЗа 1000 символов
ElevenLabs Turbo 2.5elevenlabs-turbo-2-5Быстрая озвучка текста: черновики, боты, длинные материалы14 ₽
ElevenLabs Multilingual v2elevenlabs-multilingual-v2Качественная многоязычная озвучка для роликов и презентаций27 ₽
  • В одном запросе — до 5000 символов, всё, что длиннее, обрезается. Длинный текст делите по абзацам.
  • voice — id голоса из библиотеки ElevenLabs. Имена голосов OpenAI вроде alloy здесь не подходят.
  • Формат ответа один — mp3: response_format и speed не учитываются.

Распознавание речи

Аудиофайл в текст или субтитры — на /v1/audio/transcriptions, по тому же протоколу, что Whisper у OpenAI. Модель gemini-3-5-transcribe, 0,55 ₽ за минуту записи в среднем.

curl https://api.kosareva.cloud/v1/audio/transcriptions \
  -H "Authorization: Bearer ВАШ_API_КЛЮЧ" \
  -F model="gemini-3-5-transcribe" \
  -F file="@meeting.mp3"

Форматы ответа (text, srt, vtt, verbose_json с таймкодами слов), словарь терминов, ограничения по длине и разбор ошибок — на отдельной странице.

Список моделей

В каталоге 160 моделей, из них 105 текстовых. Точный список имён отдаёт сам API — это надёжнее любой страницы, включая эту.

curl https://api.kosareva.cloud/v1/models \
  -H "Authorization: Bearer ВАШ_API_КЛЮЧ"
МодельИмя в запросеКонтекст, токеновВход / выход за 1M
Claude Sonnet 5.5claude-sonnet-5-51 000 000216 / 1 080 ₽
Claude Opus 5.5claude-opus-5-51 000 000432 / 2 160 ₽
GPT-6.1 Solgpt-6-1-sol1 050 000216 / 1 080 ₽
GPT-5.6gpt-5-61 050 000432 / 2 160 ₽
Gemini 3.8 Flashgemini-3-8-flash1 048 57681 / 405 ₽
Qwen3.8 Maxqwen3-8-max1 000 000216 / 648 ₽
DeepSeek V4.1 Flashdeepseek-v4-1-flash1 048 57632,4 / 130 ₽

Все модели с ценами, контекстом и модальностями — на странице цен. Цена фиксирована в рублях и списывается по факту: токены запроса и ответа видны в поле usage и в расходах кабинета.

API личного кабинета

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

curl https://kosareva.cloud/api/v1/balance \
  -H "Authorization: Bearer ВАШ_API_КЛЮЧ"
МетодЧто возвращает
GET /api/v1/meпрофиль: имя, почта, тип аккаунта, компания, ИНН, скидка в процентах
GET /api/v1/balanceпополнено, потрачено и остаток в рублях
GET /api/v1/keysключи: имя, маска и лимит в рублях — без самих секретов
GET /api/v1/invoicesсчета: номер, сумма, статус, даты
GET /api/v1/topupsистория пополнений

Ответ /api/v1/balance выглядит так:

{
  "currency": "RUB",
  "topped_up": 5000,
  "spent": 1243.51,
  "remaining": 3756.49
}

Все методы — только чтение и только ваши данные. Если ключ не передан или удалён, приходит 401 с пояснением в error.message. Пополнить баланс или создать ключ можно только в кабинете — так безопаснее, если ключ утечёт.

Рекомендуемые модели

С чего начать, если модель ещё не выбрана. Все они работают по одному ключу, переключение — сменой поля model.

Код и агенты

Claude Sonnet 5.5 claude-sonnet-5-5

Новое поколение Sonnet: окно на 1 000 000 токенов, вызов инструментов. Работает и через OpenAI SDK, и через Anthropic SDK.

Длинные документы

GPT-6.1 Sol gpt-6-1-sol

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

Быстрые короткие ответы

Gemini 3.8 Flash gemini-3-8-flash

Отвечает быстро и стоит дешевле флагманов — для классификации, коротких ответов и потока однотипных запросов.

Экономная

DeepSeek V4.1 Flash deepseek-v4-1-flash

Рассуждает перед ответом и понимает картинки, а стоит 32,4 ₽ за миллион входных токенов.

Поиск по смыслу и RAG

Gemini Embedding 2 gemini-embedding-2

Векторы на 3072 измерения, фрагмент до 2048 токенов. Для базы знаний на русском и английском.

Картинки

GPT Image 2 gpt-image-2

И генерация, и правки по исходнику, цена фиксирована за картинку и не зависит от размера.

Устранение неполадок

Ошибки приходят в формате OpenAI, в error.message — объяснение по-русски. По нему и ищите свой случай; подробные разборы — в справочнике.

401: «Ключ не найден» или «Ключ не принят»

Ключ скопирован не целиком, с пробелом или переносом строки, удалён в кабинете — или передан не в том заголовке. Нужен Authorization: Bearer ВАШ_API_КЛЮЧ; в формате Anthropic подходит и x-api-key. Ключ OpenAI или Anthropic сюда не подходит — только ключ из нашего кабинета.

404: адрес без /v1 или с лишним хвостом

Базовый адрес для OpenAI SDK — ровно https://api.kosareva.cloud/v1: без /v1 запрос уходит мимо API, а с /chat/completions на конце путь удваивается — SDK допишет его сам. Для Anthropic SDK наоборот: https://api.kosareva.cloud без /v1.

«Такой модели нет в каталоге»

Имя модели — как в каталоге: латиницей через дефисы, например claude-sonnet-5-5. Вариант через точку шлюз поймёт сам, а с префиксом вендора (anthropic/…), датой версии или пробелом — нет. Точный список отдаёт GET /v1/models.

402: «Закончились средства на балансе»

На балансе не хватает денег на запрос. Пополните его в кабинете картой или СБП — от 50 ₽. Если деньги на балансе есть, а отказ повторяется, проверьте, не стоит ли у ключа свой лимит в рублях.

Ответ обрывается на полуслове

Модель упёрлась в потолок длины ответа — max_tokens. Поднимите его или попросите модель продолжить. Обратная ошибка — 400 «Запрос не помещается в контекст модели»: потолок ответа вместе с историей не влезает в окно модели. Тогда уменьшите max_tokens или сожмите историю.

429: «Слишком много запросов подряд»

Сделайте паузу и повторите запрос, лучше с растущей задержкой. Если нагрузка постоянная, напишите нам — лимит поднимем.

Долго нет ответа или 504

Длинный ответ без потоковой выдачи идёт минутами, и клиент с коротким таймаутом может сдаться раньше модели: включите stream или поднимите таймаут. Если пришёл наш 504 «Модель не начала отвечать за отведённое время», деньги за такой запрос не списываются — повторите его.

Инструменты

Готовые инструкции для редакторов и агентов: где какое поле, какой адрес и какие модели подходят.

  • Claude Code — агент в терминале, формат Anthropic
  • Codex CLI — агент OpenAI в терминале, Responses API
  • Cline и Kilo Code — агенты в VS Code
  • GitHub Copilot — свои модели в чате VS Code
  • OpenCode и Zed — терминал и редактор
  • Hermes и OpenClaw — автономные агенты

Все инструкции — в разделе «Инструменты». Подойдёт и любой другой клиент, где можно указать base URL для OpenAI.

Частые вопросы

Чем ваш API отличается от OpenAI API?

Форматом — ничем: те же пути, параметры, ответы и SDK. Отличаются адрес, ключ и имена моделей: у нас они латиницей через дефисы, как в каталоге, — gpt-5-6, а не gpt-5.6. И по одному ключу доступны модели разных вендоров, не только OpenAI.

Нужен ли VPN?

Нет. API отвечает из России напрямую, оплата — в рублях.

Как оплатить и какие документы будут?

Физлицам — картой или через СБП, от 50 ₽. Юрлицам — по счёту от 1 000 ₽, с договором и актом. Абонентской платы нет, деньги списываются с баланса по факту запросов.

Списываются ли деньги за запросы с ошибкой?

Нет. Запрос, который закончился ошибкой, не списывается — в том числе наш 504, когда модель не начала отвечать за отведённое время.

Можно ли ограничить расход одного ключа?

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

Можно ли генерировать видео по API?

Пока нет: ролики генерируются только в личном кабинете. По API доступны текст, эмбеддинги, картинки, озвучка и распознавание речи.

Подойдут LangChain, LlamaIndex, n8n и другие библиотеки?

Да, если в них можно указать base URL для OpenAI: подставьте https://api.kosareva.cloud/v1 и свой ключ. Для клиентов в формате Anthropic — адрес без /v1.

Где посмотреть, сколько стоил конкретный запрос?

В расходах личного кабинета. У текстовых моделей количество токенов приходит ещё и в поле usage ответа, а цена за миллион токенов — на странице модели в каталоге.

Рекомендуемые модели и цены

На странице модели — все цены, примеры запросов и калькулятор расхода.