# Alibaba Qwen Image 3.0 Pro Image Edit Alibaba Qwen Image 3.0 Pro Image Edit transforms one to three reference images using natural-language instructions, optional sizing, and multi-image output. ## API Information - **Model Slug:** alibaba-qwen-image-3-0-pro-image-edit - **Branded URL:** https://www.eachlabs.ai/alibaba/qwen-image-3-0/alibaba-qwen-image-3-0-pro-image-edit - **Provider:** Alibaba - **Category:** Image to Image - **Output Type:** array - **Status:** active - **Base Cost:** $0.075 per image - **Estimated Processing Time:** 15 seconds - **Interactive Demo:** https://www.eachlabs.ai/ai-models/alibaba-qwen-image-3-0-pro-image-edit ## Pricing - **Charge Type:** dynamic - **Estimate:** $0.075 per image - **Pricing Details:** default: $0.075 ## Input Schema | Parameter | Type | Required | Default | Constraints | Description | |-----------|------|----------|---------|-------------|-------------| | prompt | string | Yes | - | - | Editing instruction. Supports Chinese and English. Max 800 characters. | | image_urls | array | Yes | - | - | 1 to 3 input images. Formats: JPG, JPEG, PNG, BMP, TIFF, WEBP, GIF. Resolution 384-3072 px, max 10 MB. The output aspect ratio is determined by the last image. | | negative_prompt | string | No | - | - | Describes content to exclude from the edit. Max 500 characters. | | size | string | No | 1024*1024 | 1024*1024, 1536*1536, 1280*720, 1920*1080, 720*1280, 1080*1920, 1280*960, 1440*1080, 960*1280, 1080*1440, 1152*768, 1536*1024, 768*1152, 1024*1536, 1344*576, 2048*872 | Output resolution as width*height. 1:1 (1024*1024, 1536*1536), 16:9 (1280*720, 1920*1080), 9:16 (720*1280, 1080*1920), 4:3 (1280*960, 1440*1080), 3:4 (960*1280, 1080*1440), 3:2 (1152*768, 1536*1024), 2:3 (768*1152, 1024*1536), 21:9 (1344*576, 2048*872). | | n | integer | No | 1 | 1–6 | Number of images to generate. 1-6. | | seed | integer | No | - | 0–2147483647 | Random seed for reproducible generation. Range: 0-2147483647. | | prompt_extend | boolean | No | true | - | Enable LLM-based prompt rewriting for better editing quality. Default: true. | ## Example Request ```bash curl -X POST https://api.eachlabs.ai/v1/prediction/ \ -H "Authorization: Bearer YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "model": "alibaba-qwen-image-3-0-pro-image-edit", "input": { "image_urls": [ "https://cdn-us.eachlabs.ai/defaults/9520be7d9f4f4cf285ae355e8072a4de.png", "https://cdn-us.eachlabs.ai/defaults/a4dff60a88cb405cb7b85a2f09d5644b.png" ], "prompt": "Take the woman from the first image and dress her in the full outfit from the second image: the cream ribbed t-shirt, white wide-leg jeans, burgundy belt, burgundy NY baseball cap, dark sunglasses, burgundy shoulder bag, and burgundy suede sneakers. Fit every piece naturally to her body with realistic fabric, folds, shadows, and lighting. Keep her exact face, freckles, hair, and identity unchanged. Full-body professional catalog fashion shoot outdoors on a city street, soft natural daylight, with a nicely blurred urban background, and give her a cool, confident editorial pose. Photorealistic, ultra-detailed, 8k." } }' ``` ## Output Schema Response returned by `GET /v1/prediction/{id}` when the job completes: ```json { "status": "success", "predictionID": "string", "output": "array", "metrics": { "predict_time": "number (seconds)" } } ``` ## Polling ```bash curl https://api.eachlabs.ai/v1/prediction/{PREDICTION_ID} \ -H "Authorization: Bearer YOUR_API_KEY" ``` | Status | Meaning | |--------|---------| | `processing` | Still running — poll again | | `success` | Done — read `output` | | `error` | Failed — read `message` / `details` | ## Webhook (alternative to polling) Pass `"webhook_url": "https://your.host/path"` in the create request. Eachlabs POSTs this payload when the job ends: ```json { "exec_id": "prediction-uuid", "status": "succeeded", "output": "https://...", "error": "" } ``` `status` is `"succeeded"` or `"failed"`. `exec_id` equals the `predictionID` from create. Return 2xx within 30 seconds. ## Errors Error body: `{ "status": "error", "message": "...", "details": "..." }` | Code | Meaning | |------|---------| | `400` | Invalid input | | `401` | Missing / invalid `Authorization` bearer token | | `404` | Unknown model or prediction id | | `429` | Rate limit — 100 creates / min, 10 concurrent per key | | `5xx` | Retry with backoff | ## Usage Notes - API Base URL: `https://api.eachlabs.ai/v1` - Authentication: send `Authorization: Bearer YOUR_API_KEY`. Generate a key from the Eachlabs dashboard at https://www.eachlabs.ai/dashboard/api-keys. - File-typed parameters (`*_url`, `image_url`, `video_url`, `audio_url`, etc.) accept publicly-reachable HTTPS URLs only. Upload your asset first (GCS / S3 / your CDN) and pass the resulting URL. Data-URIs and localhost URLs are rejected. - For structured parameters (arrays / objects) send real JSON values, not stringified payloads. - Monetary values are reported in USD; per-token / per-megapixel rates may be billed in micro-cents internally. - Prefer `webhook_url` over polling for long-running predictions — see the Webhook Callback section.