Перейти к основному содержимому

Генерации

POST /v1/generations

Запускает генерацию. Ответ возвращается сразу с идентификатором задачи; сама генерация выполняется в фоне.

Запрос

Headers: Authorization: Bearer <api_key>, Content-Type: application/json

Body:

ПолеТипОбязательноеОписание
modelIdstringдаИдентификатор модели (из GET /v1/models)
settingsobjectнетПараметры генерации (prompt, размер и т.д.). Для media-полей передавайте массивы URL.

Пример:

{
"modelId": "openai/dall-e-3",
"settings": {
"prompt": "Кот в космосе",
"size": "1024x1024"
}
}

Ответ

201 Created

{
"generationId": "jd7abc..."
}

Ошибки

  • 400 — неверный JSON или отсутствует modelId
  • 401 — неверный или отсутствующий API-ключ
  • 402 — недостаточно средств на балансе
  • 404 — модель не найдена или недоступна

GET /v1/generations/:id

Возвращает статус и результат генерации.

Запрос

Headers: Authorization: Bearer <api_key>

Ответ

200 OK

{
"status": "completed",
"result": "https://.../proxy/xxx.jpg",
"price": 10
}
ПолеТипОписание
statusstringpending | processing | completed | failed
resultstringПри completed: URL файла или текст (в зависимости от типа модели). Отсутствует, пока статус не completed.
pricenumberСтоимость в токенах. Присутствует при завершённой генерации (completed или failed).

Примеры для разных статусов:

В процессе:

{
"status": "processing"
}

Успех (изображение/видео):

{
"status": "completed",
"result": "https://<site>/proxy/abc123.jpg",
"price": 15
}

Успех (текст):

{
"status": "completed",
"result": "Сгенерированный текст...",
"price": 2
}

Ошибка:

{
"status": "failed",
"price": 15
}

Ошибки

  • 401 — неверный API-ключ
  • 404 — генерация не найдена или принадлежит другому пользователю