Model API
GPT Image 2.6 Sunburst
Editing built for the tightest control, edits scoped precisely to the instruction, with subject and composition preserved across many rounds of revision.
Model id
openai/gpt-image-2.6/sunburst/editThis model has other modes with their own ids: openai/gpt-image-2.6/sunburst/text-to-image.
Run it
Quote the input, start the generation with the quote, then poll the job. Set RAYWAKE_API_KEY first; see Authentication.
# 1. Price the exact input (quotes are valid for up to 10 minutes)
curl -s https://api.raywake.com/v1/quotes \
-H "Authorization: Bearer $RAYWAKE_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "openai/gpt-image-2.6/sunburst/edit",
"input": {
"prompt": "A red ceramic cup on a wooden table, soft morning light",
"image_urls": [
"https://example.com/input.png"
]
}
}'
# 2. Start the generation with the quote_id from step 1
curl -s https://api.raywake.com/v1/generate \
-H "Authorization: Bearer $RAYWAKE_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: $(uuidgen)" \
-d '{"model": "openai/gpt-image-2.6/sunburst/edit", "quote_id": "QUOTE_ID", "input": {"prompt":"A red ceramic cup on a wooden table, soft morning light","image_urls":["https://example.com/input.png"]}}'
# 3. Poll until the status is terminal
curl -s https://api.raywake.com/v1/jobs/JOB_ID \
-H "Authorization: Bearer $RAYWAKE_API_KEY"Input
| Name | Type | Description |
|---|---|---|
promptrequired | string | The prompt for image generation |
image_urlsrequired | array of image URLs | The URLs of the images to use as a reference for the generation. A maximum of 16 images are allowed. |
mask_url | string (image URL) | Mask image URL. White marks regions to edit and black marks regions to keep. |
markup_image_url | string (image URL) | Transparent PNG containing only annotations (circles, arrows, notes) that guide the edit of the first image. Must match the first image's dimensions. Cannot be combined with mask_url. Reference images are sent unmodified when set. |
image_size | string (enum) | The size of the generated image. Use 'auto' to infer from input images. |
background | string (enum) | Background for the generated image |
quality | string (enum) | Rendering quality for the generated image. For SVG output it controls the reference image used to create the vector. |
reasoning_effort | string (enum) | How much the model plans before rendering, independently of quality (OpenAI `complexity`). Higher levels can help with dense text and complex layouts but add latency. |
num_images | integer | Number of images to generate. Must be 1 for SVG output. For GIF output, all frames of all outputs share the request's pixel budget. |
output_format | string (enum) | Output format for the images. 'gif' returns an animation. |
output_compression | integer | Compression level from 0 to 100. Only supported when output_format is 'jpeg' or 'webp'. |
frame_count | integer | GIF only: number of frames. image_size applies to each frame; reduce size or count if the request exceeds the pixel budget. |
frame_duration_ms | integer | GIF only: milliseconds per frame, rounded to 10 ms. |
sync_mode | boolean | If `True`, the media will be returned as a data URI and the output data won't be available in the request history. |
Output
A succeeded job lists its results under outputs, stored on our side. See Jobs for every field.
"outputs": [
{ "type": "image", "url": "https://…", "mime_type": "image/png", "thumbnail_url": "https://…" }
]Pricing
- auto · 1K · up to$0.34/ image
- high · 1K · up to$0.09/ image
- low · 1K · up to$0.05/ image
- max · 1K · up to$0.34/ image
- medium · 1K · up to$0.08/ image
- xhigh · 1K · up to$0.16/ image
- auto · 2K · up to$0.69/ image
- high · 2K · up to$0.18/ image
- low · 2K · up to$0.09/ image
- max · 2K · up to$0.69/ image
- medium · 2K · up to$0.15/ image
- xhigh · 2K · up to$0.31/ image
- auto · 4K · up to$1.14/ image
- high · 4K · up to$0.29/ image
- low · 4K · up to$0.14/ image
- max · 4K · up to$1.14/ image
- medium · 4K · up to$0.24/ image
- xhigh · 4K · up to$0.51/ image
The exact charge for your input comes from a quote. How charges settle