Создание видео
Создавайте задачи Kling 4.0 по тексту, изображениям или Omni в формате платформы.
Для базового ввода используйте общие поля, для расширенного — metadata.contents. Настройки генерации задаются в metadata.settings, обратный вызов и водяной знак — в metadata.options.
/v1/video/generationsОбщие поля платформы и metadata задают текст, изображения или Omni. Псевдоним POST /v1/videos/generations принимает те же параметры. Всё использует kling-4.0; Omni — несколько референсов, не другая модель.
Аутентификация
bearerAuth API Key платформы: Authorization: Bearer your-api-key.
Расположение: header
Тело запроса
application/json
Определения типов TypeScript
Используйте тип request body в TypeScript.
Используйте prompt или metadata.contents по операции; не размещайте нативные поля в корне платформенного тела.
Тело ответа
application/json
application/json
application/json
Результат создания и запрос статуса
Успешное создание возвращает объект задачи верхнего уровня. id и task_id — строковые ID. Сохраните task_id и получите статус и URL через API запроса платформы.
status: "queued" означает приём и постановку в очередь; progress: 0 не означает сбой. Ответ создания не содержит итогового URL. created_at — время Unix в секундах, в отличие от миллисекунд нативного ответа.
Выбор входных данных
| Сценарий | Ввод | Подробные правила |
|---|---|---|
| Текст в видео | prompt; для расширенных настроек metadata.operation: "text-to-video" | Параметры текста |
| Изображение в видео | image / images или типизированный metadata.contents; операция image-to-video | Источники и ограничения кадров |
| Референсы/редактирование Omni | Используйте metadata.operation: "omni-video" и metadata.contents | Типы, ссылки и сочетания ресурсов |
Явный metadata.settings имеет приоритет над сокращёнными полями. Ссылка id для изображений/видео необязательна, id для элементов/голосов обязательна. Все ID ссылок должны быть уникальны в задаче.
Частые ошибки и решения
| Ответ или ошибка | Проверка и действие |
|---|---|
HTTP 401, Invalid token | Проверьте Authorization: Bearer your-api-key и действующий API Key нужного сайта |
HTTP 400, 模型名称不能为空 | Укажите model: "kling-4.0" |
HTTP 400, prompt cannot be empty | Для текста нужен непустой prompt; расширенный metadata.contents задавайте по соответствующей нативной операции |
HTTP 400, duration must be an integer | Используйте целое число, например 3, не строку "3" и не дробь |
settings.resolution ... is invalid | Укажите 720p или 1080p, не размеры в пикселях; удалите size и используйте metadata.settings.resolution |
HTTP 400, invalid JSON request body | Проверьте кавычки, запятые и скобки; JSON должен быть корректным и без комментариев |
HTTP 400 может вернуть code/message/data или объект error. При создании code: "fail_to_fetch_task" также означает возможный сбой проверки параметров у поставщика. Читайте причину в message, не повторяйте запрос только по коду.
message может быть JSON-строкой с code/message/request_id, а не разобранным объектом. Проверьте формат перед разбором. Для поддержки сохраняйте ID запроса, не передавайте API Key. Ограничения берите из нативной операции, а не из диапазонов общих ошибок.