Unified image generation API
Use model parameter to select gpt-4o-image model
Supports text-to-image, image-to-image, and image editing
Async task management, query results by task ID
Important Change : For better performance and cost control, we no longer support passing base64 image data directly in image_urls. Please use the Upload Image API first to upload images and get URLs, then call this endpoint.
Authorizations
All endpoints require Bearer Token authentication Get your API Key from the API Key Management Page Add to request header: Authorization: Bearer YOUR_API_KEY
Body
model
string
default: "gpt-4o-image"
required
Image generation model name Example: "gpt-4o-image"
Text description for image generation Maximum 1000 characters
Image aspect ratio Supported formats:
1:1 - Square (default)
2:3 - Portrait
3:2 - Landscape
Number of images to generate Supports 1, 2, 4. Charges will be pre-deducted based on the number Default: 1 ⚠️ Note: Must enter a plain number (e.g., 1), do not use quotes or it will cause an error
Reference image URL list for image-to-image or image editing ⚠️ URL format only (base64 no longer supported)
Publicly accessible image URL (http:// or https://)
You can use the Upload Image API to upload local images and get URLs
Limitations:
Maximum 5 images
Single image up to 10MB
Supported formats: jpeg, jpg, png, webp
Mask image URL (for image editing)
Must be PNG format
Size must match the reference image
Maximum 4MB
Response
Unique task identifier for status queries
Object type, always generation.task
Task status
queued - Queued for processing
in_progress - Processing
completed - Successfully completed
failed - Failed
Task progress percentage (0-100)
Task creation timestamp (Unix timestamp)
cURL
cURL (Image-to-Image)
cURL (Image Editing)
Python
Python (Image-to-Image)
JavaScript
JavaScript (Image-to-Image)
curl --request POST \
--url https://toapis.com/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "gpt-4o-image",
"prompt": "An ancient castle under the starry sky",
"size": "1:1",
"n": 1
}'
{
"id" : "task_img_abc123def456" ,
"object" : "generation.task" ,
"model" : "gpt-4o-image" ,
"status" : "queued" ,
"progress" : 0 ,
"created_at" : 1703884800 ,
"metadata" : {}
}