cURL
Python
JavaScript
Go
Java
PHP
Ruby
Swift
C#
curl --request POST \
--url https://api.apimart.ai/v1/videos/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "wan2.6",
"prompt": "A cute cat running on the grass",
"aspect_ratio": "16:9",
"resolution": "720p",
"duration": 5
}'
{
"code" : 200 ,
"data" : [
{
"status" : "submitted" ,
"task_id" : "task_01J9HA7JPQ9A0Z6JZ3V8M9W6PZ"
}
]
}
Authorization
All API endpoints require Bearer Token authentication Get your API Key: Visit the API Key Management Page to get your API Key Add it to the request header: Authorization: Bearer YOUR_API_KEY
Request Parameters
Video generation model name, fixed as wan2.6
Video content description Required for text-to-video mode. Describe scenes, actions, and styles in detail for better results Example: "A cute cat stretching in the sunlight"
Reference image URL array (only 1 image supported) Required for image-to-video mode. Supports publicly accessible URLs or Base64 encoding Example: ["https://example.com/image.jpg"] or ["data:image/png;base64,iVBORw0KGgo..."] The system automatically selects text-to-video or image-to-video mode based on whether image_urls is included
Negative prompt describing unwanted content Example: "blurry, low quality, distorted"
Video aspect ratio Options:
16:9 - Landscape (default)
9:16 - Portrait
1:1 - Square
4:3 - Landscape
3:4 - Portrait
Default: 16:9 Not supported in image-to-video mode
Video resolution Options:
720p - Standard (default)
1080p - High definition
Default: 720p 480p resolution is not supported
Billed per second. Pricing varies by resolution. Please refer to the model marketplace for specific pricing
Video duration (seconds) Supported values: 5, 10, 15 seconds only Default: 5
Random seed for reproducible results Example: 12345
Whether to automatically extend the prompt When enabled, the system will automatically optimize and enrich your prompt
Whether to automatically add audio When enabled, the system will generate matching audio for the video
Specified audio URL Takes priority over the audio parameter Audio duration cannot exceed video duration. If audio is shorter than video duration, the first part of the video will have sound while the rest will be silent.
Shot type Options:
single - Single shot
multi - Multiple shots
Resolution and Aspect Ratio Combinations
Aspect Ratio Description 720p Size 1080p Size 16:9Landscape (default) 1280×720 1920×1080 9:16Portrait 720×1280 1080×1920 1:1Square 960×960 1440×1440 4:3Landscape 1088×832 1632×1248 3:4Portrait 832×1088 1248×1632
Response
Response status code, 200 on success
Response data array Task status, submitted when initially submitted
Unique task identifier for querying task status and results
Use Cases
Case 1: Text-to-Video (Simple Request)
{
"model" : "wan2.6" ,
"prompt" : "A cute cat stretching in the sunlight"
}
Case 2: Text-to-Video (Full Parameters)
{
"model" : "wan2.6" ,
"prompt" : "A cute cat running on the grass" ,
"negative_prompt" : "blurry, low quality, distorted" ,
"aspect_ratio" : "16:9" ,
"resolution" : "720p" ,
"duration" : 5 ,
"seed" : 12345 ,
"prompt_extend" : true ,
"audio" : true ,
"shot_type" : "single" ,
"watermark" : false
}
Case 3: Image-to-Video
{
"model" : "wan2.6" ,
"prompt" : "A kitten running on the ground" ,
"image_urls" : [ "https://upload.apimart.ai/f/apimart-models-images/9998233432754770-c059992d-9b01-47d5-810d-ea0502ac9279-image_task_01KD7SSXDBCEWZ869D6PF249ZW_0.png" ],
"resolution" : "1080p" ,
"duration" : 10
}
Case 4: Image-to-Video (Base64 Image)
{
"model" : "wan2.6" ,
"prompt" : "Make the cat stand up and walk" ,
"image_urls" : [ "data:image/png;base64,iVBORw0KGgo..." ],
"duration" : 5
}
Mode Description
Text-to-Video
prompt parameter is required
image_urls parameter is not needed
Image-to-Video
image_urls parameter is required (only 1 image supported)
prompt parameter is optional, used to describe expected actions
The system automatically selects the mode based on whether image_urls is included in the request
Query Task Results Video generation is an async task that returns a task_id upon submission. Use the Get Task Status endpoint to query generation progress and results.