
Image generation and editing companion model: text-to-image, bounding-box edits, and cohesive image sets, with up to 4K output on Pro.
Image generation and editing companion model: text-to-image, bounding-box edits, and cohesive image sets, with up to 4K output on Pro.
wan2-7-imagePOST /v1/images/generationsLive pay-as-you-go rates from the EmpirioLabs catalog. You are billed only for what you use, with no monthly minimum.
Wan2.7 Image runs through POST /v1/images/generations. The request returns a job_id right away; poll GET /v1/jobs/{job_id} until the job completes and read the output URLs from the result. Or add "sync": true to skip polling: the request stays open and returns the finished OpenAI-style image response directly, so OpenAI SDKs work as-is. Get an API key from the EmpirioLabs dashboard.
curl https://api.empiriolabs.ai/v1/images/generations \
-H "Authorization: Bearer $EMPIRIOLABS_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "wan2-7-image",
"prompt": "Describe what you want Wan2.7 Image to generate."
}'curl https://api.empiriolabs.ai/v1/jobs/JOB_ID \
-H "Authorization: Bearer $EMPIRIOLABS_API_KEY"import requests
response = requests.post(
"https://api.empiriolabs.ai/v1/images/generations",
headers={"Authorization": "Bearer YOUR_EMPIRIOLABS_API_KEY"},
json={
"model": "wan2-7-image",
"prompt": "Describe what you want Wan2.7 Image to generate.",
},
)
job = response.json()
# Generation runs as an async job. Poll until it completes.
import time
while True:
status = requests.get(
f"https://api.empiriolabs.ai/v1/jobs/{job['job_id']}",
headers={"Authorization": "Bearer YOUR_EMPIRIOLABS_API_KEY"},
).json()
if status.get("status") in ("completed", "failed"):
print(status)
break
time.sleep(5)Request parameters supported by the Wan2.7 Image API on EmpirioLabs. Defaults apply when a field is omitted.
| Parameter | Type | Default | Range / values | Description |
|---|---|---|---|---|
| prompt | string | - | - | Text prompt. For Image Set mode, describe each image in sequence (e.g. 'First image: ... Second image: ...'). |
| model_variant | enum | wan2.7-image-pro | wan2.7-image-pro, wan2.7-image | Pro: 4K + Thinking Mode + higher quality. Standard: faster, cheaper. |
| aspect_ratio | enum | - | 16:9, 1:1, 9:16, 3:2, 2:3, 4:3, 3:4, 5:4, 4:5 | Optional. If omitted, text-to-image defaults to 16:9; image-edit matches the last input image's native ratio. |
| resolution | enum | 2K | 1K, 2K, 4K | Quality tier. 1K ~1MP, 2K ~4MP, 4K ~16MP (Pro text-to-image only). |
| use_custom_size | boolean | false | - | Override aspect_ratio + resolution with explicit pixel dimensions. |
| custom_width | number | - | 768 to 4096 | Pixels (768–2048; Pro text-to-image up to 4096). Only when use_custom_size=true. Aspect must be in [1:8, 8:1]. |
| custom_height | number | - | 768 to 4096 | Pixels (768–2048; Pro text-to-image up to 4096). Only when use_custom_size=true. |
| enable_sequential | boolean | false | - | Image Set Mode. Generate up to 12 cohesive related images. Disables thinking_mode and color_palette. |
| num_images | number | 1 | 1 to 4 | Standard mode only. Number of images to generate. Each is billed separately. |
| num_images_set | number | 1 | 1 to 12 | Image Set Mode only. Maximum images in the set. The model decides the actual count; you're billed only for images generated. |
| thinking_mode | boolean | true | - | Pro only. Enhanced inference for higher quality at the cost of latency. Auto-ignored when input images are attached or sequential mode is on. |
| image | array | - | - | Up to 9 input image URLs for editing. Triggers image-edit mode automatically. |
| color_palette | string | - | - | Optional JSON array of 3–10 {hex, ratio} objects (ratios sum to 100%). Standard mode only. Example:... |
| bbox_list | string | - | - | Interactive editing boxes as JSON. Use [] for no box, or [[x1,y1,x2,y2]] for one box. |
Upload 1-9 images for editing mode; without images, operates as text-to-image.
On EmpirioLabs, Wan2.7 Image is billed pay as you go: Standard $0.030 per image; Pro $0.075 per image. The live rate card on this page always matches what the API charges.
Wan2.7 Image is served through POST /v1/images/generations on api.empiriolabs.ai with standard bearer-token authentication.
Yes. The EmpirioLabs playground runs Wan2.7 Image in the browser with the same parameters the API exposes, so you can test prompts before writing code.
Create an EmpirioLabs account, then generate a key under API Keys in the dashboard. Billing is pay-as-you-go credits, so you only pay for the requests you make.
Explore our models, or contact us about business inquiries, custom deployments, or anything else.