> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xhuoapi.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Инструкция по интеграции API генерации движений Kling

> Kling video generation 集成指南 - XHuoAPI

В этой статье будет представлена инструкция по интеграции API генерации движений Kling, который позволяет генерировать видео от Kling, вводя пользовательские параметры.

## Процесс подачи заявки

Чтобы использовать API, сначала необходимо перейти на соответствующую страницу [Kling Motion Generation API](https://api.xhuoapi.ai/documents/d3f2c369-102d-4856-9565-702ac5f2df63) и подать заявку на соответствующую услугу. После перехода на страницу нажмите кнопку «Acquire», как показано на изображении:

![](https://cdn.xhuoapi.ai/q6ytrc.png)

Если вы еще не вошли в систему или не зарегистрированы, вас автоматически перенаправит на страницу входа, где вас пригласят зарегистрироваться и войти. После входа или регистрации вы автоматически вернетесь на текущую страницу.

При первой подаче заявки предоставляется бесплатный лимит, который позволяет бесплатно использовать этот API.

## Основное использование

Сначала ознакомьтесь с основным способом использования, который заключается в вводе подсказки `prompt`, URL изображения `image_url` и ссылки на видео `video_url`, чтобы получить обработанный результат. Затем нам также нужно ввести модель `mode`, в настоящее время доступны основные модели `std` и `pro`, конкретное содержание представлено ниже:

<p>
  <img src="https://cdn.xhuoapi.ai/5qlpjt.png" width="500" className="m-auto" />
</p>

Как видно, здесь мы настроили заголовки запроса, включая:

* `accept`: формат ответа, который вы хотите получить, здесь указано `application/json`, то есть формат JSON.
* `authorization`: ключ для вызова API, который можно выбрать из выпадающего списка после подачи заявки.

Кроме того, настроено тело запроса, включая:

* `image_url`: эталонное изображение, элементы, такие как персонажи и фон в генерируемом видео, будут основаны на этом изображении.
* `video_url`: ссылка на эталонное видео. Движения персонажей в генерируемом видео будут соответствовать эталонному видео.
* `mode`: режим генерации видео, в основном стандартный режим `std` и режим высокой скорости `pro`.
* `keep_original_sound`: возможность выбора, сохранять ли оригинальный звук видео, возможные значения: yes, no.
* `character_orientation`: ориентация персонажей в генерируемом видео, можно выбрать соответствие изображению или видео, возможные значения: image, video.
* `prompt`: подсказка.
* `callback_url`: URL для обратного вызова результата.

После выбора можно увидеть, что справа также сгенерирован соответствующий код, как показано на изображении:

<p>
  <img src="https://cdn.xhuoapi.ai/buwczd.png" width="500" className="m-auto" />
</p>

Нажмите кнопку «Try», чтобы провести тестирование, как показано на изображении выше, и мы получили следующий результат:

```json theme={null}
{
  "success": true,
  "video_id": "842578800134742051",
  "video_url": "https://v4-fdl.kechuangai.com/ksc2/yGPGHvUVDQEzDCs6tC0rYIbd_JwWNFaF8BEYAlw_xVcWX72xFuIUVqB_Hp5Sa7YEijI-yXqfKI92WW7bmyeCtpMjSOImlOFpQCmMUa-9iojt_ifXJnex_tvNkA0ZlJmuJLpeOfvX3j8d9oeeWgLeU3ftzBjQq1g9OC9FU92OfjRQLUTSzfWRzkhzirV32BT-BwfxgqJKsUD-WHxjqCJmOw.mp4?cacheKey=ChtzZWN1cml0eS5rbGluZy5tZXRhX2VuY3J5cHQSsAHtyCrKxB23NXn5ddMedV5Mw4pp_kOk_TRbCVA-wO9LJZuga8_KxXCzhw6bU3hS1V5PpNoSTxSkm_E80i5U1PkJ5d444cjPvoIq2VboPqCip2QbsoiVMu6CuGP7tB7fStLbezBNA4lQtHeSVPxWTE7Hy0wbJ33tKlf-X_-1ad3u0cyHfT_8EroD4iYZ1ZVasuYxAKjcdmbbVZ7NlDK9rqyI5euyz-70-M-QM5Lk6l88SRoSS2Y9drB8Z4ednHxTIh7XZcnaIiB5Xf4Mv8Rc51nUyIC5lKp02LP7oViCg6OaAhR4ynNJkCgFMAE&x-kcdn-pid=112757&pkey=AAX8ukavvkZsIz-IUg2pTvMOAV7LVItIdg_5TUYhGA1YINT8x-SR7rXY7BWLKqspLTYIjK7C0SjbXtX25Lm4_sx2V229AIyfVzjrlQQ7IjPsxvAv9cTG72YN0TPSjVowBZQ",
  "duration": "5.066",
  "state": "succeed",
  "task_id": "363c7a84-e880-472e-a4d4-098e50cfc292"
}
```

Возвращаемый результат содержит несколько полей, описание которых приведено ниже:

* `success`: статус задачи по генерации видео.
* `task_id`: ID задачи по генерации видео.
* `video_id`: ID видео, сгенерированного в рамках задачи.
* `video_url`: ссылка на сгенерированное видео.
* `duration`: продолжительность сгенерированного видео.
* `state`: статус задачи по генерации видео.

Как видно, мы получили удовлетворительную информацию о видео, и нам нужно просто получить сгенерированное видео Kling по ссылке `video_url` из результата.

Кроме того, если вы хотите сгенерировать соответствующий код интеграции, вы можете просто скопировать его, например, код CURL будет следующим:

```shell theme={null}
curl -X POST 'https://api.xhuoapi.ai/v1/kling/motion' \
-H 'accept: application/json' \
-H 'authorization: Bearer {token}' \
-H 'content-type: application/json' \
-d '{
  "image_url": "https://sourceyoya.wenge.com/2025/06/03/683e9f76e4b0684509ab1aca.jpg",
  "video_url": "https://cdn.xhuoapi.ai/odwfm5.mp4",
  "prompt": "让画面生动起来",
  "mode": "std",
  "character_orientation": "image"
}'
```

## Асинхронный обратный вызов

Поскольку время генерации API Kling Motion Generation относительно длительное, примерно 1-2 минуты, если API долго не отвечает, HTTP-запрос будет поддерживать соединение, что приведет к дополнительному потреблению системных ресурсов. Поэтому этот API также предоставляет поддержку асинхронного обратного вызова.

Общий процесс таков: когда клиент инициирует запрос, дополнительно указывается поле `callback_url`. После того как клиент инициирует запрос API, API немедленно возвращает результат, содержащий информацию о поле `task_id`, представляющем текущий ID задачи. Когда задача завершена, результат сгенерированного видео будет отправлен на указанный клиентом `callback_url` в формате POST JSON, который также включает поле `task_id`, что позволяет связать результаты задачи по ID.

Ниже мы рассмотрим пример, чтобы понять, как это работает.

Во-первых, обратный вызов Webhook — это служба, которая может принимать HTTP-запросы, разработчики должны заменить ее на URL своего собственного HTTP-сервера. Для удобства демонстрации используется публичный сайт примера Webhook [https://webhook.site/](https://webhook.site/), открыв который, вы получите URL Webhook, как показано на изображении:

![](https://cdn.xhuoapi.ai/tbcnai.png)
Скопируйте этот URL, чтобы использовать его в качестве Webhook, пример здесь: `https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3`.

Далее мы можем установить поле `callback_url` на указанный Webhook URL и заполнить соответствующие параметры, конкретное содержание показано на изображении:

<p>
  <img src="https://cdn.xhuoapi.ai/vdx12s.png" width="500" className="m-auto" />
</p>

Нажмите "Запустить", и вы сразу получите результат, как показано ниже:

```
{
  "task_id": "20068983-0cc9-4c6a-aeb6-9c6a3c668be0"
}
```

Подождите немного, и мы можем наблюдать результат генерации видео на `https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3`, как показано на изображении:

![](https://cdn.xhuoapi.ai/zv5u2q.png)

Содержимое следующее:

```json theme={null}
{
    "success": true,
    "video_id": "030bb06d-98d4-4044-9042-0aa0822e8c8c",
    "video_url": "https://cdn.klingai.com/bs2/upload-kling-api/7822108635/text2video/CjJzzGfBfqcAAAAAAKdVMQ-0_raw_video_1.mp4",
    "duration": "5.1",
    "state": "succeed",
    "task_id": "20068983-0cc9-4c6a-aeb6-9c6a3c668be0"
}
```

Можно увидеть, что в результате есть поле `task_id`, остальные поля аналогичны вышеупомянутым, через это поле можно связать задачи.

## Обработка ошибок

При вызове API, если возникнет ошибка, API вернет соответствующий код ошибки и информацию. Например:

* `400 token_mismatched`: Неверный запрос, возможно, из-за отсутствующих или недействительных параметров.
* `400 api_not_implemented`: Неверный запрос, возможно, из-за отсутствующих или недействительных параметров.
* `401 invalid_token`: Неавторизован, недействительный или отсутствующий токен авторизации.
* `429 too_many_requests`: Слишком много запросов, вы превысили лимит частоты.
* `500 api_error`: Внутренняя ошибка сервера, что-то пошло не так на сервере.

### Пример ответа об ошибке

```json theme={null}
{
  "success": false,
  "error": {
    "code": "api_error",
    "message": "fetch failed"
  },
  "trace_id": "2cf86e86-22a4-46e1-ac2f-032c0f2a4e89"
}
```

## Заключение

С помощью этого документа вы узнали, как использовать API Kling Motion Generation для реализации функций управления движением от Kling. Надеемся, что этот документ поможет вам лучше интегрировать и использовать данный API. Если у вас есть какие-либо вопросы, пожалуйста, свяжитесь с нашей технической поддержкой.
