Uncensored AI video generator API: price per second and one request

An uncensored AI video generator API priced per second: Wan 3.0 Video Uncensored at 480p, 720p and 1080p live from the catalog, a clip we made on 2026-10-19, and one request.

·UplinkSwitch·All posts

Uncensored AI video generator API: the price per second

An uncensored AI video generator API is one HTTP request that returns a clip the mainstream video APIs refuse to make. On this key that model is Wan 3.0 Video Uncensored: Alibaba's Wan 3.0 text to video with the safety filter off, billed per second of output, on the same key as the uncensored LLM API models and everything else in the catalog. Every price on this page is read from the live catalog when the page is rebuilt.

ResolutionPer second5 s clip10 s clip30 s clip
480p$0.15$0.75$1.50$4.50
720p$0.30$1.50$3.00$9.00
1080p$0.60$3.00$6.00$18.00

USD, live from GET /v1/catalog/media for wan-3.0-video-uncensored. A clip bills its length in seconds times the per-second rate of its resolution. Clips run 2 to 30 seconds; the default is 5.

The same key edits images with the filter off. Seedream 5.0 Lite Edit Uncensored is $0.0313 an edit: a prompt plus the images to change, output up to 3K, up to 15 images a request. 100 edits come to $3.13; 1,000 come to $31.30. The five uncensored text-to-image models are priced per image in the uncensored image generator API post; this post covers video and edits only.

One request: submit, poll, download

Video runs through POST /v1/generations, the endpoint in the media API guide. The call answers at once with a generation id and the price already set; the clip renders for a few minutes, so you poll the id until its status is succeeded or failed. Send the model, a prompt, a resolution and a length.

shell
curl https://api.uplinkswitch.com/v1/generations \
  -H "Authorization: Bearer $UPLINK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "wan-3.0-video-uncensored",
    "input": {
      "prompt": "A lighthouse in a storm at night, cinematic, slow push-in",
      "resolution": "480p",
      "duration": 5,
      "aspect_ratio": "16:9"
    }
  }'
202 Accepted
{
  "id": "gen_9c41e2…",
  "object": "generation",
  "model": "wan-3.0-video-uncensored",
  "kind": "video",
  "status": "queued",
  "outputs": [],
  "charge": { "amount_usd": "0.7500", "units": 5, "unit": "second", "refunded": false }
}

charge.units is the length in seconds and charge.amount_usd is the 480p rate times five, fixed before the first frame renders. Read the generation back by id:

shell
curl https://api.uplinkswitch.com/v1/generations/gen_9c41e2… \
  -H "Authorization: Bearer $UPLINK_API_KEY"
200 OK
{
  "id": "gen_9c41e2…",
  "status": "succeeded",
  "outputs": [
    { "url": "https://api.uplinkswitch.com/v1/files/2026-10-19/gen_9c41e2…/0.mp4", "content_type": "video/mp4" }
  ],
  "charge": { "amount_usd": "0.7500", "units": 5, "unit": "second", "refunded": false }
}

The MP4 is at outputs[0].url, on our own domain, for 30 days. Download what you want to keep. In Python the whole loop is twenty lines:

video.py
import os, time, requests

BASE = "https://api.uplinkswitch.com/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['UPLINK_API_KEY']}"}

gen = requests.post(
    f"{BASE}/generations",
    headers=HEADERS,
    json={
        "model": "wan-3.0-video-uncensored",
        "input": {
            "prompt": "A lighthouse in a storm at night, cinematic, slow push-in",
            "resolution": "480p",
            "duration": 5,
            "aspect_ratio": "16:9",
        },
    },
).json()
print("charged", gen["charge"]["amount_usd"])   # set before the clip renders

while gen["status"] not in ("succeeded", "failed"):
    time.sleep(10)
    gen = requests.get(f"{BASE}/generations/{gen['id']}", headers=HEADERS).json()

if gen["status"] == "succeeded":
    print(gen["outputs"][0]["url"])   # the MP4, served from https://api.uplinkswitch.com/v1 for 30 days
else:
    print("failed and refunded:", gen)

The settings are the model's own, read from the catalog. Each one goes in input; an unknown setting is refused before anything runs.

SettingValuesDefault
prompttext, requirednone
resolution480p, 720p, 1080p720p
duration2 to 30 seconds5
aspect_ratioadaptive, 16:9, 4:3, 1:1, 3:4, 9:16adaptive
audiotrue or falsetrue
seed0 to 2147483647random
enable_safety_checkertrue or falsefalse

From GET /v1/catalog/media, params of wan-3.0-video-uncensored. Only resolution changes the price.

What uncensored means on a hosted video API

Wan 3.0 ships with a safety checker that reads the prompt and the frames and blocks adult output. On the filtered build in the catalog, Wan 3.0 Text to Video, that checker is on. On Wan 3.0 Video Uncensored the same weights run with enable_safety_checker set to false by default, and that is the whole difference: same model, same price per second, no filter pass. Send true on a request and the filter is back for that one call.

That is a narrower promise than no rules at all. Every hosted generator, this one included, runs under its own acceptable-use terms and its payment processor's, which is why the local route below exists for people who want none. Here the rules are two, listed further down, and the minors rule is checked before the render, so a refused prompt costs nothing. Everything else a text-to-video model can draw, this one draws: nudity, violence, horror, the scenes a mainstream video API flags as unsafe and declines.

It is not a jailbreak. Nothing is added to your prompt and no system text rides along in the request. The charge is the seconds of output at the rate for the resolution, and nothing else.

Image to video, and the uncensored image edit API

Wan 3.0 Video Uncensored takes a text prompt only. There is no image_urls setting on it, so an uncensored image to video API is not something this key offers today. The image-to-video models in the catalog, Wan 3.0 Image to Video among them, run with their safety filters on and are priced per second on their own pages.

What the key does offer with the filter off is an image edit. Send a prompt and the image URLs to seedream-5.0-lite-edit-uncensored on the same generations endpoint and the edited picture comes back in outputs, at any of 10 sizes from 2K to 21:9 or an exact WIDTHxHEIGHT.

shell
curl https://api.uplinkswitch.com/v1/generations \
  -H "Authorization: Bearer $UPLINK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "seedream-5.0-lite-edit-uncensored",
    "input": {
      "prompt": "Replace the sky with a thunderstorm, keep the lighthouse",
      "image_urls": ["https://api.uplinkswitch.com/v1/files/2026-10-19/gen_7d2e…/0.png"],
      "size": "2K"
    }
  }'

One rule is specific to this model. A sexual edit, undressing and nudity and the like, runs only on an image this API generated: a /v1/files URL from your own request. Any other source is refused with 400 content_not_allowed, so no real person's photo is undressed here. A non-sexual edit runs on any picture you link.

The pipeline that fits that rule starts on an uncensored image model. Make the base image on Chroma Uncensored at $0.003, edit it at $0.0313, and the pair costs $0.0343. A hundred such pairs come to $3.43.

What we measured on 2026-10-19

On 2026-10-19 we sent one text prompt to wan-3.0-video-uncensored through the gateway with our own key, 2 seconds at 480p, the shortest clip the settings allow. It came back in about three minutes as an 854x480 H.264 MP4, 60 frames, and the response reported a charge of $0.30: 2 seconds at the 480p rate, which is $0.30 at today’s price. The same day Seedream 5.0 Lite Edit Uncensored turned an image made on Lustify SDXL Uncensored into a 2048x2048 PNG in about a minute for $0.0313.

Two things follow. Budget minutes per clip, not seconds, and poll rather than hold the connection. And test a prompt at 2 seconds and 480p ($0.30) before you spend on 1080p, where the same 2 seconds are $1.20. The table below is a month of 5-second clips at each resolution.

Resolution10 clips100 clips1,000 clips
480p$7.50$75.00$750.00
720p$15.00$150.00$1,500.00
1080p$30.00$300.00$3,000.00

USD, 5-second clips at the live per-second rate. A clip that fails is refunded, so the figure is for clips that finish.

Picking resolution, length and aspect ratio

Only resolution moves the price. Length multiplies it, and aspect ratio, audio and seed cost nothing: a 9:16 clip for a phone bills the same per second as 16:9, and a clip with audio the same as one without. The matrix is the per-second rate times the length, with no setup fee and no minimum beyond the 2-second clip.

Length480p720p1080p
2 s$0.30$0.60$1.20
5 s$0.75$1.50$3.00
10 s$1.50$3.00$6.00
15 s$2.25$4.50$9.00
30 s$4.50$9.00$18.00

USD per clip, live per-second rate times the length. Lengths run 2 to 30 seconds in whole seconds.

Draft at 480p and 2 seconds ($0.30) until the prompt gives you the motion you want, then render the final at 720p or 1080p. A seed lets you repeat a draw; leave it out and each request draws fresh. aspect_ratio adaptive leaves the framing to the model; set 16:9 for a wide frame, 9:16 for vertical and 1:1 for square. audio is on by default and can be turned off for a clip you will score yourself.

For a run of clips, submit them all and poll them together rather than one at a time: each request is accepted at once with its own id and its own charge, and one loop can poll every id. The console's Media page lists every generation on the org with its status and cost, so a batch is easy to watch without code.

Venice, SpicyAPI and Wan on your own GPU

Two other hosted sellers answer this search, and one local route. Each has a real case; the figures are what their pages said on 2026-10-19.

OptionPrice basisReadPick it for
Venice AIVideo variable by resolution and duration; image edit $0.04 per edit2026-10-19one account for uncensored text, image, video and audio
SpicyAPIPer second: Wan 3.0 from $0.045, MiniMax H3 from $0.037, Seedance 2.5 from $0.1232026-10-19image to video on three model families
Wan on your own GPUNo per-clip charge; the card and the render timeJuly 14, 2026volume on hardware you already own
UplinkSwitchPer second, $0.15 at 480p, liveliveone prepaid balance for the clip, the image and the chat model

Competitor figures are dated literals from their own pages; ours is read from the catalog at render.

Venice sells one API for text, image, video and audio, with its own uncensored builds. Its pricing page lists video as variable by resolution and duration, and its image edit endpoint carries a safe_mode switch and a qwen-edit-uncensored model at $0.04 per edit (read 2026-10-19). For a per-second video figure, read their video models page; we will not type one we have not seen.

SpicyAPI prices Seedance, MiniMax and Wan "Spicy" editions by the second, pay per run from a prepaid balance, with text to video and image to video on each. Its page lists Wan 3.0 from $0.045 a second, MiniMax H3 from $0.037 and Seedance 2.5 from $0.123 (read 2026-10-19); which resolution and length each "from" rate covers is on their page. That Wan rate as listed is under our 480p rate, and image to video is a thing we do not sell uncensored.

The local route is free per clip. Locally Uncensored (July 14, 2026) walks through Wan, HunyuanVideo, LTX and FramePack in ComfyUI on your own card, text to video and image to video, with no subscription and no API key. The Reddit threads on page 1 give the same answer. The cost is the GPU, the VRAM it needs and the minutes per clip; the Wan weights themselves are open (Wan technical report).

What this key adds is one balance for the whole job. The chat model that writes the prompt, the Chroma image the edit starts from and the clip all bill from the same prepaid credit, the price is locked for 30 days from the top-up, a failed generation is refunded in full, and the file sits on our domain for 30 days.

Rules, errors and refunds

Two rules apply to every uncensored media model here. No clip or image may depict a minor, and no real person's likeness without that person's consent. A prompt that puts a minor in the picture is refused with 400 content_not_allowed before anything runs, and nothing is charged. The sexual-edit rule above is the third, and it applies to the edit model only.

Status and codeWhat it means
400 invalid_requestNo model or prompt, a duration outside 2 to 30, a resolution not in the list, or a setting the model does not have.
400 content_not_allowedThe minors rule, or a sexual edit of an image not generated here. Nothing runs, nothing is charged.
401 invalid_api_keyThe key is missing or not valid.
402 insufficient_balanceTop up the credit and send again.
403 scope_deniedThis key is not allowed to call that model.
404 model_not_foundThe id is misspelled; copy it from the table.
429 rate_limitedToo many requests at once; retry shortly.
status: failedThe clip could not be made. The charge is refunded in full, automatically. A generation still unfinished after six hours is marked failed and refunded.

A key can carry a list of the models it may call and a monthly spend limit, set in the console. Give the app that makes video a key limited to wan-3.0-video-uncensored and seedream-5.0-lite-edit-uncensored; any other model comes back 403 scope_denied, and a leaked key spends at most the limit before you revoke it.

How we tested, and where the prices come from

The clip and the edit above are our own calls through the gateway on 2026-10-19, with the output size, format, time and reported charge written down that day. No price on this page is typed by hand: the per-second and per-edit figures are read from GET /v1/catalog/media each time the page is rebuilt, at most five minutes apart, so the $0.15 shown for 480p is today’s rate. The chat models on the same key get a daily real-model check, with every verdict public, and every month closes with a signed statement you can check at /statements/verify.

The other video models on the key, Veo 3.1, Seedance, Kling and the filtered Wan builds, are priced per second against the developer's list in the Veo 3.1 API guide.

Get a key: prepaid from $10, no subscription, 30-day price lock. Open the console.

Questions

Is there a free uncensored AI video generator? On your own GPU, yes: Wan, HunyuanVideo and LTX run locally through ComfyUI with no per-clip charge, and the cost is the graphics card and the render time. Through this API every clip bills from prepaid credit, from $0.15 a second at 480p; there is no free tier.

Does Venice AI have a video generator API? Yes. Venice sells one API for text, image, video and audio; its pricing page lists video as variable by resolution and duration and image edits on qwen-edit-uncensored at $0.04 per edit (read 2026-10-19). Here Wan 3.0 Video Uncensored is priced per second at three fixed resolutions, $0.15 at 480p to $0.60 at 1080p, read live from the catalog.

Is there an unrestricted AI video generator app? The sites that rank for that search are consumer web apps with a prompt box. This is an API, with the same prompt box in the console: the Media page runs the same model as one of your keys and lists every clip with its status and cost. Two rules apply in both places: no clip may depict a minor, and no real person’s likeness without consent.

What AI can draw uncensored? On this key, five uncensored image models, Chroma Uncensored among them at $0.003 an image, next to the video and edit models above. Each answers POST /v1/images/generations in OpenAI’s image format. See the uncensored image generator API post.

Does the uncensored video API take an image as input? No. Wan 3.0 Video Uncensored takes a text prompt, a resolution, a length, an aspect ratio and an optional seed; there is no image_urls setting on it. The image-to-video models in the catalog run with their safety filters on. See the image-to-video price list.

Is there an NSFW video API? This is one: wan-3.0-video-uncensored on POST /v1/generations runs with enable_safety_checker false by default, so adult prompts render. Two rules stay: no minor in any clip, and no real person’s likeness without that person’s consent. A prompt that breaks the first is refused with 400 content_not_allowed before anything runs, and nothing is charged.

How long does a clip take? In our 2026-10-19 run a 2-second 480p clip came back in about three minutes. Video on this endpoint runs one to five minutes; the request answers at once with an id and you poll it.

What does a 10-second 1080p clip cost? $6.00 today: 10 seconds at $0.60 a second, the live 1080p rate. The price is set when the request is accepted, and a clip that fails is refunded in full.

Can I put the safety filter back? Yes. Send enable_safety_checker: true in the input and the request runs as Wan 3.0 Text to Video does, at the same price per second.

What is the best uncensored AI video generator? The lists that rank for that question score consumer apps by pass rate and output quality, and we have not scored quality. What this page can measure is price and time: $0.15 a second at 480p, clips of 2 to 30 seconds, and about three minutes for a 2-second 480p clip on 2026-10-19. Run the same prompt here and on one other seller and compare the two files.

Price index and model launches, once a month. Unsubscribe in one click.