Skip to content

Kling Video O3 Standard

POST/v1/run

Kling Video O3 Standard is KwaiVGI's video-to-video AI model. Transform, enhance, and edit video content using text prompts - from style changes to object manipulation and scene modification.

Request body

Submit an async generation request. The model field selects the model; other fields are model-specific input parameters.

stringmodelrequired

Model identifier. Set to kwaivgi/kling-video/o3/standard/video-to-video.

Default: kwaivgi/kling-video/o3/standard/video-to-video

stringpromptrequired

Text prompt for video generation. Reference video as @Video1.

Optional<array<string>>images

Reference images for style/appearance. Reference in prompt as @Image1, @Image2, etc. Maximum 4 total (elements + reference images) when using video.

Optional<string>video

Reference video URL. Only .mp4/.mov formats, 3-10s duration, 720-2160px resolution, max 200MB.

Optional<integer>duration

Video duration in seconds (3-15s for reference video).

Allowed values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15

Optional<string>shot_type

The type of multi-shot video generation.

Default: customize

Optional<boolean>keep_audio

Whether to keep the original audio from the reference video.

Default: true

Optional<string>aspect_ratio

The aspect ratio of the generated image.

Allowed values: 16:9, 9:16, 1:1

Response Schema

The submit endpoint returns a run response. If its status is pending or running, poll GET /v1/run/{id} with the returned opaque ID until it reaches a terminal state.

stringidrequired

Opaque SandBase run identifier. Use it exactly as returned; no prefix is guaranteed.

stringstatusrequired

Current public run status.

Allowed values: pending, running, completed, failed, timeout

Optional<string>model

Public SandBase model name used for this run.

Optional<array<object>>outputs

Present only for completed runs. Each object is capability-specific; inspect the selected model schema for its fields.

Optional<object>error

Present only for failed or timeout runs. Contains a public error type and sanitized message.

Optional<string>error.type

Stable public error category.

Optional<string>error.message

Sanitized error message safe to show to clients.

Optional<object>usage

Usage details when available.

Model capabilities

array<string>capability_tagsrequired

Capabilities declared by the model registry.

Default: video-to-video

stringexecution_moderequired

Execution mode declared by the model registry.

Default: async