> ## 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 v3.0 Pro image to video

Kling v3.0 Pro image-to-video transforms static images into dynamic videos with natural motion and smooth scene dynamics while maintaining subject consistency. Supports flexible duration from 3 to 15 seconds, synchronized audio-video generation, end frame control, and multi-shot video generation.

<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}>
  First frame image for the video. 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="sound" type="boolean" default={false}>
  Whether to generate audio along with the video.
</ParamField>

<ParamField body="prompt" type="string" required={true}>
  Positive prompt text for video generation. Can describe scene motion, camera movement, actions, voice style, atmosphere, and sound effects. Maximum 2500 characters.
</ParamField>

<ParamField body="duration" type="integer" default={5}>
  Duration of the generated video in seconds. Supports flexible duration from 3 to 15 seconds.

  Range: \[3, 15]
</ParamField>

<ParamField body="cfg_scale" type="number" default={0.5}>
  Controls the flexibility of video generation. Higher values make the generated content adhere more closely to the prompt; lower values produce more natural motion.

  Range: \[0, 1]
</ParamField>

<ParamField body="end_image" type="string">
  End frame image URL for guiding the transition effect. Incompatible with multi\_prompt. Supports `.jpg`, `.jpeg`, `.png`.
</ParamField>

<ParamField body="multi_prompt" type="array">
  List of prompts for multi-shot video generation. Divides the video into multiple shots. Mutually exclusive with prompt.
</ParamField>

<ParamField body="negative_prompt" type="string">
  Negative prompt specifying elements to avoid in the visuals and audio. Maximum 2500 characters.
</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>
