Skip to main content
POST
/
v1
/
ai
/
video
/
kling-v3-omni-std
Kling 3 Omni Standard - Generate video from text or image
curl --request POST \
  --url https://api.freepik.com/v1/ai/video/kling-v3-omni-std \
  --header 'Content-Type: application/json' \
  --header 'x-freepik-api-key: <api-key>' \
  --data '
{
  "webhook_url": "<string>",
  "prompt": "<string>",
  "multi_prompt": [
    "<string>"
  ],
  "shot_type": "customize",
  "image_url": "<string>",
  "start_image_url": "<string>",
  "end_image_url": "<string>",
  "image_urls": [
    "<string>"
  ],
  "elements": [
    {
      "reference_image_urls": [
        "<string>"
      ],
      "frontal_image_url": "<string>"
    }
  ],
  "generate_audio": true,
  "voice_ids": [
    "<string>"
  ],
  "aspect_ratio": "16:9",
  "duration": "5"
}
'
"<unknown>"

Authorizations

x-freepik-api-key
string
header
required

Your Freepik API key. Required for authentication. Learn how to obtain an API key

Body

application/json
webhook_url
string<uri>

Optional callback URL that receives asynchronous notifications when the task changes status. The payload includes the task status and result URL when completed.

prompt
string

Text prompt describing the desired video content. Maximum 2500 characters.

Usage by mode:

  • Text-to-video: Required unless multi_prompt is provided
  • Image-to-video: Either prompt or multi_prompt must be provided, but not both
Maximum string length: 2500
multi_prompt
string[]

List of prompts for multi-shot video generation. Each item is a string prompt for that shot. Use with shot_type to control multi-shot behavior.

Maximum array length: 6
shot_type
enum<string>
default:customize

The type of multi-shot video generation. Currently only 'customize' is supported for Omni.

Available options:
customize
image_url
string

URL of the start frame image for image-to-video generation. Required for image-to-video mode.

Image requirements:

  • Minimum: 300x300 pixels
  • Maximum: 10MB file size
  • Formats: JPG, JPEG, PNG
start_image_url
string

Image to use as the first frame of the video. Use together with end_image_url to control both start and end frames in image-to-video mode.

end_image_url
string

Image to use as the last frame of the video. Optional for image-to-video mode to guide the final frame.

image_urls
string[]

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

elements
object[]

Elements (characters/objects) to include for consistent identity across the video. Reference in your prompt as @Element1, @Element2, etc.

generate_audio
boolean

Whether to generate native audio for the video.

voice_ids
string[]

Optional Voice IDs for video generation. Reference voices in your prompt with <<<voice_1>>> and <<<voice_2>>>. Maximum 2 voices per task.

aspect_ratio
enum<string>
default:16:9

Aspect ratio for Kling V3 Omni video generation:

  • auto: Automatically match the input image aspect ratio (image-to-video only)
  • 16:9: Landscape (widescreen)
  • 9:16: Portrait (vertical)
  • 1:1: Square
Available options:
auto,
16:9,
9:16,
1:1
duration
enum<string>
default:5

Duration of the generated video in seconds.

Range: 3-15 seconds Note: When using multi-shot mode, total duration across all shots cannot exceed 15 seconds.

Available options:
3,
4,
5,
6,
7,
8,
9,
10,
11,
12,
13,
14,
15

Response

OK - Task created successfully

OK - The task exists and the status is returned