Skip to main content
POST

Authentication

string
required
All endpoints require authentication using a Bearer TokenGet an API Key:Visit the API Key management page to obtain your API KeyAdd it to the request header when using it:

Request Parameters

string
required
Video generation model nameSupported models:
  • kling-3.0-turbo - Kling 3.0 Turbo
string
required
Text promptThe upstream limit is no more than 3072 characters; we recommend no more than 2500 characters.Example: "A corgi running on the beach, cinematic, golden-hour light"
string
Supports an image URL or Base64.
Upstream limits for the first-frame image:
  • Format: .jpg / .jpeg / .png
  • Size: ≤ 50MB
  • Width/height: ≥ 300px
  • Aspect ratio: 1:2.5 ~ 2.5:1
string
default:"16:9"
Video aspect ratioAvailable values:
  • 16:9 - Landscape
  • 9:16 - Portrait
  • 1:1 - Square
Default value: 16:9
Only effective for text-to-video. This field has no effect for image-to-video; the video ratio is determined by the first-frame image.
string
default:"720p"
Video resolutionAvailable values:
  • 720p
  • 1080p
Default value: 720p
integer
default:"5"
Video duration (seconds)Value range: 3-15 (minimum 3 seconds, maximum 15 seconds)Default value: 5⚠️ Note: You must enter a plain number (e.g. 6); do not add quotes, otherwise it will cause an error
boolean
Whether to add a watermarkOnly passed to the upstream when explicitly provided; if omitted, no watermark is added.

Text-to-Video vs Image-to-Video

The system automatically determines the generation mode based on whether first_frame_image is provided: with a first-frame image it uses image-to-video, without one it uses text-to-video. Users do not need to declare it explicitly.

Response

integer
Response status code, 200 on success
array
Returned data array

Use Cases

Scenario 1: Text-to-Video (1080P)

Scenario 2: Text-to-Video (Portrait 720P)

Scenario 3: Image-to-Video (First-Frame Image)

Scenario 4: Image-to-Video from First Frame Only (No Prompt)

Scenario 5: Multi-Shot Storyboard (Text-to-Video)

Querying the Task ResultVideo generation is an asynchronous task; after submission a task_id is returned. Use the Get Task Status endpoint to query the generation progress and result.