Skip to main content
POST
cURL

Usage notes

  • References: pass 1-7 images in image_urls, or one motion reference video in video_urls plus up to 4 images. With a motion reference, duration is limited to 3-10 seconds and generate_audio is not supported.
  • Referencing inputs: images are numbered image_1..image_N in order and the video is video_1. Use @image_1 / @video_1 in the prompt to point at a specific input.
  • Multi-shot: set multi_shot to true without multi_prompt to let the model split the prompt into shots automatically, or describe up to 6 shots in multi_prompt ({prompt, duration}, up to 512 characters each) whose durations add up to exactly duration.
  • Not supported: negative_prompt (write exclusions into the prompt), audio_urls, and video_url (use video_urls).

Billing

Billed per second of output video; the motion reference video’s own length is not added. The per-second rate depends on the tier: 720p basic, 720p enhanced, 1080p basic, 1080p enhanced, or 4K. The enhanced tier applies when native audio is enabled or any video input is provided. Current prices are shown on the model page.

Task flow

The create call returns data.task_id. Poll Query video task until status is completed (outputs in data.result) or failed, or pass callback_url to be notified when the task reaches a terminal state.

Authorizations

Authorization
string
header
required

Use your APIPod API key as a Bearer token in the Authorization header.

Body

application/json
model
string
required

Public APIPod model ID.

Allowed value: "kling-3.0-omni-r2v"
prompt
string

Text prompt, up to 2,500 characters; required unless multi_prompt is provided. Inputs are numbered automatically: images become image_1..image_N in order and the video becomes video_1; reference them in the prompt as @image_1 or @video_1.

Maximum string length: 2500
image_urls
string[]

Reference image URLs: 1-7 images, or up to 4 images when a motion reference video is provided.

Maximum array length: 7
video_urls
string[]

Optional motion reference video (at most 1). With a motion reference, duration is limited to 3-10 seconds and native audio is not supported.

Maximum array length: 1
duration
integer
default:5

Output duration in seconds (3-15, or 3-10 with a motion reference video). Defaults to 5. With multi_prompt, the shot durations must add up to exactly this value.

Required range: 3 <= x <= 15
resolution
enum<string>
default:720p

Output resolution. Defaults to 720p. The per-second rate depends on the resolution tier.

Available options:
720p,
1080p,
4k
aspect_ratio
enum<string>
default:16:9

Output aspect ratio. Defaults to 16:9.

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

Generate native audio (alias audio). Defaults to false. Not supported when a motion reference video is provided in video_urls. Enabling it uses the enhanced billing tier.

multi_shot
boolean

Enable multi-shot generation (alias multi_shots). Without multi_prompt, the model splits the prompt into shots automatically.

multi_prompt
Multi Prompt · object[]

Shot list for multi-shot generation, up to 6 shots. Each shot is {prompt, duration} with a prompt of up to 512 characters; the shot durations must add up to duration (3-15 seconds).

Maximum array length: 6
watermark
boolean
default:false

When true, an additional watermarked copy is generated and the watermarked copy is returned as the result.

callback_url
string
default:""

HTTPS URL that receives the task's terminal state.

Response

200 - application/json

Task accepted

Standard response for task submission

code
integer
required
data
Task Submit Data · object
required

Data content for task submission

message
string
required