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

API полностью совместим с OpenAI. Работает с любыми библиотеками. Подробные разделы: быстрый старт, аутентификация, chat completions, стриминг, Python, Node.js, cURL, коды ошибок.

Базовый URL

https://tokventa.tech/v1

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

API-ключ передаётся в заголовке Authorization:

Authorization: Bearer ВАШ_API_КЛЮЧ

Chat Completions

Эндпоинт: POST /v1/chat/completions

curl https://tokventa.tech/v1/chat/completions \
  -H "Authorization: Bearer ВАШ_КЛЮЧ" \
  -H "Content-Type: application/json" \
  -d '{"model":"qwen3.8-flash","messages":[{"role":"user","content":"Привет!"}]}'

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

Эндпоинт: GET /v1/models

curl https://tokventa.tech/v1/models -H "Authorization: Bearer ВАШ_КЛЮЧ"

Стриминг

Поддерживается SSE-стриминг: добавь "stream": true

{"model":"qwen3.8-flash","messages":[...],"stream":true}

Генерация изображений

Модели qwen-image-* работают двумя способами (стриминг не поддерживается, только stream:false).

1. POST /v1/images/generations — картинка в поле data[0].url:

curl https://tokventa.tech/v1/images/generations \
  -H "Authorization: Bearer ВАШ_КЛЮЧ" \
  -H "Content-Type: application/json" \
  -d '{"model":"qwen-image-2.0","prompt":"красный круг на белом фоне","n":1,"size":"1024x1024"}'

→ {"created":1789…,"data":[{"url":"https://…png?…"}]}

2. POST /v1/chat/completions — картинка в choices[0].message.content как массив частей {type:"image_url", image_url:{url}} (генерация занимает 30–90 с):

{"model":"qwen-image-2.0","messages":[{"role":"user","content":"кот в космосе"}]}

→ {"choices":[{"message":{"role":"assistant","content":
    [{"type":"image_url","image_url":{"url":"https://…png?…"}}]},
    "finish_reason":"stop"}],
   "usage":{"image_count":1,…}}

Списание — за генерацию по тарифу модели (imgPrice × число картинок), не за токены. Ссылки на изображения временные — скачивайте файл сразу.