Skip to main content
POST
cURL
Audio-to-Video generates video clips conditioned on an audio file and a text prompt. You can optionally provide first and last frame images to control the visual start and end points. The endpoint returns a task ID to track processing status.
API v1 is deprecated. This version is no longer being developed — new endpoints, parameters and models are added to v2 only. Use the v2 endpoints to stay current: v2 API documentation.
Prerequisite: To ensure a successful request, you must first consult the Model Selection endpoint to identify a valid model slug, check specific limits and features.

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

Accept
enum<string>
default:application/json
required
Available options:
application/json

Body

multipart/form-data

Audio to video generation parameters

prompt
string
required

The main prompt for video generation

Example:

"A beautiful sunset over mountains with dramatic music"

audio
file
required

Audio file to condition the video generation. Supported formats: MP3, OGG. Maximum file size: 20 MB.

width
integer
required

Width of the generated video in pixels

Example:

512

height
integer
required

Height of the generated video in pixels

Example:

512

frames
integer
required

Number of video frames to generate. The accepted range is model-specific - read info.limits.min_frames / info.limits.max_frames for your model from the Model Selection endpoint before sending the request; a value outside that range is rejected with 422. For the example model Ltx2_3_22B_Dist_INT8 the allowed range is 49-241 (default 120).

Required range: x >= 1
Example:

97

fps
integer
required

FPS of generated video. The accepted range is model-specific - read info.limits.min_fps / info.limits.max_fps for your model from the Model Selection endpoint before sending the request; a value outside that range is rejected with 422. For the example model Ltx2_3_22B_Dist_INT8 the only accepted value is 24.

Required range: x >= 1
Example:

24

seed
integer
required

Random seed for generation

Example:

42

model
string
required

The model to use for video generation. Available models can be retrieved via the GET /api/v1/client/models endpoint.

Example:

"Ltx2_3_22B_Dist_INT8"

negative_prompt
string | null

Elements to avoid in the generated video

Example:

"blur, darkness, noise"

first_frame_image
file | null

Image for the first frame of video (optional). Supported formats: JPG, JPEG, PNG, GIF, BMP, WebP. Maximum file size: 10 MB.

last_frame_image
file | null

Image for the last frame of video (optional). Supported formats: JPG, JPEG, PNG, GIF, BMP, WebP. Maximum file size: 10 MB.

guidance
number

Guidance scale for the generation

Example:

7.5

steps
integer

Number of inference steps. The accepted range is model-specific - read info.limits.min_steps / info.limits.max_steps for your model from the Model Selection endpoint before sending the request; a value outside that range is rejected with 422.

Required range: x >= 1
Example:

20

webhook_url
string<uri> | null

Optional HTTPS URL to receive webhook notifications for job status changes (processing, completed, failed). Must be HTTPS. Max 2048 characters. See Webhook Documentation for payload structure and authentication details.

Maximum string length: 2048
Example:

"https://your-server.com/webhooks/deapi"

Response

ID of the inference request.

data
object

Information from success endpoint