AI Model APIVideoKling Video
Kling Motion Control
Channel type: Kling Extended (66) Gateway path:
POST https://maasunion.com/kling/v1/extended/videos/motion-control·GET .../motion-control/{task_id}Official upstream:https://api-beijing.klingai.com(/v1/videos/motion-control)
Overview
The motion control capability is based on a person reference image and a motion reference video, transferring the reference motion onto the specified person to generate a video.
Authentication
| Header | Required | Description |
|---|---|---|
Authorization | Yes | Bearer {your_api_token} |
Content-Type | Required for POST | application/json |
Create Task
POST https://maasunion.com/kling/v1/extended/videos/motion-control
Request Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
model_name | string | Yes | Model name, e.g. kling-v2-6 |
image_url | string | Yes | Person reference image URL |
prompt | string | No | Motion description prompt |
video_url | string | Yes | Motion reference video URL |
keep_original_sound | string | No | Keep original sound: yes / no |
character_orientation | string | No | Character orientation: image |
mode | string | No | std / pro / 4k |
callback_url | string | No | Callback URL |
external_task_id | string | No | Custom task ID |
Request Example
curl --request POST \
--url "https://maasunion.com/kling/v1/extended/videos/motion-control" \
--header "Authorization: Bearer {your_api_token}" \
--header "Content-Type: application/json" \
--data '{
"model_name": "kling-v2-6",
"image_url": "https://example.com/person.jpg",
"prompt": "人物跟随参考视频中的动作",
"video_url": "https://example.com/motion-ref.mp4",
"keep_original_sound": "yes",
"character_orientation": "image",
"mode": "pro"
}'Create Response
{
"code": 0,
"message": "string",
"request_id": "string",
"data": {
"task_id": "gateway_public_task_id",
"task_status": "submitted",
"created_at": 1722769557708,
"updated_at": 1722769557708
}
}Query Task
GET https://maasunion.com/kling/v1/extended/videos/motion-control/{task_id}
curl --request GET \
--url "https://maasunion.com/kling/v1/extended/videos/motion-control/{task_id}" \
--header "Authorization: Bearer {your_api_token}"The query response returns the generated video in task_result.videos, with the same structure as the standard video:
{
"code": 0,
"data": {
"task_id": "gateway_public_task_id",
"task_status": "succeed",
"task_result": {
"videos": [
{ "id": "string", "url": "string", "watermark_url": "string", "duration": "5" }
]
},
"final_unit_deduction": "string"
}
}Task Status
task_status | Meaning |
|---|---|
submitted | Submitted |
processing | Processing |
succeed | Succeeded |
failed | Failed |
For more general information, see Kling Gateway Overview.
How is this guide?