About PixVerse V6
The PixVerse V6 API exposes four video jobs under the pixverse/v6 prefix: text-to-video as the default, plus image-to-video, reference-to-video and video-extend. Each createTask call returns a taskId at once, and the finished MP4 arrives when the render completes. Reach for it when your product needs a clip whose length you can set to the second, and when one integration should cover several starting points, from a sentence to a still to a clip that already exists.
Call it with the model name pixverse/v6/text-to-video on POST /jobs/createTask, from $0.111.
Introduction
PixVerse V6 Text to video turns a written brief into a clip of 1 to 15 seconds at 360p, 540p, 720p or 1080p, in eight aspect ratios from 16:9 to 9:16 and 21:9. Describe the subject, the action and the camera; camera moves written in the prompt are followed, and PixVerse says V6 understands 20+ cinematic lens and camera controls from the prompt. Switch generate_audio on and the model generates sound with the picture.
Choose a PixVerse V6 mode by starting material
| What you have at the start | Mode |
|---|---|
| a written scene | PixVerse V6 Text to video (you are here) |
| a first frame, and optionally a last frame | PixVerse V6 Image to video |
| photos of people, objects or places to cast from | PixVerse V6 Reference to video |
| a clip you want to continue | PixVerse V6 Video extend |
| a prompt or one image, and you want higher picture quality | PixVerse V6 Max |
| one photo and a ready-made themed template, no prompt to write | PixVerse V6 Effects |
Key features
One paragraph, more than one framing
In our test a single paragraph about a laughing driver in a vintage teal convertible opened on a close shot of her with the scarf flying, then the camera rose to a wide aerial of the car on a cliff road above the ocean. The prompt asked for the drone to pull back and rise; the cut from close-up to aerial came from the model.
A multi-shot switch
shot_type is single by default. Set multi to let the model cut the clip into several shots.
Eight aspect ratios
16:9 (default), 4:3, 1:1, 3:4, 9:16, 2:3, 3:2 and 21:9.
Sound when you want it
generate_audio is off by default. On, the model generates ambience, effects, music and any dialogue you write in quotes.
Four resolutions
360p, 540p, 720p (default) and 1080p. Our test clip was 540p, 1024x576, and took about 41 seconds of model time for 5 seconds of video.
Request parameters
| Parameter | Required | Description |
|---|---|---|
seed | No | Reuse the same number to get a repeatable result. ≥ 0 · ≤ 2147483647 |
prompt | Yes | Describe the subject, the action and the camera. |
shot_type | No | single keeps one continuous shot; multi lets the model cut the clip into several shots. single · multi · Default: single |
resolution | No | Output size. Bigger sizes look sharper and cost more. 360p · 540p · 720p · 1080p · Default: 720p |
aspect_ratio | No | The shape of the frame: wide, square or tall. 16:9 · 4:3 · 1:1 · 3:4 · 9:16 · 2:3 · 3:2 · 21:9 · Default: 16:9 |
generate_audio | No | Adds sound made to match the picture: voices, ambience and effects. Default: false |
duration_seconds | No | How long the clip runs. You pay per second. ≥ 1 · ≤ 15 · Default: 5 |
Pricing
Prices are in USD. The API uses a separate USD balance. Website credits cannot be used or transferred to it, and API funds cannot be transferred to website credits. When a task is accepted, we reserve the maximum quoted amount from your API balance. On completion, we charge for actual usage, never more than the hold, and release the remainder. If the task fails, the hold is released.
| Option | USD per second |
|---|---|
| generate_audio false · resolution 360p | $0.0222 |
| generate_audio false · resolution 540p | $0.0311 |
| generate_audio true · resolution 360p | $0.0311 |
| generate_audio false · resolution 720p | $0.04 |
| generate_audio true · resolution 540p | $0.04 |
| generate_audio true · resolution 720p | $0.0533 |
| generate_audio false · resolution 1080p | $0.08 |
| generate_audio true · resolution 1080p | $0.1022 |
Send the same request body to POST /jobs/quote to see the estimated and maximum USD charge before running. A quote does not run the task or charge your balance.
Use cases
Opening and establishing shots
Write the place, the light, one camera move and the look, and you have a shot to open a scene with. Our cliff-road example does exactly that in one paragraph.
Short scenes with a spoken line
Switch audio on, describe the action and put the line in quotes. Name the ambience you want in the same prompt.
Vertical and ultrawide framing
Choose 9:16, 3:4 or 2:3 for vertical clips, or 21:9 for ultrawide.
Prompt guide & pro tips
Write it in the order it happens
Place and light first, then the subject and wardrobe, the action, the camera move and the look. Our example reads: golden hour on a cliffside highway, the car and the driver, the drone pulling back and rising, a warm 35mm film look.
Write the camera move
Camera moves you put in the prompt are followed, so name them: "the drone pulls back and rises", "slow orbit", "handheld push-in".
Compare with a seed
seed keeps runs comparable while you change one thing at a time. It does not guarantee identical frames.
API quick start
Call the PixVerse V6 API in three steps
- Create an API key. Sign in to PopNow and create a key in the API console. Keys start with sk-popnow-. API calls use your separate USD balance.
- Send the request. POST /jobs/createTask with model pixverse/v6/text-to-video and an input object that follows the parameter table. The response returns a task ID straight away.
- Get the result. Poll GET /jobs/recordInfo with the task ID, or pass a callBackUrl and we post the result to it. Download the output links when the task succeeds.
# 1. Create the task. Keep the Idempotency-Key if you retry after a network error.
export IDEMPOTENCY_KEY="$(uuidgen)"
curl -X POST https://api.popnow.ai/api/v1/jobs/createTask \
-H "Authorization: Bearer $POPNOW_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $IDEMPOTENCY_KEY" \
-d '{
"model": "pixverse/v6/text-to-video",
"input": {
"prompt": "A slow aerial shot drifting over a misty pine forest at sunrise",
"aspect_ratio": "16:9",
"resolution": "720p",
"duration_seconds": 5,
"shot_type": "single"
}
}'
# 2. Copy data.taskId from the response, then poll until state is succeeded, failed, canceled or expired.
TASK_ID="TASK_ID_FROM_RESPONSE"
curl "https://api.popnow.ai/api/v1/jobs/recordInfo?taskId=$TASK_ID" \
-H "Authorization: Bearer $POPNOW_API_KEY"Replace the prompt and any links with your own. The API tab has the response, polling and callback reference.
What to build with the PixVerse V6 API
- A social clip generator that takes a sentence and a length from the form and sends duration_seconds and resolution straight into createTask.
- A product-video tool that accepts a first frame and an optional last_image_url, so the shot opens and closes on images the customer approved.
- A creator app that stores named elements for each brand character and calls reference-to-video with the same element list for every campaign.
- A serial-content feature that chains video-extend calls, feeding the output file of one job in as video_url for the next.
PixVerse V6 parameter notes
- duration_seconds is a whole number from 1 to 15 and defaults to 5. Validate it in your form before createTask, because the endpoint accepts integers only within that range.
- resolution takes 360p, 540p, 720p (the default) or 1080p. The per-second rate rises at each tier, so 540p is a sensible default for previews.
- generate_audio defaults to false. Turning it on raises the rate for every resolution, so show the user the price difference before they switch it on.
- shot_type is single (the default) or multi. Multi lets the model cut between shots. It does not combine with last_image_url on image-to-video.
- aspect_ratio takes eight values, 16:9 by default, through 9:16 and 21:9. image-to-video has no aspect_ratio field, because the frame of image_url decides the shape of the output.
- reference-to-video takes elements, an array of one to seven objects with a name of 1 to 30 characters, an image_url and a role of subject or background. Write @name in the prompt followed by a space; in our tests a comma directly after the name, as in @trailer, was rejected.
- seed takes a whole number from 0 to 2147483647. It is useful for comparing one change at a time, but it does not guarantee identical frames.
- video-extend returns your source clip followed by duration_seconds of new footage in one file. Only the new seconds are billed.
How PixVerse V6 API pricing adds up
PixVerse V6 is billed in USD per second of output, and the rate depends on the resolution and on the sound switch. Without sound the rate is $0.0222 per second at 360p, $0.0311 at 540p, $0.040 at 720p and $0.080 at 1080p. With sound on it is $0.0311, $0.040, $0.0533 and $0.1022 for the same tiers. A five-second 720p clip with sound comes to about $0.27. Failed or declined requests are not charged, and API usage is paid from your separate API balance.
- generate_audio false · resolution 360p, 5-second clip: $0.111 each, $11.10 for 100 clips
- generate_audio true · resolution 1080p, 5-second clip: $0.511 each, $51.10 for 100 clips
Async jobs, webhooks and rate limits
Every PixVerse V6 request is asynchronous: createTask returns a taskId straight away, and the result arrives when the job finishes. Poll GET /jobs/recordInfo every few seconds, or pass a public https callBackUrl and verify the X-Webhook-Signature header (HMAC-SHA256 over taskId, timestamp and the body hash) before trusting the payload. Each account gets 1,000 write requests per 10 seconds; a 429 carries Retry-After. Send an Idempotency-Key with createTask so a retried request for pixverse/v6/text-to-video never runs or bills twice.
Common PixVerse V6 API errors
| errorCode | What it usually means and how to fix it |
|---|---|
invalid_request | duration_seconds outside 1 to 15, a resolution outside the four tiers, or last_image_url sent together with shot_type multi. Check these values before createTask. |
invalid_asset | image_url, last_image_url or an element's image_url could not be fetched, or the file is not a JPG, PNG or WebP within 20 MB. Upload local files first and pass the returned reference. |
unsupported_combination | A field the chosen task does not accept, such as aspect_ratio on image-to-video or elements on text-to-video. Send only the fields listed for that task. |
content_rejected | The prompt or a photo was declined at review. The hold on the balance is released, so show the message to the user and let them rephrase. |
PixVerse V6 API questions
How much does the PixVerse V6 API cost?
PixVerse V6 starts at $0.111 for a 5-second clip with Create Video, its cheapest task. Prices by option: false · 360p $0.0222 per second, false · 540p $0.0311 per second, true · 360p $0.0311 per second, false · 720p $0.04 per second. The API uses a separate USD balance. Website credits cannot be used or transferred to it, and API funds cannot be transferred to website credits. When a task is accepted, we reserve the maximum quoted amount from your API balance. On completion, we charge for actual usage, never more than the hold, and release the remainder. If the task fails, the hold is released.
What is the model name for PixVerse V6 in the API?
Put pixverse/v6/text-to-video for Create Video; pixverse/v6/image-to-video for Image to Video; pixverse/v6/reference-to-video for Reference to Video; pixverse/v6/video-extend for Extend Video in the model field of POST /jobs/createTask.
Which task should a plain text prompt call?
text-to-video, which is the default endpoint at pixverse/v6/text-to-video. Use image-to-video when you already have a first frame, and reference-to-video when particular people or places have to appear.
How do I get a clip longer than 15 seconds?
Not in one request. Generate the first clip, then call video-extend with video_url set to its output and a new prompt for the next beat. Each extension adds up to 15 seconds and bills only the new seconds.
Does the output include sound?
Only when generate_audio is true. The file then holds a generated soundtrack, and with the flag false the clip is silent. The flag also changes the price per second.
How should I wait for the result?
Poll the recordInfo endpoint with the taskId every few seconds, or register a callBackUrl and verify the webhook signature before trusting the payload.
What are the limits of the PixVerse V6 API?
Clip length: 1–15 s; Resolutions: 360p · 540p · 720p · 1080p; Aspect ratios: 16:9 · 4:3 · 1:1 · 3:4 · 9:16 · 2:3 +2; Prompt length (characters): 5,000. Requests outside these limits are rejected before anything is charged.
Can I try PixVerse V6 without writing code?
Run PixVerse V6 in the Playground with your API USD balance, without an API key. Each run appears in your developer history with its matching code.
All PixVerse models
PixVerse V6 Max is the higher tier for text and image to video with richer detail, at a higher per-second price. V6 adds references, transitions and extensions.
- PixVerse V6 Max APIPixVerse's top tier: 1080p clips with optional soundFrom $0.133 for a 5-second clip
- PixVerse V6 Effects API50 ready-made effect templates that turn a photo into a themed clipFrom $0.0222 per second
- PixVerse V6 APIClips of 1 to 15 seconds up to 1080p, with transitions, references and extensionsFrom $0.111 for a 5-second clip