> Markdown mirror of https://router.one/blog/image-generation-api-china-guide for AI assistants and crawlers. Router One is an OpenAI-compatible LLM API gateway.
> Published: 2026-07-18 · Last updated: 2026-09-01 · Author: Router One Team

# Image & Video Generation APIs from China: gpt-image-2 to Hailuo

_Image and video generation APIs from China (August 2026): gpt-image-2, Gemini 3 Pro Image and Seedream for images, plus video clips — no VPN, flat pricing._

Text-to-image and video generation models are now good enough to sit inside real products — marketing pipelines, e-commerce listings, game assets, short-form video. The catch for developers in China is familiar: the strongest models live behind billing pages that want a foreign card and endpoints that are unreliable or unreachable from Mainland networks.

This guide covers what actually works in August 2026: generating images with gpt-image-2, Gemini 3 Pro Image and Gemini 3.1 Flash Image (the line the community searches as "Nano Banana"), Doubao Seedream, and Grok Imagine — and video with Vidu Q3 Turbo, PixVerse, MiniMax Hailuo, and Wan 2.6 — through one gateway key, paid in RMB.

## The Access Problem, Briefly

Every major image or video model has its own gate:

- **gpt-image-2** hangs off an OpenAI platform account, which needs a card most Mainland banks won't issue.
- **Gemini 3 Pro Image and Gemini 3.1 Flash Image** sit behind Google endpoints that are blocked or unstable from China, plus Google Cloud billing.
- **Grok Imagine** requires an xAI account and billing relationship most China-based teams don't have.
- **The video models** each come with their own console, account and top-up flow — running four of them means four integrations and four balances to watch.

[Router One](https://router.one/) puts all of them behind its China-reachable gateway: one key, one wallet you can top up by card or Alipay in a single hosted checkout, and a per-request cost trace for every generation. The dedicated landing pages cover the surface area — [image generation API](https://router.one/image-generation-api) and [video generation API](https://router.one/veo-api-china) — this post is the hands-on walkthrough.

## What's in the Catalog (August 2026 Snapshot)

Media models are unit-priced: a flat USD amount per generated image or clip, no token math. For video, the duration and resolution are fixed per model — that is what makes a flat per-clip price possible. Snapshot at time of writing — live prices are always on [router.one/models](https://router.one/models):

| Model | Type | Fixed spec | Unit price |
| --- | --- | --- | --- |
| gpt-image-2 | image | — | $0.50 / image |
| gemini-3-pro-image-preview | image | — | $0.50 / image |
| gemini-3.1-flash-image-preview | image | — | $0.50 / image |
| doubao-seedream-5-0-260128 | image | — | $0.50 / image |
| grok-imagine-image | image | — | $0.50 / image |
| grok-imagine-image-quality | image | — | $0.50 / image |
| viduq3-turbo | video | 5s, 720p | $3.00 / clip |
| viduq3-turbo-540p | video | 4s, 540p | $1.60 / clip |
| pixverse-video | video | 5s, 540p (v5) | $1.85 / clip |
| MiniMax-Hailuo-2.3 | video | 6s, 768P | $3.20 / clip |
| MiniMax-Hailuo-02 | video | 6s, 768P | $3.20 / clip |
| wan2.6-i2v | video | 5s, 720P, image-to-video | $3.00 / clip |

Veo and Grok Video are not currently in the catalog — the rows above are the whole media lineup.

## Setup: One Key for Everything

Create an API key in the Router One dashboard and top up — card and Alipay share one hosted checkout, and USDT/USDC works on six chains; no foreign credit card required. The same key you may already use for chat models drives the media endpoints.

```bash
export ROUTER_ONE_KEY=sk-your-router-one-key
```

## Generating Images

The image endpoint follows the OpenAI Images API request shape — POST a model ID and a prompt:

```bash
curl -X POST https://api.router.one/v1/images/generations \
  -H "Authorization: Bearer $ROUTER_ONE_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "gpt-image-2",
       "prompt": "Flat-lay product photo of a ceramic teapot, soft morning light"}'
```

Because the shape is OpenAI-compatible, existing OpenAI SDK image code works after changing the base URL and key. Model choice notes from real usage:

- **gpt-image-2** — strongest prompt adherence and in-image text rendering; the default for product shots and UI mockups.
- **Gemini 3 Pro Image ("Nano Banana")** — multimodal prompting and photorealism; strong at restyling reference images.
- **Gemini 3.1 Flash Image** — the Flash entry on the same Gemini line, added to the catalog in August 2026; same prompting, same flat price, worth A/B-ing against the Pro entry on your own prompts before you standardise — the [Nano Banana 2 API guide](https://router.one/blog/nano-banana-2-api-guide) has the full request shapes.
- **[Doubao Seedream 5.0](https://router.one/models/doubao-seedream-5-0-260128)** — the pick when your prompts are in Chinese or the output needs CJK typography.
- **Grok Imagine** — two catalog entries, grok-imagine-image and the higher-fidelity grok-imagine-image-quality. Both cost the same per image, so the choice is about output, not budget.

Full request and response fields are in the [Images API docs](https://router.one/docs/images/createImageGeneration).

## Generating Video

Video generation is **asynchronous**: you submit a task, get a task ID back, and poll until the clip is ready. Don't wrap the submit call in a tight client timeout — poll instead.

```bash
# 1. Submit the task
curl -X POST https://api.router.one/v1/videos/generations \
  -H "Authorization: Bearer $ROUTER_ONE_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "viduq3-turbo",
       "prompt": "Drone shot over terraced rice fields at dawn, mist in the valleys"}'

# 2. Poll the task until it completes
curl https://api.router.one/v1/videos/generations/{task_id} \
  -H "Authorization: Bearer $ROUTER_ONE_KEY"
```

`wan2.6-i2v` is the image-to-video model: it animates a still you pass in, so it needs an `image_url` and rejects a prompt-only request with a 400.

```bash
curl -X POST https://api.router.one/v1/videos/generations \
  -H "Authorization: Bearer $ROUTER_ONE_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "wan2.6-i2v",
       "prompt": "Camera pushes in slowly, steam rising from the cup",
       "image_url": "https://example.com/still.jpg"}'
```

Generation time varies by model and load — keep the task ID and check status rather than holding a connection open. Duration and resolution are locked per model (see the table above), so a `duration` or `size` field in the body changes nothing about the clip you get; the other five models are text-to-video and reject an `image_url` outright. Endpoint details are in the [Videos API docs](https://router.one/docs/videos/submitVideoGeneration).

## Keeping Media Spend Under Control

Media generation is where API bills surprise people — one enthusiastic batch job is suddenly hundreds of images. The gateway's standard controls apply to media models:

- **Per-request traces.** Every generation lands in Dashboard → Logs with model, unit cost, and status. Finance can see exactly what a campaign's asset pipeline cost.
- **Per-key budgets.** Give the image pipeline its own key with a spend cap, separate from chat traffic. A runaway job stops at the cap instead of draining the wallet.
- **Unit pricing.** Because each image is a flat price, cost forecasting is multiplication, not token estimation.

## FAQ

**Is Sora available?**
Not currently. Today's video lineup is Vidu Q3 Turbo, PixVerse, MiniMax Hailuo 2.3 and 02, plus Wan 2.6 for image-to-video; Veo and Grok Video are not currently in the catalog either. The catalog updates as models ship; [router.one/models](https://router.one/models) is the source of truth.

**What about Midjourney?**
Not in the catalog. The image lineup is gpt-image-2, Gemini 3 Pro Image, Gemini 3.1 Flash Image, Doubao Seedream, and Grok Imagine.

**Is billing token-based?**
No — media models are unit-priced per image or per video. Chat models on the same key remain token-metered. Both appear in the same cost trace and usage dashboard.

**Can one key serve chat, image, and video?**
Yes. That's the point of the gateway: one OpenAI-compatible key covers the chat catalog, /v1/images/generations, and /v1/videos/generations, with per-key budget controls across all of it.

**How do I pay in RMB?**
Top up the wallet by card or Alipay on one hosted checkout — amounts convert at the checkout rate. Stablecoins (USDT/USDC on six chains) also work. See the [payment walkthrough](https://router.one/blog/wechat-pay-alipay-openai-claude-api).

## Conclusion

Image and video generation from China no longer requires a VPN, a foreign card, or juggling three vendor accounts. One gateway key covers gpt-image-2, Nano Banana, Seedream, and Grok Imagine for stills, and Vidu Q3 Turbo, PixVerse, MiniMax Hailuo and Wan 2.6 for clips — with flat unit pricing and a cost trace on every generation.

Start with the [image generation API page](https://router.one/image-generation-api) for the endpoint surface, the [video generation API page](https://router.one/veo-api-china) for video specifics, and [router.one/models](https://router.one/models) for live pricing.

## See also

- Canonical page: https://router.one/blog/image-generation-api-china-guide
- LLM API Payment: https://router.one/wechat-pay-llm-api
- All blog posts: https://router.one/blog
- Models and per-model token rates: https://router.one/models (markdown: https://router.one/models.md)
- Pricing: https://router.one/pricing
- API docs (markdown): https://router.one/docs.md
- Company facts: https://router.one/facts/company.md
