GPT Image 2.5 Sunburst

by OpenAI

openai/gpt-image-2.5-sunburst

Generate or edit images with text and optional reference images.

Billed per
token
Price
Text input / 1M tokensOfficial price: $5.00Sale price: $4.675Cached text input / 1M tokensOfficial price: $1.25Sale price: $1.16875Image input / 1M tokensOfficial price: $8.00Sale price: $7.48Cached image input / 1M tokensOfficial price: $2.00Sale price: $1.87Text output / 1M tokensPrice: $0Image output / 1M tokensOfficial price: $30.00Sale price: $28.056.5% off
Provider
OpenAI
Timeout
11 min

Overview

Generate images, or provide images for editing and composition. All qualities use native token billing, with separate text, image and cached input rates. Without streaming, poll the run until COMPLETED; acceptance alone does not indicate completion. With input.stream=true, POST /v1/run returns gateway SSE: image_generation.partial_image previews followed by run.completed containing the final run, or run.failed. This is the gateway run protocol, not the OpenAI Images or Responses API. Streaming currently requires n=1. Reusing an Idempotency-Key replays the saved run without regenerating previews or charging twice. The complete request is limited to 32 MiB; an encoded result or individual SSE event is limited to 27 MiB and a stream to 108 MiB. Large batches or PNG outputs can exceed the result limit; prefer fewer images or JPEG/WebP compression. Interrupted or unverified results remain pending for reconciliation; never resubmit with a new key to recover a known run.

Decode run.output.data[].b64_json after COMPLETED. Usage reports text/image input, cached input and image output token counts.

Input

These go in the input object of the run request.

FieldTypeRequiredDescription
promptstringYesDescribe the image or the requested edit.
Maximum: 32000
imagesarrayNoFor editing, 1–16 objects containing image_url (HTTP(S) or image data URL) or b64. Each remote image is at most 50 MiB; inline images and masks together must fit the 32 MiB complete request limit.
maskobjectNoOptional editing mask with image_url or b64. Must be PNG with alpha and match the first input image dimensions.
nintegerNoNumber of output images.
Default: 1
Minimum: 1
Maximum: 10
sizestringNoauto or WIDTHxHEIGHT; sides multiples of 16, longest at most 3840, ratio at most 3:1 and 655360–8294400 pixels. Sizes above 2560x1440 are experimental.
Default: "auto"
qualitystringNoRendering quality; higher settings can consume more output tokens.
Allowed: low, medium, high, xhigh, max, auto
Default: "auto"
output_formatstringNoGenerated image encoding.
Allowed: png, jpeg, webp
Default: "png"
output_compressionintegerNoJPEG/WebP compression only.
Minimum: 0
Maximum: 100
moderationstringNoContent moderation setting.
Allowed: auto, low
Default: "auto"
backgroundstringNoEditing background; transparent is unsupported.
Allowed: auto, opaque
input_fidelitystringNoEditing fidelity is fixed at high.
Allowed: high
response_formatstringNoOnly base64 output is supported.
Allowed: b64_json
streambooleanNoGeneration only: return gateway run SSE with validated image previews and a final run.completed or run.failed event. Requires n=1 and no images input. The current supplier rejects streaming edits; use stream=false for edits.
Default: false
partial_imagesintegerNoMaximum preview images; nonzero requires stream=true. Previews are not separate billable generations.
Default: 0
Minimum: 0
Maximum: 3

Requests up to 34 MB, prompt up to 32,000 characters.

Example

Use your own API key and a saved idempotency key for each new job. Replace image or media placeholders with your own publicly reachable HTTPS URLs. Keep the same key and request body when recovering a timeout.

# Set once per job; reuse this key and the identical body after a timeout.
: "${AGENTSKY_IDEMPOTENCY_KEY:?Set a unique, saved key for this job}"
curl --fail-with-body https://gateway.agentsky.dev/v1/run \
  -H "authorization: Bearer $AGENTSKY_API_KEY" \
  -H "content-type: application/json" \
  -H "Idempotency-Key: $AGENTSKY_IDEMPOTENCY_KEY" \
  -d '{"provider":"openai","endpoint":"gpt-image-2.5-sunburst","input":{"prompt":"A blue ceramic bowl on a white table","size":"1024x1024","quality":"low","output_format":"jpeg"}}'
# If status is READY/RUNNING, poll GET /v1/runs/{runId} with the same API key.

Pricing

6.5% off

Prices per million tokens, using your plan when signed in. Read the final customer charge from price.amount.value after the run finishes. A RUNNING response is not the final bill.

MeterUSD per million tokens
Text inputOfficial price: $5.00Sale price: $4.675
Cached text inputOfficial price: $1.25Sale price: $1.16875
Image inputOfficial price: $8.00Sale price: $7.48
Cached image inputOfficial price: $2.00Sale price: $1.87
Text outputPrice: $0
Image outputOfficial price: $30.00Sale price: $28.05

Questions