Skip to main content
POST
/
v3
/
async
/
veo-3.1-generate-text2video
Veo 3.1 Text-to-Video
curl --request POST \
  --url https://api.highwayapi.ai/v3/async/veo-3.1-generate-text2video \
  --header 'Authorization: <authorization>' \
  --header 'Content-Type: <content-type>' \
  --data '
{
  "prompt": "<string>",
  "aspect_ratio": "<string>",
  "duration_seconds": 123,
  "enhance_prompt": true,
  "generate_audio": true,
  "negative_prompt": "<string>",
  "person_generation": "<string>",
  "resolution": "<string>",
  "sample_count": 123,
  "seed": {}
}
'
{
  "task_id": "<string>"
}
The Veo 3.1 Preview API is automatically compatible with this endpoint
Use the Veo 3.1 video generation model to generate high-quality video content from text descriptions. This endpoint uses asynchronous processing, and you need to query the final generation result using the task_id.

Request Headers

Content-Type
string
required
Enum value: application/json
Authorization
string
required
Bearer authentication format: Bearer {{API Key}}.

Request Body

prompt
string
required
A text string describing the video you want to generate.
aspect_ratio
string
Specifies the aspect ratio of the generated video.Enum values: 16:9, 9:16. The default value is 16:9.
duration_seconds
integer
The length of the video file you want to generate, in seconds.Enum values: 4, 6, 8. The default value is 8.
enhance_prompt
boolean
Specifies whether to use Gemini to enhance your prompt. Only true is supported.Default value: true
generate_audio
boolean
required
Specifies whether to generate audio for the video.
negative_prompt
string
A text string describing what you want to prevent the model from generating.
person_generation
string
Safety setting that controls whether people or faces are allowed to be generated.Enum values:
  • allow_adult (default): Only adults are allowed to be generated
  • dont_allow: People or faces are not allowed in the image
  • allow_all: Allows generating people of all ages (requires the project to be in the allowlist)
resolution
string
The resolution of the generated video.Enum values: 720p (default) or 1080p
sample_count
integer
The number of videos to generate.Value range: 1-4
seed
uint32
A number used to initialize the random generation process. Using the same seed, prompt, and other parameters will produce the same output video, making the generation process deterministic.Value range: 0-4,294,967,295

Response Parameters

task_id
string
required
The task_id of the asynchronous task. You should use this task_id to request the Query Task Result API to obtain the generation result.