Skip to main content
Endpoint: POST https://fal.run/fal-ai/kling-video/o3/pro/text-to-video Endpoint ID: fal-ai/kling-video/o3/pro/text-to-video

Try it in the Playground

Run this model interactively with your own prompts.

Quick Start

import fal_client

def on_queue_update(update):
    if isinstance(update, fal_client.InProgress):
        for log in update.logs:
           print(log["message"])

result = fal_client.subscribe(
    "fal-ai/kling-video/o3/pro/text-to-video",
    arguments={},
    with_logs=True,
    on_queue_update=on_queue_update,
)
print(result)

Capabilities

  • Text prompt input
  • Duration control
  • Aspect ratio control

API Reference

Input Schema

prompt
string
Text prompt for video generation. Required unless multi_prompt is provided.
duration
DurationEnum
default:"5"
Video duration in seconds (3-15s). Default value: "5"Possible values: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15
aspect_ratio
AspectRatioEnum
default:"16:9"
Aspect ratio of the generated video. Default value: "16:9"Possible values: 16:9, 9:16, 1:1
generate_audio
boolean
default:"false"
Whether to generate native audio for the video.
multi_prompt
list<KlingV3MultiPromptElement>
List of prompts for multi-shot video generation.
shot_type
string
default:"customize"
The type of multi-shot video generation. Default value: "customize"

Output Schema

video
File
required
The generated video.

Input Example

{
  "prompt": "A mecha lands on the ground to save the city, and says \"I'm here\", in anime style",
  "duration": "5",
  "aspect_ratio": "16:9",
  "generate_audio": false,
  "multi_prompt": null,
  "shot_type": "customize"
}

Output Example

{
  "video": {
    "content_type": "video/mp4",
    "file_name": "output.mp4",
    "file_size": 13096952,
    "url": "https://v3b.fal.media/files/b/0a8d04e2/idOb9V-Q9ujlggPSKqsfS_output.mp4"
  }
}

Limitations

  • aspect_ratio restricted to: 16:9, 9:16, 1:1