Create Generation with Files

The multipart/form-data form of `POST /v2/generate` — the same endpoint as "Create Generation", for uploading local files directly instead of passing URLs. Send each file under a field named for its type (`video`, `image`, `audio`); files must be under 20MB (use the `input` field with URLs for larger media, or upload via POST /v2/assets/upload and pass the `assetId`). Image inputs are sync-3 only.

Authentication

x-api-keystring
API Key authentication via header

Request

Use content type multipart/form-data to use local files to create a generation. Only files below 20MB are supported. For larger files, use input field to provide urls for the corresponding input items. Combining both file and url inputs is also supported, with the file taking precedence over the url.

videofileOptional
Input video file.
imagefileOptional

Input image file. Only supported with sync-3 model.

audiofileOptional
Input audio file.
modelenumRequired
name of the model to use for generation.
Allowed values:
inputlist of objectsOptional

Array of input objects. Can be used to provide urls for larger files. Each input should either have a file or a url. Audio input items can be provided as either: recorded/captured audio url or a text-to-speech input with tts provider configuration.

optionsobjectOptional
webhookUrlstringOptional

Response

Job created successfully
createdAtdatetime
The date and time the generation was created.
idstring
A unique identifier for the generation.
inputlist of objects
An array of input objects used for generation.
modelenum
The name of the model used for generation.
statusenum
The status of the generation.
errorstring
The error message if the generation failed.
errorCodestring

Stable, machine-readable error code if the generation failed (e.g. generation_input_video_inaccessible). The full catalog of codes, messages and suggested fixes is served unauthenticated at GET /v2/errors.

optionsobject
Options for the generation.
outputDurationdouble
The duration of the output media.
outputUrlstring
The URL of the output media.
outputFileNamestring
The sanitized filename applied to the output media. Characters outside letters, numbers, dashes and underscores are stripped and spaces become underscores, so this can differ from the value submitted. Null when no name was provided.
segmentslist of objects
The segments of the generation.
segmentOutputUrlstring
The URL of the segment output media.
synthesizedAudioUrlstring

The URL of the audio synthesized from a text (TTS) input. Only present for generations created with a TTS text input; reuse it as an audio input to keep the same take across generations.

webhookUrlstring
The URL to the webhook endpoint.
projectIdstring
The id of the project this generation is attached to, or null when it belongs to no project. Set via the projectId field on the create request.

Errors

400
Bad Request Error
401
Unauthorized Error
500
Internal Server Error