Процес подачі заявки
Щоб використовувати Kling Videos Generation API, спочатку перейдіть до консолі Ace Data Cloud для отримання вашого API Token, зберігайте його для подальшого використання.
Якщо ви ще не увійшли в систему або не зареєстровані, вас автоматично перенаправлять на сторінку входу, щоб запросити реєстрацію та вхід, після чого ви будете автоматично повернені на цю сторінку.
Один API Token дозволяє викликати всі послуги платформи, не потрібно окремо подавати заявку на кожну послугу. Перший запит на отримання токена надає безкоштовний ліміт, щоб ви могли безкоштовно протестувати; якщо ліміт вичерпано, ви можете поповнити загальний баланс на консолі.
📘 Повна документація: Kling Videos Generation API →
Основне використання
Спочатку розгляньте основний спосіб використання, а саме введення підказкиprompt, дії action, URL-адреси зображення для першого кадру start_image_url та моделі model, щоб отримати оброблений результат. Спочатку потрібно просто передати поле action, значення якого буде text2video, яке включає три основні дії: створення відео з тексту (text2video), створення відео з зображення (image2video), розширене відео (extend). Потім потрібно ввести модель model, наразі основні моделі: kling-v1, kling-v1-6, kling-v2-master, kling-v2-1-master, kling-v2-5-turbo, kling-v2-6, kling-v3, kling-v3-omni, kling-o1, деталі наведені нижче:

accept: формат відповіді, який ви хочете отримати, тут вказаноapplication/json, тобто формат JSON.authorization: ключ для виклику API, після подачі заявки ви можете вибрати його зі списку.
model: модель для генерації відео, основні моделі:kling-v1,kling-v1-6,kling-v2-master,kling-v2-1-master,kling-v2-5-turbo,kling-v2-6,kling-v3,kling-v3-omni,kling-o1.mode: режим генерації відео, можливі значення: стандартний режимstd, режим високої швидкостіproта рідний 4K режим4k. Режим4kпідтримується лише дляkling-v3таkling-v3-omni, і не сумісний зcamera_control(управління камерою).action: дія для цього завдання генерації відео, основні дії: створення відео з тексту (text2video), створення відео з зображення (image2video), розширене відео (extend).start_image_url: при виборі дії створення відео з зображенняimage2videoнеобхідно завантажити URL-адресу зображення для першого кадру.end_image_url: необов’язковий для відео з зображення, вказує на останній кадр.duration: тривалість відео, в секундах.kling-v3таkling-v3-omniпідтримують тривалість від 3 до 15 секунд;kling-o1підтримує лише 5 секунд; інші моделі підтримують 5 або 10 секунд.generate_audio: чи потрібно синхронно генерувати аудіо, необов’язкове, булеве значення. Підтримуєтьсяkling-v3,kling-v3-omniтаkling-v2-6(лише в режимі pro). За замовчуваннямfalse.aspect_ratio: співвідношення сторін відео, необов’язкове, підтримує16:9,9:16,1:1, за замовчуванням16:9.cfg_scale: сила кореляції, діапазон [0,1], чим більше, тим більше відповідності підказці.camera_control: необов’язкове, параметри для контролю руху камери, підтримує типи/simple налаштування, а також horizontal, vertical, pan, tilt, roll, zoom тощо.negative_prompt: необов’язкове, небажані зворотні підказки, максимум 200 символів.image_list: список зображень для Omni, підходить для моделейkling-o1таkling-v3-omni, деталі див. нижче в розділі «Omni універсальні посилання».video_list: список відео для Omni (підтримує редагування відео), підходить для моделейkling-o1таkling-v3-omni, деталі див. нижче в розділі «Omni універсальні посилання».prompt: підказка.callback_url: URL-адреса для отримання результатів.async: необов’язкове, якщо встановитиtrue, інтерфейс негайно повернеtask_id, не потрібно надаватиcallback_url, потім через відповідний інтерфейс запиту завдань можна опитувати для отримання результатів.

success, статус завдання генерації відео.task_id, ID завдання генерації відео.video_id, ID відео для завдання генерації.video_url, URL-адреса відео для завдання генерації.duration, тривалість відео для завдання генерації.state, статус завдання генерації відео.
data.
Крім того, якщо ви хочете згенерувати відповідний код інтеграції, ви можете просто скопіювати його, наприклад, код CURL виглядає так:
Матриця можливостей моделей
Різні моделі мають різний рівень підтримки параметрів. Наступна матриця була складена з документації моделей відео Kling, перед викликом будь ласка, перевірте, чи підтримує ваша комбінаціяmodel / mode / duration необхідні вам функції, інакше ви отримаєте помилку на кшталт model/mode/duration(...) is not supported with image_tail.
Зверніть увагу:
mode=4kпідтримується лишеkling-v3таkling-v3-omni; і є несумісним зcamera_control(управлінням камерою).end_image_urlможе використовуватися лише зaction=image2videoу поєднанні зstart_image_url. Передача лишеend_image_url(безstart_image_url) буде відхилена.kling-v3/kling-v3-omniприймають будь-яке ціле числоdurationвід 3 до 15 секунд;kling-o1приймає лише 5; інші моделі приймають лише 5 або 10.generate_audioза замовчуваннямfalse. Лишеkling-v3,kling-v3-omniтаkling-v2-6(pro режим) підтримують.
Розширені функції відео
Якщо ви хочете продовжити генерацію вже створеного відео Kling, ви можете встановити параметрaction на extend і ввести ID відео, яке потрібно продовжити, ID відео можна отримати за основним використанням, як показано на малюнку нижче:

Зверніть увагу, що video_id у цьому відео є ID згенерованого відео, якщо ви не знаєте, як згенерувати відео, ви можете звернутися до основного використання, описаного вище.
Далі ми повинні заповнити наступні кроки, щоб розширити підказки для налаштування генерації відео, можна вказати такі дані:
model: модель для генерації відео, основні моделі -kling-v1,kling-v1-5таkling-v1-6.mode: режим генерації відео, можливі значення - стандартний режимstd, швидкісний режимproта рідний 4K режим4k(лишеkling-v3таkling-v3-omniпідтримують, несумісний з управлінням камерою).duration: тривалість відео для цього завдання, основні значення - 5с та 10с.start_image_url: коли вибирається дія перетворення зображення в відеоimage2video, необхідно завантажити посилання на зображення першого кадру.prompt: підказка.


Omni універсальні посилання (відео редагування / відео посилання / багато зображень посилання)
kling-o1 та kling-v3-omni є двома незалежними моделями, обидві підтримують можливість «універсального посилання». На основі текстового відео (action=text2video) можна додатково передати зображення або відео для посилання, реалізуючи багато зображень посилання, відео посилання та безпосереднє редагування існуючого відео.
Основна угода: посилання на матеріали повинні бути вказані в prompt у формі <<<image_1>>>, <<<video_1>>> (нумерація з 1) для відповідних позицій у image_list / video_list, лише тоді модель застосує ці посилання. Якщо передати лише матеріали без посилання в підказці, матеріали будуть проігноровані.
Інформація про безпеку: поточний API не відкриваєЗапити Omni не підтримуютьelement_list. ID бібліотеки Kling Element не є ізольованими для орендарів, до надання API управління елементами з ізоляцією орендарів, будь ласка, використовуйтеimage_listдля передачі основного зображення.
negative_prompt, cfg_scale або camera_control, також не можна використовувати mode=4k. Якщо включено відео посилання, generate_audio має бути false.
Відео посилання та редагування відео (video_list)
video_list використовується для передачі посилань на референсні відео, це найпоширеніший сценарій використання цієї можливості, поля елементів масиву такі:
video_url:посилання на референсне відео, не може бути порожнім. Максимум 1 MP4/MOV відео, розмір файлу ≤200MB, частота кадрів 24–60fps.kling-o1вимагає тривалість 3–10 секунд, ширина і висота по 700–2160px;kling-v3-omniвимагає тривалість 3–15.5 секунд, ширина і висота по 700–4553px, загальна кількість пікселів ≤8,294,400, співвідношення сторін 0.4–2.refer_type:тип посилання, може бутиbase(за замовчуванням, базове відео для редагування, тобто “пряме редагування відео”, можна додавати/видаляти/змінювати елементи, змінювати композицію, стиль, колір, погоду тощо) абоfeature(референс за характеристиками, посилання на його стиль / операторську роботу / продовження наступного кадру).keep_original_sound:чи зберігати оригінальний звук відео, може бутиyes(зберегти) абоno(видалити).
Увага: якщо є референсне відео,Приклад CURL для редагування існуючого відео (перетворення відео в аніме стиль):generate_audioмає бутиfalse. Відео зrefer_type=baseне може мати вказані перший/остання кадри.
Багато зображень для посилання (image_list)
image_list використовується для передачі референсних зображень (елементи / сцени / стилі тощо), поля елементів масиву такі:
image_url:посилання на референсне зображення, не може бути порожнім. Вимоги: формат .jpg/.jpeg/.png; розмір файлу ≤10MB; найменша сторона ≥300px; співвідношення сторін 1:2.5 ~ 2.5:1.type:необов’язковий. Якщо не передати, вважається чистим референсним зображенням; якщо передатиfirst_frame/end_frame, то відповідно буде використовуватися як перший/остання кадр (еквівалентноstart_image_url/end_image_url).
prompt посилатися на <<<image_1>>>, <<<image_2>>>. Обмеження кількості: якщо немає референсного відео, референсних зображень ≤ 7; якщо є референсне відео, референсних зображень ≤ 4. Якщо передаються лише перший/остання кадри, також можна безпосередньо використовувати start_image_url / end_image_url, але останній кадр повинен використовуватися разом з першим.
Увага: якщо одночасно передаютьсяПриклад CURL для генерації відео з багатьма зображеннями:start_image_url/end_image_urlтаimage_list, перший/остання кадри будуть передуватиimage_list, що може вплинути на відповідність порядку<<<image_N>>>. Рекомендується обрати один варіант: якщо потрібні перший/остання кадри, безпосередньо вказати вimage_listза допомогоюtype, не змішуючи зstart_image_url/end_image_url.
Асинхронний зворотний виклик
Оскільки час генерації відео за допомогою Kling Videos Generation API відносно довгий, приблизно 1-2 хвилини, якщо API довго не відповідає, HTTP запит буде постійно підтримувати з’єднання, що призведе до додаткових витрат системних ресурсів, тому цей API також підтримує асинхронний зворотний виклик. Загальний процес: коли клієнт ініціює запит, додатково вказується полеcallback_url, після ініціації API запит поверне результат, що містить поле task_id, яке представляє поточний ID завдання. Коли завдання завершено, результат генерації відео буде надіслано на вказаний клієнтом callback_url у форматі POST JSON, в якому також міститься поле task_id, таким чином результати завдання можна пов’язати за ID.
Далі ми розглянемо приклад, щоб зрозуміти, як це працює.
По-перше, Webhook зворотний виклик - це сервіс, який може приймати HTTP запити, розробники повинні замінити його на URL свого HTTP сервера. Для зручності демонстрації використовується публічний веб-сайт з прикладом Webhook https://webhook.site/, відкривши цей сайт, ви отримаєте URL Webhook, як показано на малюнку:
Скопіюйте цей URL, і ви зможете використовувати його як Webhook, приклад тут: https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3.
Далі ми можемо встановити поле callback_url на вказаний Webhook URL, одночасно заповнивши відповідні параметри, конкретний зміст, як показано на малюнку:

https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3, як показано на малюнку:
Зміст такий:
task_id, інші поля схожі на вищезгадані, за допомогою цього поля можна реалізувати зв’язок завдання.
Обробка помилок
При виклику API, якщо виникає помилка, API поверне відповідний код помилки та інформацію. Наприклад:400 token_mismatched:Неправильний запит, можливо, через відсутні або недійсні параметри.400 api_not_implemented:Неправильний запит, можливо, через відсутні або недійсні параметри.401 invalid_token:Неавторизовано, недійсний або відсутній токен авторизації.429 too_many_requests:Занадто багато запитів, ви перевищили ліміт запитів.500 api_error:Внутрішня помилка сервера, щось пішло не так на сервері.

