Dark amber editorial cover for the PixVerse Restyle API guide: MODELLIX wordmark, two-line title, and a VIDEO TO VIDEO · ONE API capsule

The PixVerse Restyle API in one paragraph

PixVerse Restyle is a video-to-video API that re-renders an existing clip into a new visual style — anime, 3D, cinematic, painterly, or a brand look — while keeping the original motion and composition. You send an input video plus a style choice, and PixVerse returns a restyled copy of the same clip. As of August 5, 2026, the current endpoint is POST https://app-api.pixverse.ai/openapi/v2/video/restyle/generate, billing is 10 credits per second on the official pricing page, and a style is chosen either with a preset restyle_id or a free-text restyle_prompt — never both. That combination of facts is exactly what most pages ranking for “pixverse restyle api” get wrong or leave out: several third-party guides still document a v5-era restyle endpoint that its own host now marks as no longer available, while the official docs’ parameter section links to the wrong page.

What you will not find in this guide is a promise that one access route is cheapest. Restyle pricing has two honest currencies — official PixVerse credits and aggregator USD-per-second rates — and comparing them requires matching the exact clip duration and the exact route. We are an API aggregator with a commercial interest, so the direct-versus-aggregator section states our position and lets you check the numbers yourself.

What Restyle can and can’t do

Restyle is a style re-render, not a video editor. The official docs describe it as instantly transforming clips into new visual styles, and the API reference positions it as the “Scene Style Transfer” member of the Modify family, alongside Swap, Add, and Edit. The practical consequences:

Restyle does Restyle does not
Re-render the visual style of every frame consistently Change content, subjects, or motion
Preserve the original movement and composition Add new scenes or objects
Apply a preset style or a text-described custom style Generate video from a text prompt alone
Accept clips up to 16 seconds Accept video longer than 16 seconds (for now)

The motion-preservation point is the reason teams pick it over frame-by-frame image filters: the model keeps the same camera movement and subject behavior, so the result reads as “the same shot, redrawn” rather than a jittery filter pass. If what you actually need is to swap a person, add an object, or change a scene, that is the Modify API, not Restyle. And if your target is a single still image, the adjacent concept is image style transfer — our AI style transfer guide covers that family separately.

One more boundary worth naming: restyle needs a video input, so the restyle prompt describes the look of the output, not the scene. “A rainy cyberpunk street with neon” restyles the existing footage into that look; it does not film a new street.

Prerequisites: key, trace ID, and credits

Restyle follows the same authentication pattern as every PixVerse API endpoint:

  • API key — created in the PixVerse Platform dashboard. The official how to get an API key guide walks through account setup and key creation. The key is sent in the API-KEY header.
  • Unique Ai-trace-id per request — every request needs its own trace ID. Reusing one is the single most common cause of tasks that hang in “Generating”, per the official troubleshooting notes.
  • An active subscription or purchased API credits — the API does not run on the web app’s promotional trial; it requires a paid balance.

You can check your balance before a long batch run with the credit balance endpoint documented in the official API reference.

Input video: video_id or an uploaded file

Restyle accepts input in two ways, and the request field depends on which you use:

  1. A video already generated through the PixVerse API. You keep the video_id from the original generation response and pass it as source_video_id in the restyle request. The docs cap this path at 16 seconds of source video.
  2. An external video you upload. Upload an .mp4 or .mov file (max resolution 1920, max size 50 MB, max duration 16 seconds) through the upload API. The upload returns a media_id with media_type: "video", and you pass that as video_media_id in the restyle request.

The upload response shape, per the official guide:

1
2
3
4
5
6
7
8
9
{
"ErrCode": 0,
"ErrMsg": "success",
"Resp": {
"media_id": 0,
"media_type": "video",
"url": "https://media.pixverse.ai/111111.mp4"
}
}

Two error messages in the official docs exist specifically for getting these fields wrong: couldn't find a matching source_video_id and couldn't find a matching video_media_id. Both mean the ID you passed does not correspond to a valid video resource — regenerate or re-upload, then retry.

Calling the PixVerse restyle API

The generation endpoint is:

1
POST https://app-api.pixverse.ai/openapi/v2/video/restyle/generate

Every request must provide exactly one style selector:

  • restyle_id — a preset style code from the official restyle list. The current list returned by GET /openapi/v2/video/restyle/list contains eight presets (codes verified August 2026):
restyle_id Look
felted-art Soft wool-felt texture
origami Folded-paper geometry
ukiyo-e Japanese woodblock print
cyberpunk Neon, rain, high-tech grunge
clay Stop-motion clay look
baroque Ornate classical painting
van-gogh Thick brushstrokes, expressive color
animal-world Anthropomorphic animal styling
Four restyle presets applied to the same street scene: origami paper geometry, ukiyo-e woodblock print, cyberpunk neon, and clay stop-motion

The same footage restyled through four preset codes — the motion and composition stay identical, the visual language changes. Illustration of preset behavior, not a specific model output.

  • restyle_prompt — a free-text style description, up to 2,048 characters. Use it when none of the presets matches, or when you want a precise hybrid (“watercolor with origami edges”).

The API rejects requests that provide both or neither: Either "restyle_id" or "restyle_prompt" must be provided. An optional seed value makes restyles reproducible.

A minimal request with a preset style:

1
2
3
4
5
6
7
8
9
curl -X POST https://app-api.pixverse.ai/openapi/v2/video/restyle/generate \
-H "API-KEY: $PIXVERSE_API_KEY" \
-H "Ai-trace-id: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"source_video_id": "1234567890",
"restyle_id": "cyberpunk",
"seed": 42
}'

A custom-style request with an uploaded video:

1
2
3
4
5
6
7
8
curl -X POST https://app-api.pixverse.ai/openapi/v2/video/restyle/generate \
-H "API-KEY: $PIXVERSE_API_KEY" \
-H "Ai-trace-id: $(uuidgen)" \
-H "Content-Type: application/json" \
-d '{
"video_media_id": "9876543210",
"restyle_prompt": "Ghibli-inspired watercolor, soft light, painterly clouds, 2D animation look"
}'

A successful submission returns a video_id inside the standard response envelope:

1
2
3
4
5
6
7
{
"ErrCode": 0,
"ErrMsg": "success",
"Resp": {
"video_id": 0
}
}

If your API plan exposes a different parameter surface than the fields above, the official Restyle guide and its API reference page for Restyle video generation are the authoritative parameter list; the docs update faster than third-party summaries.

Polling status and downloading the result

Generation is asynchronous. Query the status endpoint with the video_id:

1
GET https://app-api.pixverse.ai/openapi/v2/video/result/{id}

The status lifecycle:

Status Meaning What to do
5 Generating Keep polling — the docs recommend intervals of roughly 3–5 seconds
1 Successful Read the url field and download the restyled video
7 Content moderation failure Adjust the prompt or preset and resubmit; credits are auto-refunded
8 Generation failed Check parameters and the official error-code list

A complete submit → poll → download loop in Python:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import time
import uuid
import requests

API_KEY = "YOUR_API_KEY"
BASE = "https://app-api.pixverse.ai/openapi/v2"

def headers():
return {
"API-KEY": API_KEY,
"Ai-trace-id": str(uuid.uuid4()), # fresh ID per request
"Content-Type": "application/json",
}

def restyle(source_video_id, restyle_id):
r = requests.post(
f"{BASE}/video/restyle/generate",
headers=headers(),
json={"source_video_id": source_video_id, "restyle_id": restyle_id},
)
r.raise_for_status()
return r.json()["Resp"]["video_id"]

def wait_for_video(video_id, timeout=600):
deadline = time.time() + timeout
while time.time() < deadline:
r = requests.get(f"{BASE}/video/result/{video_id}", headers=headers())
data = r.json()["Resp"]
if data["status"] == 1:
return data["url"]
if data["status"] in (7, 8):
raise RuntimeError(f"restyle failed with status {data['status']}")
time.sleep(5)
raise TimeoutError("restyle did not finish in time")

video_id = restyle("1234567890", "van-gogh")
print(wait_for_video(video_id)) # download or stream this URL

For production workloads, PixVerse also documents webhook integration so you do not have to poll. The status response carries useful inspection fields — prompt, negative_prompt, style, seed, output dimensions — so you can log exactly what produced a given output.

PixVerse restyle API workflow: input video and style go to restyle/generate, poll video/result/{id} until status 1, then download

The restyle API loop: submit a source video plus one style selector, receive a video_id, poll the status endpoint until status 1, then download the restyled clip.

Pricing: 10 credits per second in context

The official pricing page lists Restyle at 10 credits per second — that is the billing rule for the feature, not a per-clip price, because the clip length is your input length. A 5-second clip costs 50 credits; a 10-second clip costs 100 credits. Two things to pin down before you forecast:

  1. Credits are not dollars. The USD value of a credit depends on the credit pack or subscription plan you buy and any promotional pricing active that day. The honest calculation is clip_seconds × 10 credits × (pack price ÷ credits in pack), with the pack terms read at purchase time.
  2. The rate can move. PixVerse has changed pricing multiple times this year, so treat any number in this article as current as of August 5, 2026, and re-check the official pricing page before committing budget.

A worked comparison for one 5-second restyle, using both billing currencies:

Route Calculation Result
PixVerse official (credits) 5 s × 10 credits/s 50 credits — USD value depends on the pack you buy
Modellix (USD, per-second route) 5 s × $0.1150/s $0.575 per 5-second clip

The per-second figure comes from the pixverse/video-restyle model page, which currently lists $0.1150 per second, video-to-video. This is a like-for-like per-second comparison on one clip length — it is not a claim that one route is cheaper for every workload, and it does not convert official credits to USD. If you want the full credit system explained, our PixVerse pricing breakdown walks through the official tiers and per-second rates side by side.

PixVerse direct vs an aggregator route

You can call the restyle endpoint directly with a PixVerse platform key, or through an aggregator that re-exposes the model with USD billing. The model that runs is the same either way — an aggregator is a routing and billing decision, not a quality difference.

Consideration PixVerse direct Aggregator (e.g. Modellix)
Billing Credits; pack/subscription terms apply USD per second per call
Key management One PixVerse key One key across many providers
Billing units across models Credits per model/feature differ Consistent per-second USD for video
Feature access Full official surface (webhook, balance API, etc.) Surface depends on which routes are exposed
Multi-provider pipeline You integrate PixVerse separately One integration if you already call other video models

Modellix is an aggregator and benefits if you pick this route; the appropriate takeaway is narrower than “aggregators are cheaper.” Use an aggregator when you already call several image and video models through one API key and want a consistent billing unit — see the PixVerse provider page for the current catalog. Use the official platform when you need the deepest feature access and are comfortable managing credits. For the broader PixVerse API surface — keys, polling, error codes, production patterns — our PixVerse API integration guide covers the full workflow.

Common errors and how to fix them

The official docs list a small set of restyle-specific failure modes. Map them before you build retry logic:

Error / symptom Cause Fix
400013 — incorrect parameter type or value Malformed request body Validate types against the API reference schema
400017 — invalid parameter Unknown or unsupported field/value Check field names and enum values (e.g. restyle_id spelling)
couldn't find a matching source_video_id video_id is stale or from another account Regenerate the source video and retry
couldn't find a matching video_media_id Upload ID is wrong or expired Re-upload and pass the fresh media_id
Invalid media_type: not a video resource Uploaded asset is not a video Upload an mp4/mov file
Either "restyle_id" or "restyle_prompt" must be provided Both or neither style field sent Send exactly one style selector
500044 — concurrent generation limit reached Too many parallel jobs Queue tasks or raise the plan’s concurrency limit
Stuck in “Generating” Reused Ai-trace-id Send a fresh trace ID per request

Two behavior notes from the official docs: a status 7 moderation failure refunds the credits automatically, so check balance history before assuming you were charged twice; and status 8 means the generation itself failed — the official error codes page is where the exact strings live.

FAQ

Is the PixVerse restyle API free? No — the API requires an API key, an active subscription, or purchased credits. The free trial shown in the web app does not apply to API calls, and PixVerse does not publish a free API tier for restyle.

Can I restyle a video longer than 16 seconds? Not through the current restyle endpoint — both input paths cap at 16 seconds of source video. Trim the clip first, or check the official docs for updates, since limits change.

What is the difference between PixVerse Restyle and Modify? Restyle re-renders the visual style of the whole video. Modify is the broader family — swap, add, edit, and restyle as its Scene Style Transfer member — for changing content and elements.

How much does a restyle cost? The official billing rule is 10 credits per second of output; the USD value depends on the credit pack you buy. An aggregator route prices the same task in USD per second (Modellix currently lists $0.1150/s for its video-restyle route).

Which restyle preset should I use? The current preset list has eight codes — felted-art, origami, ukiyo-e, cyberpunk, clay, baroque, van-gogh, animal-world. For anything else, describe the look in restyle_prompt (up to 2,048 characters). Call the restyle list endpoint to see the live set.

Why do other guides show a different restyle endpoint? Several third-party pages document an older v5-era endpoint that its own host now marks as unavailable. The current endpoint is POST /openapi/v2/video/restyle/generate — always confirm against the official docs, and you can cross-check usage patterns in our PixVerse how-to guide.


Sources verified August 5, 2026: PixVerse Restyle documentation, PixVerse pricing, PixVerse Modify documentation, the PixVerse API key guide, and the useapi.net restyle endpoint page (which marks the older v5 endpoint as no longer available). PixVerse can change endpoints, limits, and pricing without notice. Modellix is an API aggregator and has a commercial interest in the route comparison above. Access image and video models, 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.