gensta DOCS
api-platform.gensta.ai/v1 Портал разработчика

Метод и путь

POST/v1/generationsBearer key · generations:write

Отправляйте JSON с Content-Type: application/json. Idempotency-Key необязателен по схеме, но настоятельно рекомендуется для каждой логической генерации.

Форма запроса

json
{
  "model": "wan-3.0",
  "mode": "text_to_video",
  "variant": "standard",
  "parameters": {
    "resolution": "720p",
    "duration_seconds": 5,
    "ratio": "16:9",
    "audio": true,
    "prompt_extend": false,
    "watermark": false
  },
  "input": {
    "prompt": "A paper boat crosses a rain puddle, macro lens"
  }
}
ПолеКонтракт
modelОбязательное; ID из GET /v1/models
modeОбязательное; значение из operations выбранной модели
variantОбязательное; значение из variants выбранной модели
parametersПараметры генерации
inputСтрогий объект выбранного режима

Ответ на создание

json
{
  "id": "1b90f2e6-8898-45c3-9c4a-6f4ba6af25cb",
  "status": "queued",
  "model": "wan-3.0",
  "mode": "text_to_video",
  "variant": "standard",
  "price": { "amount": "<calculated_amount>", "currency": "USD" },
  "billing": {
    "currency": "USD",
    "status": "reserved",
    "reserved_amount": "<calculated_amount>",
    "charged_amount": null
  },
  "created_at": "2026-09-01T12:00:00.000Z"
}

HTTP 202 означает, что генерация принята. Объект billing явно показывает состояние денег: при создании status равен reserved, reserved_amount содержит максимальный резерв, а charged_amount равен null. Старый объект price сохраняется для совместимости.

Валидация

Неизвестные поля и несовместимые параметры дают 400 invalid_request до резервирования средств. После удаления пробелов по краям prompt должен содержать 1–20 000 символов. Для video_edit и video_extend требуется ratio: adaptive.