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
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 generation size Supported formats:
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 💡 Quick fill (Try it area):
Click ”+ Add an item” to add an image URL
Enter the complete image URL address
Image URL address Can be:
Publicly accessible image URL (http:// or https://)
Base64 encoded image data
Limitations:
Single image up to 10MB
Supported formats: .jpeg, .jpg, .png, .webp
Limitation: Maximum 5 images
Mask image URL
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)
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" : {}
}