Qwen Image Layered API
Alibaba's open layer-decomposition model — splits one image into 2 to 10 editable RGBA layers.
Qwen Image Layered is an image layer decomposition model from Qwen, available on OttoPort's OpenAI-compatible API as the model ID qwen-image-layered at $0.028 / layer as of 2026-10-14.
Provider
Qwen
Price
$0.028 / layer
Model ID
qwen-image-layered
Type
image layer decomposition model
Create with Qwen Image Layered
layers
Qwen Image Layered API pricing
What OttoPort bills for Qwen Image Layered, and what that works out to per unit. Rates are read from the same catalog the gateway meters against, and were current on 2026-10-14.
| Per layer | $0.028 | each layer of the returned stack |
|---|---|---|
| A 4-layer split | $0.112 | subject, text, decoration, background |
| A 10-layer split | $0.28 | the most layers Qwen Image Layered returns |
No subscription and no minimum — OttoPort bills prepaid credits against usage. See the full rate card.
Call Qwen Image Layered in three lines
Send "model": "qwen-image-layered" to POST https://ottoport.ai/api/v1/images/generations with an OttoPort key. No Qwen account, no waitlist, no separate SDK.
curl https://ottoport.ai/api/v1/images/generations \
-H "Authorization: Bearer $OTTOPORT_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "qwen-image-layered",
"image_url": "https://example.com/poster.png",
"num_layers": 4
}'import requests
resp = requests.post(
"https://ottoport.ai/api/v1/images/generations",
headers={"Authorization": "Bearer " + API_KEY},
json={"model": "qwen-image-layered", "image_url": "https://example.com/poster.png",
num_layers=4},
).json()
# One entry per RGBA layer, bottom of the stack first.
for item in resp["data"]:
print(item["layer"]["index"], item["layer"].get("name"), item["url"])const res = await fetch("https://ottoport.ai/api/v1/images/generations", {
method: "POST",
headers: {
Authorization: `Bearer ${API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "qwen-image-layered",
image_url: "https://example.com/poster.png",
num_layers: 4
}),
});
// One entry per RGBA layer, bottom of the stack first.
const { data } = await res.json();
for (const item of data) console.log(item.layer.index, item.layer.name, item.url);Before you start
- 1. Create a key at /api-keys.
- 2. Top up credits — the smallest pack is $25.
- 3. Paste the request. It returns on the same request.
Full reference at /docs, or drive it from an agent with the MCP server and CLI.
Request parameters
The body POST https://ottoport.ai/api/v1/images/generations accepts for Qwen Image Layered.
| Field | Type | Required | Notes |
|---|---|---|---|
| model | string | Yes | Always qwen-image-layered for Qwen Image Layered. |
| image_url | string | Yes | The image to split. One per request; every layer comes back as its own RGBA PNG in `data`, bottom of the stack first. |
| prompt | string | No | A caption of the image, to steer how it is separated. Not a generation prompt. |
| num_layers | integer | No | How many layers to split into, 2 to 10. Default 4. Each layer bills separately. |
| seed | integer | No | Reproducibility, where the model honours it. |
Qwen Image Layered direct vs through OttoPort
Qwen Image Layered is the same model either way — what changes is how many accounts, keys, and integrations you carry to reach it.
| Qwen direct | Via OttoPort | |
|---|---|---|
| Accounts and keys | A Qwen account, plus one more for every other model you add | One OttoPort account and one key for the whole catalog |
| Request shape | Qwen's own SDK and response format | OpenAI-compatible — point baseURL at OttoPort and change the model string |
| Switching models | A new integration per provider | Replace qwen-image-layered with any other model ID in the catalog |
| Billing | A separate invoice and contract per provider | Prepaid credits, no subscription, one usage ledger |
| Provider outages | Your call fails | Configured backup routes are tried in order on provider failure |
Give it a flat design or a product shot.
Text, subject and background come back as separate RGBA layers.
Ask for fewer layers to keep related parts grouped.
Qwen Image Layered API questions
Cost, keys, and model IDs for Qwen Image Layered on OttoPort.
How much does the Qwen Image Layered API cost?
On OttoPort, Qwen Image Layered costs $0.028 / layer as of 2026-10-14. For scale, a 4-layer split: $0.112. Billing is prepaid usage with no subscription and no minimum, and the current rate is always published at ottoport.ai/pricing.
How do I get a Qwen Image Layered API key?
You do not need a Qwen key. Create an OttoPort account, generate a key at ottoport.ai/api-keys, and send it as "Authorization: Bearer <key>" to POST https://ottoport.ai/api/v1/images/generations with "model": "qwen-image-layered". The same key reaches every other model in the catalog.
What is the model ID for Qwen Image Layered?
The OttoPort model ID for Qwen Image Layered is qwen-image-layered. Pass it as the model field on POST https://ottoport.ai/api/v1/images/generations, or list it programmatically from GET https://ottoport.ai/api/v1/models.
What does Qwen Image Layered return?
One entry in data per RGBA layer, bottom of the stack first, each with a url and a layer object carrying its index. Send the source image as image_url on POST https://ottoport.ai/api/v1/images/generations; num_layers picks how many layers to split into, from 2 to 10. You are billed per layer returned, $0.028 / layer.
Do I need a Qwen account to use Qwen Image Layered?
No. OttoPort connects to Qwen on your behalf, so one OttoPort account covers Qwen Image Layered and every other model in the catalog — no per-provider contracts, keys, or invoices.
Other image generation models on the same API
Same endpoint, same key — swapping model is a one-string change from qwen-image-layered.
GPT Image 2.5 Flare API
OpenAI
$0.026 / image
GPT Image 2.5 API
OpenAI
$0.026 / image
GPT Image 2 API
OpenAI
$0.07 / image
Nano Banana 2 API
$0.088 / image
Nano Banana 2 Lite API
$0.044 / image
GPT Image 1.5 API
OpenAI
$0.044 / image
Browse the full catalog — every model with its provider and per-unit price.