Videos

Create Video

Start a video generation job.

Send model as provider/model (see GET /v3/videos/models), a prompt, and optionally seconds, size and an input_reference image. The job runs asynchronously: poll GET /v3/videos/{video_id} until status is completed, then download the mp4 from GET /v3/videos/{video_id}/content. Accepts application/json, or multipart/form-data with the reference image as the input_reference file part.

post/v3/videos

Request

  • Base URL
    https://api.edenai.run
  • Auth
    HTTP bearer

Request body

modelstring required

Video model as provider/model, e.g. pruna/p-video or openai/sora-2. List the available ids with GET /v3/videos/models.

promptstring required

Text describing the video to generate.

secondsinteger nullable

Clip length in seconds. Accepts OpenAI's string form ("4", "8", "12") or an integer. Omit to use the model's default duration.

sizestring nullable

Output resolution as WIDTHxHEIGHT, e.g. 1280x720 or 1920x1080. Omitted uses the provider's default; each provider maps it to its nearest tier.

seedinteger nullable

Eden extension: random seed for reproducible output.

provider_paramsobject nullable

Eden extension: provider-native parameters merged into the provider request, subject to the per-provider allow-list.

webhook_receiverstring uri nullable

Eden extension: URL notified when the job finishes.

user_webhook_parametersobject nullable

Eden extension: custom fields echoed in the webhook payload.

Response

Successful Response

idstring required

Job id. Use it to poll, download and delete.

object'video'
status'queued' | 'in_progress' | 'completed' | 'failed' required

queued, in_progress, completed or failed.

progressinteger nullable

0 while running or failed, 100 when completed.

created_atinteger required

Unix timestamp (seconds) of job creation.

completed_atinteger nullable

Unix timestamp (seconds) when the job finished.

expires_atinteger nullable

Always null: Eden AI keeps the result.

modelstring required

The provider/model that ran the job.

secondsstring nullable

Clip length in seconds, as a string.

sizestring nullable

Requested resolution as WIDTHxHEIGHT.

remixed_from_video_idstring nullable

Always null: remix is not supported.

providerstring required

Eden extension: provider that ran the job.

costnumber required

Eden extension: cost in USD. 0 while the job is queued or in progress (the reserved estimate is not surfaced); the settled amount once the job completes or fails.

Changes

No recorded changes to this operation across all 1 revision of this API.