Skip to main content
Transforms reference images into dynamic video sequences. Preserves identity, layout, and text from reference images while adding realistic motion, camera movements, and scene progression. Supports multi-shot generation with per-shot prompts and durations, and optional native audio (Chinese/English). Model name: kling-video-o3-pro-reference-to-video

Endpoint

Video generation is synchronous, the request blocks until the video is ready (typically 1-5 minutes). It is recommended to use /ai/queue instead for long-running jobs, so that you don’t have long running http requests.

Request Parameters

prompt vs multi_prompt

Use either prompt or multi_prompt, not both. Sending both returns:
Sending neither (or an empty multi_prompt: []) returns:
When using prompt, the duration defaults to 5 seconds. Override with duration:

multi_prompt

Array of shot objects. Each shot generates a segment of the video.

Duration Constraints

Individual shots can be as short as 1 second, as long as the total across all shots is between 3 and 15 seconds. When total duration is too short:
When total duration exceeds 15 seconds:
When a single shot exceeds 15 seconds:

elements

Array of element objects for character/object reference. Use @Element1, @Element2, etc. in prompts. Maximum 4 total images across all elements and input_image references.

Examples

Minimal: text only

input_image is optional. Without it the model generates purely from the prompt.

Single prompt with reference image

Multi-shot with reference image

With start/end frames and elements

Response (response_format: "url")

The URL is a temporary link that expires after a period of time.

Response (response_format: "b64_json")

Using with /ai/queue

Recommended for video generation. Returns immediately, processes in the background.

Enqueue

Poll

A generation is done when its status is succeeded, failed, or cancelled. On success, result_url points to the output file.

Cancel

Errors

Other Kling Models

The O3 Pro models produce higher quality output than v2.x but cost roughly 3x more per second.