The short answer: PixVerse extends video through one endpoint
The PixVerse video extend API is a single asynchronous endpoint: POST /openapi/v2/video/extend/generate. You send it a video — either a video_id produced earlier by a PixVerse generation call, or a file you upload to PixVerse’s media storage — plus a prompt describing how the story should continue, and the API returns a new video_id you poll until it reaches status 1. It is the same submit–poll–retrieve loop PixVerse already uses for text-to-video and image-to-video, with one extra input step.
So the answers to the two questions this query usually starts with are: yes, PixVerse can extend video, and yes, you can do it without the web app. The endpoint and its parameters are documented in the official Extend guide and the Extend generation API reference. Everything in this guide was read from those pages and the official pricing page on August 5, 2026 — PixVerse iterates on parameters and prices quickly, so treat anything model- or price-specific as current as of that date.
What you need before you call it
The prerequisites are the same as for any PixVerse generation endpoint:
- A valid API key. Create it in the PixVerse Platform, and send it in the
API-KEYheader. - A unique
Ai-Trace-Idper request. The official docs flag reusing the same trace id across requests as the most common cause of tasks stuck in “Generating”. - An active subscription with API credits. The API does not run on the web app’s free trial; it bills against your Platform credit balance.
- An input video, in one of two forms (mutually exclusive):
source_video_id— thevideo_idfrom a video you already generated through the PixVerse API;video_media_id— an uploaded file. Upload viaPOST /openapi/v2/media/uploadwith afileorfile_urlform field. For the extend feature the official limits are mp4 or mov, up to 1920px, up to 50MB, up to 30 seconds (the upload documentation lists the per-feature limits table).
The two input modes matter for your pipeline design: extending your own generation output is a zero-upload call (you already have the video_id), while extending external footage means adding an upload step and storing the returned media_id (with media_type: "video").
Calling the PixVerse video extend API: parameters and code
The request goes to https://app-api.pixverse.ai/openapi/v2/video/extend/generate with API-KEY and Ai-Trace-Id headers and a JSON body. The official parameter set:
| Parameter | Required | Notes |
|---|---|---|
source_video_id / video_media_id |
one of the two | Mutually exclusive; never send both |
model |
Yes | v3.5, v4, or v4.5 per the Extend guide; the pricing page also lists extend rates for V5, V5.5, and V5.6 (see the pricing section) |
prompt |
Yes | ≤ 2048 characters; describes how the video continues |
negative_prompt |
Optional | ≤ 2048 characters |
duration |
Yes | 5 or 8 seconds per the guide, which notes 1080p does not support 8 (the pricing page lists 8-second 1080p rates for V5/V5.5/V5.6 — the two pages diverge) |
quality |
Yes | 360p (Turbo), 540p, 720p, 1080p |
motion_mode |
Optional | normal (default) or fast; fast only allows 5-second duration and no 1080p |
style |
Optional | anime, 3d_animation, day, cyberpunk, comic |
seed |
Optional | int32, 0–2147483647 |
img_id |
Optional | For image-to-video generation, per the docs (marked required for that variant) |
A minimal curl call, following the official example structure:
1 | curl --location 'https://app-api.pixverse.ai/openapi/v2/video/extend/generate' \ |
The equivalent in Python with the standard library:
1 | import json |
Both examples assume the video already exists as a source_video_id. For external footage, replace source_video_id with video_media_id from the upload step. The response contains the new task’s video_id — generation is asynchronous, so no video exists yet at this point.
Figure 1: The PixVerse video extend flow — pick an input (uploaded media or a PixVerse video_id), call extend/generate, poll status until it reaches 1, then download. Diagram generated from the official Extend documentation on August 5, 2026.
If you are new to the loop itself — key, trace id, and the general poll pattern — our PixVerse API integration guide walks through authentication and polling end to end, and the how-to-use-PixVerse tutorial covers the same submit–poll–retrieve flow with the web app side included.
Polling for the result and handling failures
Query the video status endpoint with the returned video_id until it leaves processing:
| Status | Meaning |
|---|---|
5 |
Waiting for generation — poll at 3–5 second intervals rather than hammering the endpoint |
1 |
Generation successful — the response contains the url of the finished video |
7 |
Failed content moderation — adjust parameters and retry; official docs state credits for filtered videos are refunded automatically |
8 |
Generation failed — check the official error-code list for the specific cause |
The official Get Video Generation Status guide documents the response shape, and the FAQ is the first place to check for stuck tasks. The failure cases that cost people the most time:
- Video stuck in “Generating”. The docs’ own troubleshooting points at a reused
Ai-Trace-Idas the most common cause. If you batch multiple requests, generate a fresh trace id per call. 400013Invalid binding request — wrong parameter type or value.400017Invalid parameter — an out-of-range value, for example duration 8 at 1080p.- “Couldn’t find a matching source_video_id / video_media_id” — the ID does not exist or the media type is not a video resource; re-upload and retry.
500044Reached the limit for concurrent generations — your account has a concurrency cap; queue tasks instead of firing them all at once.
Status 7 is the one that surprises API users: billing happens at submission, so a moderation failure can look like a charge for nothing. Per the official docs the refund is automatic — verify it in your balance history before contacting support.
What the PixVerse video extend API costs
Extend is billed in PixVerse Platform credits, and the pricing page splits it across four per-clip model families (V5.6, V5.5, V5, and V4.5/V4/V3.5) plus the per-second V6 family — this is where most cost estimates go wrong. The per-clip no-audio rates, read from the official pricing page on August 5, 2026:
| Model family | Quality | 5s | 8s |
|---|---|---|---|
| V5.6 | 360p | 35 | 70 |
| V5.6 | 540p | 35 | 70 |
| V5.6 | 720p | 45 | 90 |
| V5.6 | 1080p | 75 | 150 |
| V5.5 | 360p | 45 | 90 |
| V5.5 | 540p | 45 | 90 |
| V5.5 | 720p | 60 | 120 |
| V5.5 | 1080p | 120 | 240 |
| V5 | 360p (Turbo) | 45 | 90 |
| V5 | 540p | 45 | 90 |
| V5 | 720p | 60 | 120 |
| V5 | 1080p | 120 | 240 |
| V4.5 / V4 / V3.5 | 360p (Turbo) | 45 | 90 |
| V4.5 / V4 / V3.5 | 540p | 45 | 90 |
| V4.5 / V4 / V3.5 | 720p | 60 | 120 |
| V4.5 / V4 / V3.5 | 1080p | 120 | — |
Credits are per extend task (per clip), no audio. The pricing page’s audio columns add a separate surcharge that varies by family and quality — roughly +10 credits on the V5.5 rows, more on V5.6 — so quote with-audio budgets from the exact row. V5.5/V5.6 also list 10-second rows (77–172 credits), V4.5/V4/V3.5 lists a fast motion mode (5s at 90–120 credits), and no 1080p 8-second row exists for V4.5/V4/V3.5. The two official pages are not fully in sync: the Extend guide’s parameter table accepts model values v3.5/v4/v4.5 and says 1080p does not support 8-second duration, while the pricing page also lists extend rates for V5, V5.5, and V5.6 — including 8-second 1080p rows for V5/V5.5/V5.6. Use the guide for accepted request values, the pricing page for rates, and recheck both before committing budget.
- V6 — the pricing page groups Extend with text-to-video / image-to-video at 5–23 credits per second (360p 5, 540p 7, 720p 9, 1080p 18 without audio; 7/9/12/23 with audio), and the V6 model overview lists extend durations of 1–15 seconds. So a 5-second 720p V6 extend is 45 credits — cheaper than the V4.5-family per-clip rate for the same length.
Worked example, with the assumptions stated: a 5-second 720p extend on V4.5/V4/V3.5 costs 60 credits. The pricing page’s own reference line is “$1 = 5 videos (v6, 720p, 5s, no audio, with Starter pack)” — that implies roughly 225 credits per dollar at the Starter-pack rate, which would put 60 credits around $0.27. That conversion is package- and promotion-dependent; do not treat it as a universal exchange rate. The correct calculation for your budget is: divide the price of the credit package you actually buy by its credit count, then multiply by the per-task credits in the table above. And check the balance endpoint before long batch runs.
For a full walkthrough of how the credit system and per-second rates fit together, our PixVerse pricing breakdown covers the official tables and the subscription plans side by side.
Direct API vs an aggregator route
The PixVerse video extend API is available directly, and it is also resold by aggregators — fal, useapi, kie, wavespeed, and others rank for this query with model cards for a PixVerse extend route. Before comparing any two numbers, line up the billing units: direct PixVerse bills in credits (per clip for the older model families — V5.6, V5.5, V5, and V4.5/V4/V3.5 — and per second for V6), while aggregators bill in USD per second with their own model routing. A credit price and a dollar price are not the same unit, and “the cheapest” changes with the credit package you would have bought anyway.
Modellix is an API aggregator and has a commercial interest in this comparison. We carry a PixVerse extend route, pixverse/v6-video-extend, behind our unified API; its model page showed the following per-second prices on August 5, 2026:
| Quality | Modellix price |
|---|---|
| 360p | $0.0575/sec |
| 540p | $0.0805/sec |
| 720p | $0.1035/sec |
| 1080p | $0.2070/sec |
Two differences matter more than the price number. First, the integration surface: the Modellix route takes a public video URL plus a prompt and duration (1–15 seconds), instead of PixVerse’s source_video_id / upload workflow — if your footage is already behind a URL, that is one less upload-and-store step. Second, billing: USD per second is predictable without a credit package, but you give up PixVerse’s per-clip pricing on the older model family, which can be cheaper for short clips. The honest comparison is: price a representative task in both units using your actual credit package, then add the operational cost of the integration path. For the current catalog of PixVerse routes we carry, the PixVerse provider page lists everything with live prices.
Frequently Asked Questions
Can PixVerse extend video? Yes. The web app has an extend effect, and the API exposes the same capability through POST /openapi/v2/video/extend/generate. You provide an existing video (a source_video_id from a previous generation, or an uploaded video_media_id) plus a prompt, and the API returns a continuation.
How long can a video be on PixVerse? For the extend input, the official limit is 30 seconds per uploaded video. Each extend call adds a fixed chunk — 5 or 8 seconds on the V4.5/V4/V3.5 family (1080p caps at 5), or 1–15 seconds on V6. The docs describe chaining calls to keep a story going (“infinitely expand”), but each call re-enters the queue and bills separately.
How do I extend my AI video? Call the extend endpoint with the original video’s video_id as source_video_id, a continuation prompt, duration, quality, and model; poll the returned video_id until status 1; download the result from the url field. The code in the “Parameters and code” section above is copy-paste ready.
Is there a free way to use the PixVerse video extend API? Not on the API side — it requires an API key and an active subscription with credits. The web app’s free trial applies to the consumer app, not the API. The one automatic refund is for moderation failures (status 7), per the official docs.
Why is my extend request stuck in “Generating”? The official troubleshooting names the most common cause: reusing the same Ai-Trace-Id across requests. Generate a fresh trace id per call. Otherwise check the concurrency cap (500044), the account balance, and the request parameters in that order.
All PixVerse facts, parameter tables, and credit prices above were read from the official Extend guide, Extend API reference, upload documentation, pricing page, and V6 model overview on August 5, 2026; the price table for the Modellix route was read from the v6-video-extend model page the same day. Pricing and parameters change frequently — validate against the live pages before committing budget. Access image and video models from 12 providers, including PixVerse, through a single API key at modellix.ai.
Cover image: illustrative Modellix artwork; it is not a PixVerse product screenshot or source evidence.