Изображение в видео
Генерируйте Kling 4.0 по первому, первому/последнему или нескольким ключевым кадрам.
Объединяйте промпт и кадры в contents, максимум 10 изображений на задачу. Параметра aspect_ratio нет; выбирайте изображения нужных пропорций.
/kling/image-to-video/kling-4.0Первый, первый/последний или несколько ключевых кадров, до 10 изображений на задачу. Пропорции по референсу; aspect_ratio отсутствует.
Аутентификация
bearerAuth API Key платформы: Authorization: Bearer your-api-key.
Расположение: header
Тело запроса
application/json
Определения типов TypeScript
Используйте тип request body в TypeScript.
Тело ответа
application/json
application/json
application/json
Правила изображений и ссылок
contents поддерживает first_frame (первый), middle_frame (средний), last_frame (последний). Промпт type: "prompt" необязателен. Примеры охватывают первый, первый/последний и несколько кадров.
| Параметр | Требование |
|---|---|
| Источник | url обязателен; URL или Base64 |
| Формат и размер | JPG, JPEG, PNG; до 30MB каждый |
| Размеры | Ширина/высота от 300px, пропорции 2:5~5:2 |
| Количество | До 10 на задачу |
| ID ссылки на ресурс | id необязателен; без повторов в задаче |
Чтобы сослаться на изображение, задайте id, например "id": "first" соответствует @first. id — ссылка внутри запроса, не возвращаемый ID задачи.
Частые ошибки и решения
| Ответ или ошибка | Проверка и действие |
|---|---|
HTTP 401, Invalid token | Проверьте Bearer и принадлежность API Key сайту |
HTTP 400, contents cannot be empty | Передайте непустой массив contents |
HTTP 400, contents must contain at least one of first_frame, middle_frame, last_frame | Нужен хотя бы один ключевой кадр; одного промпта недостаточно |
HTTP 400, must have a non-blank url | Укажите непустой url кадра |
HTTP 400, contents[0].type ... is invalid | Проверьте индекс и допустимый тип кадра/промпта |
HTTP 400, invalid_request или invalid JSON request body | Проверьте JSON и типы; contents — массив, не строка |
HTTP 400 может вернуть code/message/data или объект error. fail_to_fetch_task не обязательно означает ошибку запроса статуса. Причину проверки ресурса читайте в message: это может быть JSON-строка, не объект. Сохраняйте ID запроса, не API Key.