Процесс получения доступа
Чтобы использовать Kling Motion Generation API, сначала перейдите в консоль Ace Data Cloud, чтобы получить ваш API Token, и сохраните его для дальнейшего использования.
Если вы ещё не вошли в систему или не зарегистрировались, вы будете автоматически перенаправлены на страницу входа, где вам будет предложено зарегистрироваться и войти, после завершения вы автоматически вернётесь на текущую страницу.
Один API Token позволяет вызывать все сервисы платформы, нет необходимости подавать отдельную заявку для каждого сервиса. При первом получении предоставляется бесплатный лимит, который можно использовать для бесплатного ознакомления; при недостатке лимита вы можете пополнить общий баланс в консоли.
📘 Полная документация: Kling Motion Generation API →
Базовое использование
Сначала ознакомимся с базовым способом использования: достаточно ввести текст запросаprompt, референсное изображение image_url и ссылку на референсное видео video_url, чтобы получить обработанный результат, затем нам также необходимо ввести модель mode, в настоящее время доступны главным образом модели std, pro, конкретное содержание приведено ниже:

accept: формат результата ответа, который требуется получить; здесь указаноapplication/json, то есть формат JSON.authorization: ключ для вызова API, после получения можно напрямую выбрать из выпадающего списка.
image_url: URL изображения для референса внешности персонажа. Поддерживаются JPG/JPEG/PNG, файл ≤50MB, ширина и высота обе ≥300px, соотношение сторон 1:2.5~2.5:1; персонаж должен чётко отображать верхнюю часть тела или всё тело и голову.video_url: URL референсного видео движения. Поддерживаются MP4/MOV, файл ≤100MB, ширина и высота каждая 340–3850px, не менее 3 секунд; приcharacter_orientation=imageмаксимальная продолжительность 10 секунд, приcharacter_orientation=video— максимальная продолжительность 30 секунд. Рекомендуется использовать непрерывное однокадровое видео, в котором персонаж всегда находится в кадре.mode: режим генерации видео, главным образом существуют стандартный режимstdи сверхбыстрый режимpro.keep_original_sound: можно выбрать, сохранять ли оригинальный звук видео, значения перечисления: yes, no.character_orientation: ориентация персонажа в сгенерированном видео, можно выбрать соответствие изображению или соответствие видео, значения перечисления: image, video.prompt: текст запроса.callback_url: URL, на который необходимо отправить результат обратного вызова.async: необязательно, при установкеtrueинтерфейс немедленно возвращаетtask_id, без необходимости предоставлятьcallback_url, после чего результат получается посредством опроса соответствующего интерфейса запроса задач.

success, состояние задачи генерации видео в данный момент.task_id, ID задачи генерации видео в данный момент.video_id, ID видео задачи генерации видео в данный момент.video_url, ссылка на видео задачи генерации видео в данный момент.duration, длительность видео задачи генерации видео в данный момент.state, статус задачи генерации видео в данный момент.
data результата.
Кроме того, если вы хотите сгенерировать соответствующий код интеграции, можно напрямую скопировать сгенерированный код, например, код CURL выглядит следующим образом:
Асинхронный обратный вызов
Поскольку время генерации Kling Motion Generation API относительно длительное, примерно 1–2 минуты, если API долго не отвечает, HTTP-запрос будет постоянно поддерживать соединение, что приводит к дополнительному потреблению системных ресурсов, поэтому данный API также предоставляет поддержку асинхронного обратного вызова. Общий процесс следующий: когда клиент инициирует запрос, дополнительно указывается полеcallback_url, после того как клиент инициирует API-запрос, API немедленно вернёт результат, содержащий информацию поля task_id, которое представляет ID текущей задачи. После завершения задачи результат генерации видео будет отправлен в виде POST JSON на указанный клиентом callback_url, в нём также содержится поле task_id, таким образом результаты задач могут быть связаны через ID.
Ниже мы на примере ознакомимся с тем, как конкретно выполнять операции.
Сначала, обратный вызов Webhook — это сервис, который может принимать HTTP-запросы, разработчик должен заменить его на URL самостоятельно развёрнутого HTTP-сервера. Здесь для удобства демонстрации используется публичный пример сайта Webhook https://webhook.site/, откройте этот сайт, чтобы получить Webhook URL, как показано на рисунке:
Скопируйте этот 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:Внутренняя ошибка сервера, на сервере что-то пошло не так.

