Skip to main content
POST
cURL
Use POST /omni-video/{model} to create an asynchronous Kling Omni video task. Place the model ID in the URL and provide the input in contents.

Choose a model

  • kling-3.0-omni: 720p, 1080p, or 4k; 3-15 seconds; native, original, or off audio.
  • kling-o1: 720p or 1080p; 3-10 seconds; original or off audio.
The text-only example uses kling-3.0-omni. To create a silent video, set settings.audio to off.

Request parameters

For kling-3.0-omni, a feature_video input requires settings.multi_shot: true and settings.audio: off. A base_video input requires settings.multi_shot: false and cannot use settings.audio: native. Do not combine base_video with a first or last frame. The official default for kling-3.0-omni is multi_shot: true; set the field explicitly when you need a defined shot mode. For kling-o1, prompts can contain up to 2500 characters. If the request contains only a first_frame and no other reference image or video, use a duration of 5 or 10 seconds. To create a five-second text-only video, send this request body to POST /omni-video/kling-3.0-omni:
The response returns an id for the asynchronous task:
Use the data.id value with Get a Kling task until the task completes. Read the finished video URL from the task’s outputs array. Store the video in your own storage if you need durable access. The OpenAPI panel contains matching Shell, Python, and JavaScript requests. For more input combinations, see the Kling 3.0 Omni video API reference or Kling O1 Omni video API reference.

Authorizations

Authorization
string
header
required

Authenticate with your CometAPI API key.

Path Parameters

model
enum<string>
required

Kling Omni model ID. The selected model controls resolution, duration, and audio choices.

Available options:
kling-3.0-omni,
kling-o1

Body

application/json

Omni video request fields exposed by the CometAPI route. The model ID is a path parameter, not a body field.

contents
object[]
required

Video input items. Send a prompt item for text-only generation.

Minimum array length: 1
settings
object

Output settings exposed by the CometAPI route. Set model-specific fields explicitly for the intended result.

options
object

Optional task fields exposed by the CometAPI route.

Response

200 - application/json

Task created. Store data.id for a GET /tasks query.

code
required

Result code. 0 indicates task creation.

message
string
required

Result message.

data
object
required

Task identification and submission status.

msg
string

Additional result message, when included.

Last modified on September 25, 2026