Skip to main content
POST
/
v1
/
videos
Create a Veo video job
curl --request POST \
  --url https://api.cometapi.com/v1/videos \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: multipart/form-data' \
  --form 'prompt=A paper kite floats above a field.' \
  --form input_reference='@example-file'
{
  "created_at": 1773297229,
  "id": "task_pa9CKKtYlTdxO7IIHOKKhXfjxEu4EQoR",
  "model": "veo_3_1-4K",
  "object": "video",
  "progress": 0,
  "seconds": "",
  "size": "16x9",
  "status": "queued"
}

Documentation Index

Fetch the complete documentation index at: https://apidoc.cometapi.com/llms.txt

Use this file to discover all available pages before exploring further.

Use this page to start a Veo job through the shared CometAPI /v1/videos route. Choose a current Veo alias from the Models page when setting model.

Pick the request pattern

  • Text-to-video: send no input_reference files
  • Image-to-video: send one input_reference
  • First-frame and last-frame guidance: send two ordered input_reference files

Task flow

1

Submit the Veo job

Send a Veo alias, prompt, and optional image inputs, then save the returned id.
2

Poll the shared video endpoint

Use Veo3 Retrieve to follow the async task until it reaches a terminal state.
3

Persist the result

Move the finished asset into your own storage if your application needs a durable copy.

Alias resolution

The model field in the response may show the resolved backend model id rather than the alias you submitted. Use the Models page to find current Veo aliases.

Authorizations

Authorization
string
header
required

Bearer token authentication. Use your CometAPI key.

Body

multipart/form-data
prompt
string
required

Text prompt for the video job.

Example:

"A paper kite floats above a field."

model
string
default:veo3-fast

CometAPI Veo alias. Use a current Veo alias from the Models page. The response may resolve this alias to a provider model id.

Example:

"veo3-fast"

size
string

Orientation hint. Use a landscape-like value such as 16x9 or a portrait-like value such as 9x16.

Example:

"16x9"

input_reference
file

Optional image input. Send one file for image-to-video or two ordered files for first-frame and last-frame guidance.

Response

200 - application/json

Task accepted.

created_at
integer
required
id
string
required
model
string
required

Provider model identifier resolved by CometAPI for this task.

object
string
required
progress
integer
required
seconds
string
required
size
string
required
status
string
required