Qwen-Image 3.0 Pro
Qwen-Image 3.0 Pro text-to-image and image editing in a single endpoint. Pass image_list to edit reference images (1-3), or omit it for pure text-to-image. Always returns a single image.
Pricing — output tier plus a surcharge per reference image:
| What | Tokens | USD |
|---|---|---|
| Output, 1K | 2.43 | $0.049 |
| Output, 2K | 4.85 | $0.097 |
| Each reference image | 0.19 | $0.0039 |
Example: 2K with 3 reference images = 4.85 + 3 x 0.19 = 5.42 tokens.
image_size decides the price tier. Two cases are billed differently from what you send: ratio: auto is always billed at the 2K rate (the model picks the resolution, so it cannot be known up front), and 1:8 / 8:1 are always billed at the 1K rate (they cannot be produced above that tier).
For a cheaper flat rate use /api/v1/qwen-image-3, where both tiers cost 1.75 tokens.
Returns an img_uuid; poll GET /api/v1/jobs/detail (or use custom_callback_url) to get the generated image.
Headers
Body
Text prompt describing the image.
1 - 2000Aspect ratio. Defaults to auto, which lets the model pick the resolution from the prompt. Note: 1:8 and 8:1 are only produced at the 1K tier.
auto, 1:1, 16:9, 9:16, 4:3, 3:4, 2:3, 3:2, 1:2, 2:1, 1:4, 4:1, 1:8, 8:1 Output resolution tier, together with ratio it decides the exact pixel size. See the pricing note above — it also decides what you pay.
1K, 2K Optional reference images for image editing, [{"url": "https://..."}]. Up to 3 images, each under 10MB. The array order is the order the prompt refers to them in. Each one adds 0.19 tokens.
1 - 3 elementsOptional. Describes what should not appear in the image.
2000Optional. Fixing the seed makes results more reproducible.
0 <= x <= 2147483647Prompt rewriting mode. agent rewrites more thoroughly but is text-to-image only — sending it together with image_list is rejected.
direct, agent Optional. A publicly accessible HTTPS URL. When the task status changes (processing / success / failed), GoEnhance sends a POST request to this URL. The request body is identical to the response of GET /api/v1/jobs/detail. If your server does not respond with HTTP 200, the notification is retried up to 3 times, with a 3-second timeout per attempt.
"https://your-server.com/goenhance/callback"
