Create video

Start an asynchronous video generation job; poll it with GET /v1/videos/{video_id}.

Authentication

AuthorizationBearer
Your production key sent as a bearer token.

Request

This endpoint expects an object.
modelstringRequired

Video model, for example google/veo-3.1-generate-001.

promptstringRequired>=1 character
Text prompt for the video.
customerstring or nullOptional

Customer ID (UUID) to scope this request to, applying that customer’s routing policy, provider keys, budget, and usage attribution.

vendorstring or nullOptional
Pin the vendor that runs this request.
secondsinteger or string or nullOptional
Clip length in seconds, within the model's limits.
sizestring or nullOptional

Output resolution as WIDTHxHEIGHT, model-specific.

userstring or nullOptional

End-user identifier forwarded to the provider.

Response

Successful Response
idstring
Video job ID.
statusstring

Job status, starting at queued; poll until it is completed or failed.

modelstring
Model running the job.
object"video"OptionalDefaults to video
secondsstring or nullOptional
Clip length in seconds.
sizestring or nullOptional
Output resolution.
created_atinteger or nullOptional
Unix timestamp in seconds.
progressinteger or nullOptional
Progress percentage, when the provider reports it.
errormap from strings to any or nullOptional
Error details for a failed job.
costdouble or nullOptional

Cost of the job in USD, set once it completes; failed jobs are not billed.

Errors

422
Unprocessable Entity Error