Refine product photos and campaign visuals with OpenAI ChatGPT Images 2.5 Sunburst Edit API. Use prompts and reference images for affordable creative workflows.
Try the AI Image Generator now
ChatGPT Images 2.5 Sunburst Edit API gives developers access to OpenAI image editing with text instructions and reference images through Best Image AI. Use flexible resolution, quality, and aspect ratio controls to prepare product visuals, marketing assets, and creative concepts. The API follows the same asynchronous image-task workflow as the rest of the ChatGPT Images 2.5 family, making it practical to integrate into existing creative applications.
Prompt-Guided Image Editing: Describe the changes you want to make and provide the source images to guide the edit.
Flexible Output Resolution: Choose an output resolution suited to concept exploration, digital publishing, or larger visual assets.
Adjustable Quality: Select a quality setting for each request to match different output requirements within your workflow.
Multiple Aspect Ratios: Create square, landscape, and portrait images for product pages, campaign layouts, and social channels.
Multi-Image Input: Provide multiple references with clear instructions about the role of each image in the final composition.
Shared API Integration: Submit image tasks and retrieve completed output through the existing Best Image AI image endpoints.
Input: Reference image URLs and a natural-language prompt describing the intended changes.
Output: Generated edits returned as image URLs after the task completes.
Aspect Ratios: Flexible square, portrait, and landscape formats selected through width and height ratio values.
Capabilities: Image editing and multi-image composition with resolution and quality controls.
Product Visuals: Adapt existing product imagery to new creative briefs using source images and editing instructions.
Marketing Assets: Prepare image variations for campaign concepts, promotional layouts, and creative reviews.
Social Media Content: Choose output proportions for posts, stories, banners, and other publishing formats.
Design Iteration: Refine a visual using targeted instructions and relevant reference images.
Creative Applications: Integrate reference-based editing into a task-based application with progress tracking and result retrieval.
Note Please ensure your prompts comply with OpenAI's usage policies. If an error occurs, review your prompt for restricted content, adjust it, and try again.
ChatGPT Images 2.5 Sunburst Edit vs. ChatGPT Images 2.5 Flare Edit
Both variants expose the same documented resolution, quality, and aspect ratio controls, including multi-image input. Evaluate results with the same brief when selecting a variant.
ChatGPT Images 2.5 Sunburst Edit vs. ChatGPT Images 2.5 Edit Client
The Client variant currently offers a fixed output resolution. ChatGPT Images 2.5 Sunburst Edit exposes multiple resolution and quality settings through the same image-task API workflow.
ChatGPT Images 2.5 Sunburst Edit vs. GPT Image 2 Edit
Both support reference-based image editing with resolution and quality controls. ChatGPT Images 2.5 Sunburst Edit adds extra-high and maximum quality choices; compare outputs for your intended use case.
// Step 1: Submit generation request
const response = await fetch('https://api.flaq.ai/api/v1/image/task', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_API_KEY'
},
body: JSON.stringify({
model_name: 'gpt-image-2.5-sunburst-edit',
width: 1,
height: 1,
resolution: '1k',
prompt: 'Change the jacket color to deep navy, keep lighting consistent',
quality: 'medium',
image_url_list: ['https://example.com/source.jpg']
})
});
const { data } = await response.json();
const taskId = data.task_id;
// Step 2: Poll for results
const taskId = data.task_id;
const pollResult = async (taskId) => {
const res = await fetch(`https://api.flaq.ai/api/v1/image/${taskId}`, {
headers: { 'Authorization': 'Bearer YOUR_API_KEY' }
});
return res.json();
};
while (true) {
const pollResultData = await pollResult(taskId);
const status = pollResultData.data.task_status;
if (status === 'succeed') {
console.log(pollResultData.data.task_result.images[].);
;
}
(status === ) {
.(pollResultData..);
;
}
( (resolve, ));
}
# Step 1: Submit generation request
import requests
response = requests.post(
'https://api.flaq.ai/api/v1/image/task',
headers={
'Content-Type': 'application/json',
'Authorization': 'Bearer YOUR_API_KEY'
},
json={
'model_name': 'gpt-image-2.5-sunburst-edit',
'width': 1,
'height': 1,
'resolution': '1k',
'prompt': 'Change the jacket color to deep navy, keep lighting consistent',
'quality': 'medium',
'image_url_list': ['https://example.com/source.jpg']
}
)
task_id = response.json()['data']['task_id']
# Step 1: Submit generation request
curl -X POST https://api.flaq.ai/api/v1/image/task \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model_name": "gpt-image-2.5-sunburst-edit",
"width": 1,
"height": 1,
"resolution": "1k",
"prompt": "Change the jacket color to deep navy, keep lighting consistent",
"quality": "medium",
"image_url_list": ["https://example.com/source.jpg"]
}'
# Step 2: Poll for results
# Replace {task_id} with the task_id returned from the submit response
curl -X GET "https://api.flaq.ai/api/v1/image/{task_id}" \
-H "Authorization: Bearer YOUR_API_KEY"
# Step 2: Poll for results
task_id = response.json()['data']['task_id']
poll_url = f"https://api.flaq.ai/api/v1/image/{task_id}"
while True:
poll_result = requests.get(poll_url, headers={'Authorization': 'Bearer YOUR_API_KEY'}).json()
status = poll_result['data']['task_status']
if status == 'succeed':
print(poll_result['data']['task_result']['images'][0]['url'])
break
if status == 'failed':
print(poll_result['data']['task_status_msg'])
break
time.sleep(10)