Standard
9
credits / request
= $0.009 USD / request
100 requests ≈ $0.90 · 1,000 requests ≈ $9.00
OpenAI
Available via APIImage GenerationGenerate new images or edit references with OpenAI's image model through one Wizzx Playground.
gpt-image-2New accounts start with $0.20 in free credits, about 22 requests at the starting price.
GPT Image 2 is developed by OpenAI. Wizzx provides API access to it and does not own the model. All trademarks belong to their respective owners.
Next: turn the image into a video with
Model Guide
Generate new images or edit references with OpenAI's image model through one Wizzx Playground.
GPT Image 2 gives one workflow for creating an image from a prompt or editing supplied references. In Wizzx, leaving the reference area empty starts a generation; adding one or more images switches the same request to editing.
| Wizzx control | Current behavior |
|---|---|
| Prompt | Required for generation and editing |
| Reference images | Optional, up to 10 public image URLs |
| Size | Auto, square, landscape, or portrait |
| Quality | Auto, low, medium, or high |
| Output format | PNG, JPEG, or WebP |
Describe the subject, composition, lighting, and intended visual style. For edits, state what should change and what should remain unchanged. When using several references, explain the role of each image instead of relying on their order alone.
Wizzx generates one image per request. Size, quality, output format, and the number of references do not change its fixed request price. The live credit amount shown on the page comes from the backend catalog.
Backend pricing
Model identity, billing unit and every price tier below are read from the backend catalog.
9
credits / request
= $0.009 USD / request
100 requests ≈ $0.90 · 1,000 requests ≈ $9.00
1 credit = $0.001 USD. The final deduction returned by the API is authoritative.
Back to all modelsEvery request is asynchronous: submit the task, keep the task ID, then poll for the result. The body below uses the model's default settings.
Sign in and create a key in the dashboard. Set WIZZX_API_KEY in your server environment; never expose it in browser code.
Send a POST request to the model endpoint. A successful submission returns data.task_id; keep that ID before polling. Submission is not generation completion.
Replace YOUR_TASK_ID with the returned ID and query /api/v1/task/status. Wait for SUCCEEDED and read the output URLs. Stop on FAILED or REVIEW_REQUIRED; do not automatically resubmit an uncertain task.
curl -X POST \
https://api.wizzx.ai/api/v1/task/submit/gpt-image-2 \
-H "Authorization: Bearer $WIZZX_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"size": "auto",
"quality": "auto",
"output_format": "png",
"prompt": "A cinematic product photo on a reflective surface"
}'const response = await fetch("https://api.wizzx.ai/api/v1/task/submit/gpt-image-2", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.WIZZX_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
"size": "auto",
"quality": "auto",
"output_format": "png",
"prompt": "A cinematic product photo on a reflective surface"
}),
});
const payload = await response.json();
const task = payload.data ?? payload;
const taskId = task.task_id;import os
import requests
response = requests.post(
"https://api.wizzx.ai/api/v1/task/submit/gpt-image-2",
headers={
"Authorization": f"Bearer {os.environ['WIZZX_API_KEY']}",
},
json={
"size": "auto",
"quality": "auto",
"output_format": "png",
"prompt": "A cinematic product photo on a reflective surface"
},
)
payload = response.json()
task = payload.get("data", payload)
task_id = task["task_id"]curl -X POST \
https://api.wizzx.ai/api/v1/task/status \
-H "Authorization: Bearer $WIZZX_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"task_id": "YOUR_TASK_ID"
}'const response = await fetch("https://api.wizzx.ai/api/v1/task/status", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.WIZZX_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({ task_id: "YOUR_TASK_ID" }),
});
const payload = await response.json();
const task = payload.data ?? payload;import os
import requests
response = requests.post(
"https://api.wizzx.ai/api/v1/task/status",
headers={
"Authorization": f"Bearer {os.environ['WIZZX_API_KEY']}",
},
json={"task_id": "YOUR_TASK_ID"},
)
payload = response.json()
task = payload.get("data", payload)The fields this endpoint accepts on Wizzx, read from the same schema as the Playground form.
| Parameter | Type | Default | Allowed values | Description |
|---|---|---|---|---|
promptPromptrequired | string | — | ≤ 32,000 | Describe the image to generate or the edit to apply. |
image_urlsReference Images | url[] ≤ 10 | — | — | Optional. Add up to 10 public images to switch from generation to image editing. |
sizeSize | string | auto | auto · 1024x1024 · 1536x1024 · 1024x1536 | Output dimensions. Size does not change the price. |
qualityQuality | string | auto | auto · low · medium · high | Quality does not change the fixed request price. |
output_formatOutput Format | string | png | png · jpeg · webp | — |
Wizzx API
New accounts get $0.20 in free credits. Pay as you go with no subscription, and failed tasks are refunded.