Back to Models

GPT Image 2.5 Sunburst

openaiopenai/gpt-image-2.5-sunburst

OpenAI's image model tuned for workflows where editing precision matters most. Same per-token billing as GPT Image 2. Released September 8, 2026.

GPT Image 2.5 Sunburst is one of two image models OpenAI shipped alongside GPT Image 2's next generation, tuned for workflows where editing precision matters most. It shares GPT Image 2's per-token billing shape (metered text/image input, per-quality image output) and adds two vendor-published output-quality tiers, xhigh and max, beyond GPT Image 2's low/medium/high.

This model is not yet available to send traffic through TheRouter. It is catalogued here (matching TheRouter's openai/gpt-image-2.5-sunburst id) but ships is_active: false until a live call to OpenAI's /v1/images/generations and /v1/images/edits endpoints is verified from a production-capable environment β€” the sole hard precondition this change's own design imposes before routing any customer traffic to it. Only low/medium/high quality tiers are exposed through TheRouter's quality parameter today; xhigh/max are real, vendor-published prices but are not yet orderable through TheRouter until its billing schema is extended to bill them.

Best for
  • β€’ Precision image editing β€” inpainting, object replacement, and style-consistent edits where fidelity to the source image matters
  • β€’ Multi-turn creative iteration β€” refining a generated image across several edit passes
  • β€’ Highest-fidelity output for production creative assets, once activated on TheRouter
Reach for something else if
  • β€’ Any live traffic today β€” the model is not yet activated on TheRouter (see overview)
  • β€’ Cost-sensitive, high-volume batch generation β€” GPT Image 2.5 Flare (same billing shape, tuned for speed) or GPT Image 1 Mini are the lower-cost siblings
  • β€’ Requests that need the xhigh or max quality tier β€” not yet orderable through TheRouter's quality parameter
Context Length
--
Max Output
--
Image Priceper 1M tokens
$0.014/ image
Input Priceper 1M tokens
$5.40/ 1M tokens

Modalities

textimage→image

Capabilities

VisionImage GenerationImage Edit

Media Generation Capabilities

image_generation
sizes
  • 1024x1024
  • 1024x1536
  • 1536x1024
qualities
  • low
  • medium
  • high
max_outputs_per_request
4
output_formats
  • png
  • jpeg
  • webp
defaults
size
1024x1024
quality
medium
image_edit
sizes
  • 1024x1024
  • 1024x1536
  • 1536x1024
qualities
  • low
  • medium
  • high
max_reference_images
4
output_formats
  • png
  • jpeg
  • webp
defaults
size
1024x1024
quality
medium

Pricing Breakdown

TypeRate
Image$0.014 / image
Input$5.40 / 1M tokens
Output$32.40 / 1M tokens
Image input$8.64 / 1M tokens
Cached image input$2.16 / 1M tokens
Low quality$0.0065 / image
Medium quality$0.014 / image
High quality$0.0572 / image
X-high quality (not yet orderable via TheRouter's quality parameter)$0.1015 / image
Max quality (not yet orderable via TheRouter's quality parameter)$0.2279 / image

Price shown is medium-quality generation; low and high quality bill at their own per-image rate below. Two additional quality tiers this model supports upstream (xhigh, max) are not yet orderable through TheRouter's quality parameter.

Supported Parameters

promptsizequalitybackgroundoutput_formatnuser

Specifications

CapabilitiesText-to-image generation, image editingdevelopers.openai.com β†—verified
Output resolutions1024Γ—1024, 1024Γ—1536, 1536Γ—1024developers.openai.com β†—verified
Quality tiers (vendor-published)low, medium, high, xhigh, max β€” TheRouter currently exposes low/medium/high only (see overview)developers.openai.com β†—verified
Billing shapePer-token text/image input ($5/$8 per million tokens), per-quality image outputdevelopers.openai.com β†—verified

API Usage Examples

Use the global api.therouter.ai endpoint shown below for new integrations; the legacy China accelerated endpoint is retired.

Recommended: use the async API

Image generation typically takes 30–180s, beyond the edge sync timeout. The examples below use the ?async=true submit + poll pattern. Read the full async image generation & edit guide β†’

cURL
# 1) Submit job (returns 202 immediately with a polling URL).
# Image generation takes 30-180s β€” always use the async path in production.
JOB=$(curl -s -X POST "https://api.therouter.ai/v1/images/generations?async=true"   -H "Content-Type: application/json"   -H "Authorization: Bearer $THE_ROUTER_API_KEY"   -d '{
    "model": "openai/gpt-image-2.5-sunburst",
    "prompt": "A cinematic product render with soft studio lighting"
  }' | python3 -c "import sys,json;print(json.load(sys.stdin)['id'])")
echo "submitted: $JOB"

# 2) Poll until terminal (succeeded / failed / cancelled / expired).
while :; do
  R=$(curl -s "https://api.therouter.ai/v1/jobs/$JOB"     -H "Authorization: Bearer $THE_ROUTER_API_KEY")
  S=$(echo "$R" | python3 -c "import sys,json;print(json.load(sys.stdin)['status'])")
  echo "status: $S"
  case "$S" in
    succeeded) echo "$R" | python3 -c "import sys,json;print(json.load(sys.stdin)['unsigned_urls'][0])"; break ;;
    failed|cancelled|expired) echo "$R"; exit 1 ;;
  esac
  sleep 5
done

API guide

Image generation

GPT Image 2.5 Sunburst uses the Images API (not chat completions). Send a POST request to /v1/images/generations with your prompt and model ID. Not yet routable β€” see overview.

cURL
curl https://api.therouter.ai/v1/images/generations \
  -H "Authorization: Bearer $THEROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "openai/gpt-image-2.5-sunburst",
    "prompt": "A studio product photo of a ceramic mug on a warm gradient background",
    "n": 1,
    "size": "1024x1024",
    "quality": "medium",
    "output_format": "png"
  }'

Image Editing Examples

Upload an image and describe the edit you want with a text prompt; the model returns the edited image as base64.

cURL
# Same async submit + poll pattern as /v1/images/generations.
JOB=$(curl -s -X POST "https://api.therouter.ai/v1/images/edits?async=true"   -H "Authorization: Bearer $THE_ROUTER_API_KEY"   -F "model=openai/gpt-image-2.5-sunburst"   -F "prompt=Turn this scene into a watercolor painting"   -F "size=1024x1024"   -F "image=@input.png" | python3 -c "import sys,json;print(json.load(sys.stdin)['id'])")
echo "submitted: $JOB"

while :; do
  R=$(curl -s "https://api.therouter.ai/v1/jobs/$JOB"     -H "Authorization: Bearer $THE_ROUTER_API_KEY")
  S=$(echo "$R" | python3 -c "import sys,json;print(json.load(sys.stdin)['status'])")
  echo "status: $S"
  case "$S" in
    succeeded) echo "$R" | python3 -c "import sys,json;print(json.load(sys.stdin)['unsigned_urls'][0])"; break ;;
    failed|cancelled|expired) echo "$R"; exit 1 ;;
  esac
  sleep 5
done

More from openai

Similar models

Cross-provider sibling models

Frequently asked

Can I send traffic to gpt-image-2.5-sunburst through TheRouter today?

Not yet. The model is catalogued but ships is_active: false pending a live-call verification of OpenAI's /v1/images/generations and /v1/images/edits endpoints. It will be activated in a follow-up commit once that verification succeeds.

Why does the descriptor list low/medium/high but the vendor publishes xhigh/max too?

TheRouter's billing schema currently bills image quality across a fixed three-tier vocabulary (low/medium/high). The vendor's xhigh and max tiers are real, published prices, but extending TheRouter's billing schema to charge for them is a separate, tracked follow-up β€” until then, only low/medium/high are accepted values for this model's quality parameter.

Fact ledger β€” every claim on this page traces here
sourceURLretrieved
Capabilitiesdevelopers.openai.com β†—2026-09-17verified
Output resolutionsdevelopers.openai.com β†—2026-09-17verified
Quality tiers (vendor-published)developers.openai.com β†—2026-09-17verified
Billing shapedevelopers.openai.com β†—2026-09-17verified
Why does the descriptor list low/medium/high but the vendor publishes xhigh/max too?developers.openai.com β†—2026-09-17to verify
Customer Support