---
title: "Uncensored AI video generator API: price per second"
canonical: https://uplinkswitch.ai/blog/uncensored-ai-video-api
generated: 2026-10-20T18:56:23.715Z
source: https://uplinkswitch.ai/blog/uncensored-ai-video-api
base_url: https://api.uplinkswitch.com/v1
---

# 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.

October 19, 2026·UplinkSwitch·[All posts](https://uplinkswitch.ai/blog)

## 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](https://uplinkswitch.ai/models/media/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](https://uplinkswitch.ai/uncensored) models and everything else in the catalog. Every price on this page is read from the live catalog when the page is rebuilt.

| Resolution | Per second | 5 s clip | 10 s clip | 30 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](https://uplinkswitch.ai/models/media/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](https://uplinkswitch.ai/blog/uncensored-image-generator-api); 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](https://uplinkswitch.ai/guides/media). 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.

| Setting | Values | Default |
| --- | --- | --- |
| prompt | text, required | none |
| resolution | 480p, 720p, 1080p | 720p |
| duration | 2 to 30 seconds | 5 |
| aspect\_ratio | adaptive, 16:9, 4:3, 1:1, 3:4, 9:16 | adaptive |
| audio | true or false | true |
| seed | 0 to 2147483647 | random |
| enable\_safety\_checker | true or false | false |

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](https://uplinkswitch.ai/models/media/tasks/image-to-video) 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](https://uplinkswitch.ai/models/media/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.

| Resolution | 10 clips | 100 clips | 1,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.

| Length | 480p | 720p | 1080p |
| --- | --- | --- | --- |
| 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.

| Option | Price basis | Read | Pick it for |
| --- | --- | --- | --- |
| Venice AI | Video variable by resolution and duration; image edit $0.04 per edit | 2026-10-19 | one account for uncensored text, image, video and audio |
| SpicyAPI | Per second: Wan 3.0 from $0.045, MiniMax H3 from $0.037, Seedance 2.5 from $0.123 | 2026-10-19 | image to video on three model families |
| Wan on your own GPU | No per-clip charge; the card and the render time | July 14, 2026 | volume on hardware you already own |
| UplinkSwitch | Per second, $0.15 at 480p, live | live | one 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](https://docs.venice.ai/overview/pricing) 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](https://spicyapi.ai/create) 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](https://locallyuncensored.com/blog/uncensored-ai-video-locally.html) (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](https://arxiv.org/abs/2503.20314)).

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 code | What it means |
| --- | --- |
| 400 invalid\_request | No 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\_allowed | The minors rule, or a sexual edit of an image not generated here. Nothing runs, nothing is charged. |
| 401 invalid\_api\_key | The key is missing or not valid. |
| 402 insufficient\_balance | Top up the credit and send again. |
| 403 scope\_denied | This key is not allowed to call that model. |
| 404 model\_not\_found | The id is misspelled; copy it from the table. |
| 429 rate\_limited | Too many requests at once; retry shortly. |
| status: failed | The 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](https://uplinkswitch.ai/proof), with every verdict public, and every month closes with a signed statement you can check at [/statements/verify](https://uplinkswitch.ai/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](https://uplinkswitch.ai/guides/veo-3-1).

Get a key: prepaid from $10, no subscription, 30-day price lock. [Open the console](https://uplinkswitch.ai/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](https://uplinkswitch.ai/blog/uncensored-image-generator-api).

**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](https://uplinkswitch.ai/models/media/tasks/image-to-video).

**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.

## Related

-   [Uncensored LLM API](https://uplinkswitch.ai/uncensored)
-   [Uncensored AI video generator API](https://uplinkswitch.ai/models/media/wan-3.0-video-uncensored)
-   [Uncensored image edit API](https://uplinkswitch.ai/models/media/seedream-5.0-lite-edit-uncensored)
-   [Chroma Uncensored](https://uplinkswitch.ai/models/media/chroma-uncensored)
-   [Uncensored AI image generator API](https://uplinkswitch.ai/blog/uncensored-image-generator-api)
-   [Image, video and speech API guide](https://uplinkswitch.ai/guides/media)
-   [Veo 3.1 API](https://uplinkswitch.ai/guides/veo-3-1)
-   [Image-to-video models](https://uplinkswitch.ai/models/media/tasks/image-to-video)
-   [Daily real-model check](https://uplinkswitch.ai/proof)
