Skip to main content
POST
cURL
Video generation is asynchronous. After a successful submission, use the returned jobId with the Video Fetch API.

Authorizations

TT-API-KEY
string
header
required

You can obtain your API key from the TTAPI Dashboard.

Body

application/json
prompt
string
required

Video prompt

Example:

"A cinematic shot of a futuristic city at sunset"

model
enum<string>
default:omni-flash
required

Video model.

Available options:
veo-3.1-fast,
veo-3.1-quality,
veo-3.1-lite,
omni-flash
aspect_ratio
enum<string>
required

Video aspect ratio. Required.

Available options:
16:9,
9:16
Example:

"16:9"

resolution
enum<string>

Resolution level.

Available options:
720p,
1080p
Example:

"720p"

duration
enum<string>

Video duration (seconds). Veo 3.1 models (veo-3.1-fast, veo-3.1-quality, veo-3.1-lite) only support 8.

Available options:
4,
6,
8,
10
Example:

"8"

generation_type
enum<string>

Video generation type. frame: frame-to-video; reference: reference-image-to-video. If omitted, auto-detected by image count: 2 images = frame-to-video, 3 images = reference-to-video.

Available options:
frame,
reference
Example:

"frame"

reference_images
string[]

Reference images, up to 3. Each item must be an http(s):// URL. JPEG and PNG are supported.

Maximum array length: 3
Example:
reference_videos
string[]

Reference or source video for editing, up to 1 (multiple video references are not supported). Each item must be an http(s):// URL. Currently available only for the omni-flash model.

Maximum array length: 1
Example:
hookUrl
string

Callback URL for completion or failure notifications

Example:

"https://example.com/callback"

Response

Submitted successfully

status
string
required

Task status

Example:

"SUCCESS"

message
string
required

Task message

Example:

"success"

data
object
required
Last modified on June 5, 2026