Перейти к основному содержанию
POST
Этот эндпоинт работает асинхронно. После отправки используйте полученный task_id в GET /v1/tasks/{task_id}, чтобы узнать статус и результат задачи.

Выбор режима

Во всех пяти режимах используется одно имя модели — kling-v4-flash. Режим выбирается по переданным материалам и omni_reference_task_type. Значение omni_reference_task_type по умолчанию — auto, что равнозначно отсутствию поля. При явном reference изображения из image_urls используются как референсы.
Если передать только video_url без edit или extend, возвращается HTTP 400. Чтобы использовать видео как референс, передайте его в video_urls.

Заголовки запроса

string
обязательно
Аутентификация Bearer: Bearer <token>, где <token> — ваш API-ключ APIMart.

Параметры запроса

string
обязательно
Должно быть kling-v4-flash.
string
Описание генерации или редактирования. Необязателен только при генерации по изображению. Ссылки на материалы: @Image1 / @Video1, нумерация с 1 по порядку каждого массива. При редактировании входное видео — @Video1, изображения — @Image1, @Image2 и далее.
integer
Целые секунды от 3 до 20, обычно по умолчанию 5. При редактировании без этого поля используется длительность входа с округлением вверх. При продолжении это длина добавленного фрагмента. Явный 0 возвращает HTTP 400, null равен отсутствию поля. Оплата по этому целому числу; файл может быть примерно на один кадр длиннее.
integer
Псевдоним duration с теми же правилами. Если переданы оба поля, каждое должно быть в пределах 3–20, а значения должны совпадать, иначе HTTP 400.
string
по умолчанию:"720p"
Только 720p, также используется по умолчанию. 1080p возвращает HTTP 400. Выбор уровня через mode не поддерживается.
string
Генерация по тексту, по референсам и редактирование поддерживают 16:9, 9:16, 1:1 и 21:9; auto доступно только для референсов. Генерация по изображению не принимает aspect_ratio / size: непустое значение возвращает HTTP 400, пустая строка считается отсутствующим параметром. Для другого соотношения сторон заранее обрежьте первый кадр.
string[]
Генерация по изображению принимает один первый кадр; два изображения возвращают HTTP 400. В режиме референсов и редактирования — до 10 референсов. Для генерации только по референсным изображениям явно задайте omni_reference_task_type: "reference". URL должны быть публично доступны. Ширина и высота первого кадра и референсных изображений должны быть не менее 300px, а соотношение ширины к высоте — от 2:5 до 5:2. Нарушение возвращает HTTP 400 при отправке без списания средств.
object[]
Каждый элемент содержит url и role. Генерация по изображению принимает ровно один first_frame; референсы и редактирование используют reference_image. Последние и промежуточные кадры не поддерживаются. До 10 изображений и суммарно до 15 материалов с учётом видеореференсов. Ширина и высота первого кадра и референсных изображений должны быть не менее 300px, а соотношение ширины к высоте — от 2:5 до 5:2. Нарушение возвращает HTTP 400 при отправке без списания средств.
string
URL первого кадра для генерации по изображению. Его также можно передать как first_frame в image_with_roles или первым изображением в image_urls. Ширина и высота первого кадра и референсных изображений должны быть не менее 300px, а соотношение ширины к высоте — от 2:5 до 5:2. Нарушение возвращает HTTP 400 при отправке без списания средств.
string[]
До 5 видеореференсов общей длительностью не более 20 секунд. Превышение возвращает HTTP 400, без обрезки. Для редактирования или продолжения можно передать ровно один элемент вместо video_url, явно задав соответствующий тип задачи.Видеореференсы: только MP4 / MOV, ширина и высота — каждая в пределах 700–4553px. Длительность определяется по видеопотоку, а не контейнеру: не менее 3 секунд на клип и не более 20 секунд суммарно. Если хотя бы один видеореференс короче 3 секунд, при отправке возвращается HTTP 400 без списания средств.
string
Входное видео для редактирования или продолжения. Обязательно явно задать omni_reference_task_type: "edit" или "extend", иначе HTTP 400. Вход для редактирования должен длиться 3–20 секунд. Более короткие или длинные видео отклоняются без оплаты.Для редактирования подходят MP4 / MOV с шириной и высотой в пределах 700–4553px каждая. Ограничение 3–20 секунд относится к видеопотоку, а не контейнеру. Неверные формат, ширина, высота или длительность входного видео возвращают HTTP 400 при отправке без списания средств.На вход для продолжения не распространяются ограничения редактирования по высоте и минимуму 3 секунды. Например, можно продолжить видео 480p длительностью 2 секунды.
string
по умолчанию:"auto"
Поддерживаются auto, reference, edit и extend.
  • auto: выбирает генерацию по тексту, изображению или референсам в зависимости от материалов; равнозначно отсутствию поля.
  • reference: генерация по референсам; изображения из image_urls используются как референсы.
  • edit: редактирование видео; требуется входное видео.
  • extend: продление видео; требуется входное видео.
string
Для генерации с видеореференсами: origin сохраняет звук первого видеореференса, auto создаёт новый звук и используется по умолчанию. Для origin нужен видеореференс; если в первом нет аудиодорожки, её не будет и в результате. Редактирование создаёт новый звук и не сохраняет исходный; не передавайте этот параметр при редактировании. Продолжение его не поддерживает.

Размеры результата и частота кадров

Используется уровень 720p; фактические размеры в пикселях зависят от соотношения сторон. Частота — 24fps. Файл может быть примерно на один кадр длиннее duration: например, запрос на 3 секунды даёт около 3.04 секунды.

Примеры запросов

URL материалов ниже приведены для примера. Замените их реальными общедоступными адресами.

Генерация по изображению: один первый кадр

Передайте только один первый кадр; prompt необязателен. Последние, промежуточные кадры и второе изображение не поддерживаются. Не передавайте aspect_ratio / size: используется соотношение сторон первого кадра. Для изменения заранее обрежьте изображение. Ширина и высота первого кадра и референсных изображений должны быть не менее 300px, а соотношение ширины к высоте — от 2:5 до 5:2. Нарушение возвращает HTTP 400 при отправке без списания средств.

Генерация по референсам

До 10 изображений и 5 видеореференсов, всего до 15 материалов. Видеореференсы суммарно не длиннее 20 секунд. Аудиореференсы не поддерживаются. Для звука первого видеореференса добавьте audio_setting: "origin". При origin, если в первом видеореференсе нет аудиодорожки, её не будет и в результате. Ширина и высота первого кадра и референсных изображений должны быть не менее 300px, а соотношение ширины к высоте — от 2:5 до 5:2. Нарушение возвращает HTTP 400 при отправке без списания средств. Видеореференсы: только MP4 / MOV, ширина и высота — каждая в пределах 700–4553px. Длительность определяется по видеопотоку, а не контейнеру: не менее 3 секунд на клип и не более 20 секунд суммарно. Если хотя бы один видеореференс короче 3 секунд, при отправке возвращается HTTP 400 без списания средств.

Редактирование видео

Длительность видеопотока для редактирования должна быть 3–20 секунд. Без duration используется длительность входа с округлением вверх; без aspect_ratio — его соотношение сторон. Редактирование создаёт новый звук, не сохраняя исходный. Не передавайте audio_setting в запросе. Ширина и высота первого кадра и референсных изображений должны быть не менее 300px, а соотношение ширины к высоте — от 2:5 до 5:2. Нарушение возвращает HTTP 400 при отправке без списания средств. Для редактирования подходят MP4 / MOV с шириной и высотой в пределах 700–4553px каждая. Ограничение 3–20 секунд относится к видеопотоку, а не контейнеру. Неверные формат, ширина, высота или длительность входного видео возвращают HTTP 400 при отправке без списания средств.

Продление видео

Создаёт новый фрагмент длиной 3–20 секунд от последнего кадра входного видео и возвращает только этот фрагмент, без исходного видео. Оплата начисляется за новый фрагмент. Изображения, целевой последний кадр, aspect_ratio и audio_setting не поддерживаются; сохраняется исходное соотношение сторон. На вход для продолжения не распространяются ограничения редактирования по высоте и минимуму 3 секунды. Например, можно продолжить видео 480p длительностью 2 секунды.

Запрос состояния задачи

Замените ID задачи в следующем запросе на ID, полученный при отправке:
Используйте проверку задачи. Сохраните task_id и опрашивайте до completed или failed. По результатам тестов 3-секундное видео 720p занимает около 1–4 минут; это ориентир, а не фиксированный срок для признания задачи неуспешной.

Оплата

Посекундная оплата; ставки указаны в тарифах моделей. Обычная генерация и видеовход используют разные ставки. Входные секунды — сумма длительностей видеопотоков с последующим округлением вверх, а не длительностей контейнеров. Редактирование видео длиной 3.04 секунды с duration: 3 оплачивается как 3 + 4 = 7 секунд. При отправке запросов редактирования и генерации с видеореференсами проверяются формат, ширина, высота и длительность видеопотока. Ошибка проверки, формат не MP4 / MOV, ширина или высота вне 700–4553px, сумма более 20 секунд или вход для редактирования короче 3 секунд возвращают HTTP 400 без списания средств. Каждый видеореференс проверяется по длительности видеопотока; клипы короче 3 секунд возвращают HTTP 400 при отправке без списания средств. Неуспешные задачи полностью возмещаются, включая задачи, для которых платформа определила тайм-аут. Прекращение опроса клиентом не отменяет задачу; если позже она завершится успешно, оплата будет обычной.

Неподдерживаемые параметры

Следующие параметры или значения возвращают HTTP 400:
  • resolution: "1080p"
  • last_frame_image, role: "last_frame", role: "keyframe"
  • audio_urls, audio_url
  • mode, negative_prompt, watermark: true, audio: false
  • multi_shot, multi_prompt, element_list, video_list
  • camera_control, voice_list

Частые ошибки