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

# Kling V2.6 Pro Motion Control

This is an async API that only returns the `task_id` of the async task.

<Tip>
  This is an **async** API that only returns the task\_id of the async task. Use the task\_id to call the [Get Async Task Result API](/docs/models/reference-get-async-task-result) to retrieve the generated result.
</Tip>

## Request Headers

<ParamField header="Content-Type" type="string" required={true}>
  Enum: `application/json`
</ParamField>

<ParamField header="Authorization" type="string" required={true}>
  Bearer authentication format: Bearer \{\{API Key}}.
</ParamField>

## Request Body

<ParamField body="image" type="string" required={true}>
  Reference image URL or base64-encoded image. Supports `.jpg`, `.jpeg`, `.png`.
  File size must not exceed 10MB. Width and height must be >= 300px. Aspect ratio must be between 1:2.5 and 2.5:1.
</ParamField>

<ParamField body="video" type="string" required={true}>
  Reference motion video URL. Supports `.mp4`, `.mov`.
  File size must not exceed 10MB. Width and height must be >= 300px. Duration: 3-30 seconds.
</ParamField>

<ParamField body="prompt" type="string">
  Positive prompt for scene description, style, lighting, etc.
</ParamField>

<ParamField body="negative_prompt" type="string">
  Negative prompt. Maximum 2500 characters.
</ParamField>

<ParamField body="keep_original_sound" type="boolean" default={true}>
  Whether to keep the original audio from the reference video.
</ParamField>

<ParamField body="character_orientation" type="string" required={true}>
  Output frame mode:

  * `image`: matches the framing of the reference image (outputs 5 seconds)
  * `video`: matches the framing of the reference video (up to 30 seconds)

  Possible values: `image`, `video`
</ParamField>

## Response

<ResponseField name="task_id" type="string" required={true}>
  Use the task\_id to call the [Get Async Task Result API](/docs/models/reference-get-async-task-result) to retrieve the generated output.
</ResponseField>
