Документация · Референс

Создать chat completion

POST/v1/chat/completions

OpenAI-совместимая генерация текста: model + messages, авторизация — Authorization: Bearer <API-ключ>. Принимаются оба cap-поля (max_tokens и max_completion_tokens) — шлюз сам нормализует под семейство модели (openai/* получает max_completion_tokens, остальные — max_tokens; оба поля с разными значениями → 400). Стриминг — stream: true (SSE); финальный чанк с usage приходит только при stream_options.include_usage: true. Списание с баланса — после успешного ответа провайдера по фактическому usage, при ошибке апстрима денег не берём; лимит — 60 запросов в минуту на аккаунт (общий bucket для text/images/video/audio).

Авторизация — заголовок Authorization: Bearer <API-ключ>, base URL — https://api.trackly.one/v1.

Тело запроса ChatCompletionRequest

Content-Type: application/json

ПолеТипОписание
frequency_penaltynumber | null
logprobsboolean | null
max_completion_tokensinteger | null
max_tokensinteger | null
messagesобязательноеarray<ChatMessage>
modelобязательноеstring
ninteger | null
presence_penaltynumber | null
response_formatobject | null
seedinteger | null
stopstring | array<string> | null
streambooleanПо умолчанию: false
stream_optionsStreamOptions | null
temperaturenumber | null
tool_choicestring | object | null
toolsarray<object> | null
top_pnumber | null
userstring | null

Схема ChatMessage

ПолеТипОписание
contentstring | array<ContentPart> | null
namestring | null
roleобязательное"system" | "user" | "assistant" | "tool" | "developer"

Схема ContentPart

Часть multimodal-сообщения — текст, картинка, аудио и т.д.

ПолеТипОписание
image_urlobject | null
textstring | null
typeобязательноеstring

Схема StreamOptions

ПолеТипОписание
include_usagebooleanПо умолчанию: false

Схема ChatCompletionResponse

Ответ от провайдера в non-streaming режиме.

ПолеТипОписание
choicesобязательноеarray<Choice>
createdобязательноеinteger
idобязательноеstring
modelобязательноеstring
object"chat.completion"По умолчанию: "chat.completion"
usageобязательноеUsage

Схема Choice

ПолеТипОписание
finish_reasonstring | null
indexобязательноеinteger
messageChatMessage | null

Схема Usage

ПолеТипОписание
completion_tokensобязательноеinteger
prompt_tokensобязательноеinteger
total_tokensобязательноеinteger

Ответы

КодОписаниеСхема
200Успешный ответChatCompletionResponse
422Ошибка валидации тела запроса или параметров