Turn creative briefs into product images, ads, and social artwork with OpenAI ChatGPT Images 2.5 Sunburst API. Add affordable image generation to your apps.
Try the AI Image Generator now
ChatGPT Images 2.5 Sunburst API gives developers access to OpenAI text-to-image generation 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.
Text-to-Image Creation: Describe the subject, composition, lighting, and visual style you want to generate.
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.
Creative Iteration: Refine a prompt and vary the output settings to explore alternative directions for the same brief.
Shared API Integration: Submit image tasks and retrieve completed output through the existing Best Image AI image endpoints.
Input: A natural-language prompt describing the image you want to create.
Output: Generated images returned as image URLs after the task completes.
Aspect Ratios: Flexible square, portrait, and landscape formats selected through width and height ratio values.
Capabilities: Text-to-image generation with resolution and quality controls.
Product Visuals: Explore product presentation concepts with prompts that describe the setting and composition.
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: Compare prompt variations and quality settings while developing a visual direction.
Creative Applications: Integrate image generation 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 vs. ChatGPT Images 2.5 Flare
Both variants expose the same documented resolution, quality, and aspect ratio controls. Evaluate results with the same brief when selecting a variant.
ChatGPT Images 2.5 Sunburst vs. ChatGPT Images 2.5 Client
The Client variant currently offers a fixed output resolution. ChatGPT Images 2.5 Sunburst exposes multiple resolution and quality settings through the same image-task API workflow.
ChatGPT Images 2.5 Sunburst vs. GPT Image 2
Both support text-to-image generation with resolution and quality controls. ChatGPT Images 2.5 Sunburst 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',
prompt: 'A minimalist product shot of a ceramic mug on marble, soft studio light',
width: 1,
height: 1,
resolution: '1k',
quality: 'medium'
})
});
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',
'prompt': 'A minimalist product shot of a ceramic mug on marble, soft studio light',
'width': 1,
'height': 1,
'resolution': '1k',
'quality': 'medium'
}
)
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",
"prompt": "A minimalist product shot of a ceramic mug on marble, soft studio light",
"width": 1,
"height": 1,
"resolution": "1k",
"quality": "medium"
}'
# 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)