Skip to main content
POST
/
kling
/
v1
/
videos
/
motion-control
Kling Motion Control Video Task (kling-v3)
curl --request POST \
  --url https://api.powertokens.ai/kling/v1/videos/motion-control \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "model_name": "kling-v3",
  "image_url": "https://example.com/character.png",
  "video_url": "https://example.com/motion.mp4",
  "character_orientation": "video",
  "mode": "std"
}
'
{
  "code": 123,
  "message": "<string>",
  "data": {
    "task_id": "<string>",
    "task_status": "submitted",
    "task_info": {
      "external_task_id": "<string>"
    },
    "created_at": 123,
    "updated_at": 123
  },
  "request_id": "<string>"
}

Authorizations

Authorization
string
header
required

Pass Authorization: Bearer <token> in the request header.

Body

application/json
model_name
enum<string>
required

Model name

Available options:
kling-v3
image_url
string
required

Reference image. The characters, background, and other elements in the generated video will be based on the reference image.

  • Video content requirements:
    • Character proportions should match the reference action proportions; avoid using full-body actions to drive half-body characters
    • Characters must show clear upper body or full body limbs and head, avoid occlusion
    • Avoid extreme character orientations such as upside-down or lying flat; character proportion in frame must not be too low
    • Supports realistic/stylized characters (including humans/humanoid animals/partial animals/characters with humanoid limb proportions)
  • Supports image Base64 encoding or image URL (must be accessible)
  • Note: When using Base64, do not add any prefix (e.g., data:image/png;base64,) before the Base64 string; pass the Base64 encoded string directly.
  • Correct Base64 parameter:

iVBORw0KGgoAAAANSUhEUgAAAAUA...

  • Incorrect Base64 parameter (includes data: prefix):

data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUA...

  • Supported image formats: .jpg / .jpeg / .png
  • Image file size must not exceed 10MB, image dimensions between 300px~65536px, aspect ratio between 1:2.5 ~ 2.5:1
video_url
string
required

Reference video URL. The character motion in the generated video will match the reference video.

  • Video content requirements:
    • Characters must show clear upper body or full body limbs and head, avoid occlusion
    • Recommend uploading single-person action video; for 2+ people, the largest character action will be used
    • Real person actions recommended; some stylized characters/humanoid limb proportions may work
    • Action video should be a single continuous shot with the character always visible; avoid cuts, camera movements, etc., otherwise content will be truncated
    • Avoid excessively fast actions; relatively smooth actions produce better results
  • Video files support .mp4/.mov, file size must not exceed 100MB, both width and height must be between 340px~3850px; validation failures will return error codes
  • Minimum video duration is 3 seconds; maximum duration depends on character orientation reference:
    • When character orientation matches the video character: max 30 seconds
    • When character orientation matches the image character: max 10 seconds
  • If your action difficulty is high or speed is fast, there is a chance the result will be shorter than the uploaded video duration because the model can only extract valid action duration; minimum 3s of usable continuous action is needed. Note that consumed credits cannot be refunded; adjust action difficulty and speed accordingly
  • The system validates video content and will return error codes if issues are found
character_orientation
enum<string>
required

Character orientation in the generated video, can match the image or the video

  • image: Match the character orientation in the image; reference video duration must not exceed 10 seconds
  • video: Match the character orientation in the video; reference video duration must not exceed 30 seconds
  • When referencing elements, the generated video can only reference the character orientation from the video
Available options:
image,
video
mode
enum<string>
required

Video generation mode

  • std: Standard mode, cost-effective
  • pro: Expert mode (high quality), better video quality
Available options:
std,
pro
prompt
string

Text prompt, can include positive and negative descriptions

  • Add elements to the scene or achieve camera movement effects through the prompt
Maximum string length: 2500
element_list
object[]

Element reference list, configured based on element IDs in the element library.

  • Use key:value format:
"element_list":[{ "element_id": 829836802793406551 }]```

- When referencing elements, the generated video can only reference the character orientation from the video
- Currently only supports 1 element
keep_original_sound
enum<string>
default:yes

Whether to keep the original audio of the video.

Available options:
yes,
no
watermark_info
object

Whether to also generate a watermarked result.

callback_url
string

Callback notification URL for this task. If configured, the server will proactively notify when the task status changes.

external_task_id
string

Custom task ID

Response

Task accepted.

code
integer
required

Kling response code. 0 indicates the task has been accepted.

message
string
required

Kling response message.

data
object
required
request_id
string

Upstream request identifier (if provided).