Skip to main content
POST
Animate an image
Track jobs and versions.

Authorizations

Authorization
string
header
required

Create an API key in Studio → account menu → API Keys. Keep it on your server.

Path Parameters

id
string<uuid>
required

Image or asset ID from a previous response. Resource ID.

Body

application/json
prompt
string

Scene and motion direction.

model
enum<string>

Kling 3 returns a standalone job. Kling 2.5 image-to-video returns the parent image with a linked version.

Available options:
kling-2.5,
kling-v3-pro,
kling-v3-standard
Example:

"kling-v3-pro"

duration
integer

Clip duration in seconds. Use 5 for the first request. Supported durations depend on the model.

Example:

5

aspect_ratio
enum<string>

Video output ratio.

Available options:
16:9,
9:16,
1:1
generate_audio
boolean
default:false

Generated audio for models that support it.

multi_prompt
object[]

Kling 3 multi-shot directions. The shot durations determine the total duration. Use a single prompt first.

negative_prompt
string

Optional undesired visual characteristics.

version_id
string<uuid>

Optional version of this image to use as the source. Omit to use the original image.

last_frame_id
string<uuid>

Optional end frame. Its dimensions must match the start frame. Mutually exclusive with last_frame_url.

last_frame_url
string<uri>

Direct end-frame URL. The same media constraints apply.

resolution
string

Optional output quality; supported values depend on the video model.

elements
object[]

Kling 3 subject references. Provide an asset or direct image references for each element.

avatar_text
string

Additional avatar directions for supported video models.

outfit_text
string

Additional outfit directions for supported video models.

Response

Kling 3 returns a new pending video Image directly; poll its id. Kling 2.5 returns the parent Image with a linked version; poll that version’s source_image_id. HTTP 200 means accepted, not finished. Start/end frames must be at least 300 × 300 pixels, no larger than 10 MiB, with width/height between 0.4 and 2.5. When both frames are supplied, their dimensions must match.

id
string<uuid>
required

Resource ID.

status
enum<string>
required

Job state. Only completed has a finished result.

Available options:
pending,
generating,
completed,
failed,
policy_blocked,
nsfw_filtered
path
string | null

Result URL. Can be null while the job is pending.

watermarked_path
string | null
width_px
integer | null
height_px
integer | null
size_bytes
integer | null
extension
string | null
is_generated
boolean
for_training
boolean

Whether the upload is a reusable asset reference.

task
string | null

Operation that created this job.

type
string | null
created_timestamp
string<date-time>
finish_timestamp
string<date-time> | null
fail_reason
string | null

Human-readable failure detail.

failure_code
enum<string> | null

Machine-readable failure category, when available.

Available options:
input_rejected,
provider_unavailable,
queue_timeout,
policy_blocked
asset_ids
string<uuid>[] | null

Linked reusable assets.

Resource ID.

versions
object[]

Related versions. May be omitted or empty. Never infer a new version is completed from the parent status.