Video
PixVerse V6 Max
Generate 1–15 second PixVerse V6 Max clips from a prompt or one image, at 360p to 1080p with optional audio, billed per second and delivered as a task.
PixVerse V6 Max is the higher-detail version of PixVerse V6. It makes a 1–15 second clip from a prompt, or from one starting image with an optional prompt, at 360p, 540p, 720p or 1080p, with optional native audio. Send the request, keep the returned task ID, and read the finished video from the task. Images go in as URLs.
Model IDs
| Model ID | Inputs | Resolutions | Length |
|---|---|---|---|
pixverse-v6-max | text, one image | 360p, 540p, 720p, 1080p | 1–15 seconds |
See the model page for current prices. Transitions, multi-image reference and extend are PixVerse V6 features.
Quick example
curl https://api.seedrouter.ai/v1/videos/generations \
-H "Authorization: Bearer $SEEDROUTER_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "pixverse-v6-max",
"prompt": "A red paper boat drifting on a calm pond at sunrise, soft mist, slow push-in. No text, no logos.",
"resolution": "720p",
"duration": 5,
"aspect_ratio": "16:9"
}'Endpoint
POST https://api.seedrouter.ai/v1/videos/generations| Header | Value |
|---|---|
| Authorization | Bearer YOUR_API_KEY |
| Content-Type | application/json |
The response is a task ({"id": "task_...", "status": "processing"}), not the finished video. Poll GET /v1/tasks/{task_id} for the result. Keep API keys in server-side code.
Parameters
| Field | Type | Default | Notes |
|---|---|---|---|
model | string | required | pixverse-v6-max |
prompt | string | see notes | Text to video: required, up to 5,000 characters. With an image: optional, up to 2,048 characters. |
image_urls | URL list | none | Image to video: exactly one image. Without it the clip is text to video. |
resolution | enum | 540p | 360p, 540p, 720p or 1080p. |
quality | enum | none | Alias of resolution, same values. resolution wins when both are sent. |
duration | integer | 5 | 1–15 seconds. |
aspect_ratio | enum | 16:9 | 16:9, 4:3, 1:1, 3:4, 9:16, 2:3, 3:2 or 21:9. Text to video only; with an image the clip follows the image. |
audio | boolean | false | Generate native audio. Billed at the audio rate. |
seed | integer | none | 0–2147483647. The same request and seed give similar results. |
The schema is strict: unknown fields are rejected rather than ignored. first_frame_image, last_frame_image, img_references and extend_from_task_id return a 400 that points to pixverse-v6. callback_url is not available; poll the task instead.
Image to video
Pass one image in image_urls. The clip starts from it and keeps its shape, so a portrait image gives a portrait clip. The prompt is optional here.
{
"model": "pixverse-v6-max",
"prompt": "The subject slowly turns toward the camera, soft natural light.",
"image_urls": ["https://example.com/start.png"],
"resolution": "1080p",
"duration": 5
}Media inputs
The image is a public HTTP(S) URL. Base64 data URIs are not accepted: upload the file to your own storage and pass its URL. Use a JPG, PNG or WebP image of 20 MB or less, at most 10,000 pixels on each side.
Pricing dimensions
Check the model pricing section for current rates. PixVerse V6 Max is billed per second of video, at a rate set by the resolution and by whether audio is generated:
cost = duration × rate per second for the resolution and audio settingText to video and image to video cost the same. The duration is known when the request is accepted, so the amount reserved is the amount charged. View final charges in your account usage history. Failed tasks are not charged.
Output schema
Submission returns the task:
{"id": "task_...", "model": "pixverse-v6-max", "status": "processing", "created_at": 1789689600}Get the task
GET https://api.seedrouter.ai/v1/tasks/{task_id}Poll every 10–20 seconds until status is completed or failed. A network timeout while polling does not mean generation failed: keep the task ID and resume checking it. Do not create another task to check progress.
Completed task
{
"id": "task_...",
"model": "pixverse-v6-max",
"status": "completed",
"created_at": 1789689600,
"finished_at": 1789689690,
"output": {
"video_url": "https://static.seedrouter.ai/media/tasks/task_example/0.mp4"
}
}In our tests 1-second 360p 16:9 clips came back as MP4 (H.264) at 640 × 360, 81–89 seconds after submission.
Errors
Requests rejected before a task is created return an HTTP error with an error object and are not charged. A task that fails after acceptance returns HTTP 200 when queried, with status: "failed" and an error object.
See the shared error catalog for codes, HTTP statuses, and retry guidance.
{
"id": "task_...",
"model": "pixverse-v6-max",
"status": "failed",
"error": {
"code": 60001,
"message": "The request was rejected by the content policy. Please revise the prompt or input images."
}
}If submission itself times out, check your tasks before submitting again: the first request may have been accepted.
Tips
- Describe subject, place, camera move and light in the prompt; name the sounds you want when
audiois on. - Draft at
360por540p, then render the final shot at1080pwith the same request andseed. - For vertical video, send
aspect_ratio: "9:16", or a portrait image. - Add
no text, no logosto keep invented marks out.
