curl --request POST \
--url https://toapis.com/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "gemini-3-pro-image-preview",
"prompt": "Futuristic city skyline with neon lights",
"size": "16:9",
"n": 1,
"metadata": {
"resolution": "1K",
"orientation": "landscape"
}
}'
curl --request POST \
--url https://toapis.com/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "gemini-3-pro-image-preview",
"prompt": "Enhance the colors and details of this city photo",
"size": "16:9",
"n": 1,
"metadata": {
"resolution": "2K"
},
"image_urls": ["https://example.com/city.jpg"]
}'
import requests
response = requests.post(
"https://toapis.com/v1/images/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
json={
"model": "gemini-3-pro-image-preview",
"prompt": "Futuristic city skyline with neon lights",
"size": "16:9",
"n": 1,
"metadata": {
"resolution": "1K",
"orientation": "landscape"
}
}
)
task = response.json()
print(f"Task ID: {task['id']}")
print(f"Status: {task['status']}")
import requests
response = requests.post(
"https://toapis.com/v1/images/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
json={
"model": "gemini-3-pro-image-preview",
"prompt": "Enhance the colors and details of this city photo",
"size": "16:9",
"n": 1,
"metadata": {
"resolution": "2K"
},
"image_urls": ["https://example.com/city.jpg"]
}
)
task = response.json()
print(f"Task ID: {task['id']}")
print(f"Status: {task['status']}")
const response = await fetch('https://toapis.com/v1/images/generations', {
method: 'POST',
headers: {
'Authorization': 'Bearer your-ToAPIs-key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'gemini-3-pro-image-preview',
prompt: 'Futuristic city skyline with neon lights',
size: '16:9',
n: 1,
metadata: {
resolution: '1K',
orientation: 'landscape'
}
})
});
const task = await response.json();
console.log(`Task ID: ${task.id}`);
console.log(`Status: ${task.status}`);
const response = await fetch('https://toapis.com/v1/images/generations', {
method: 'POST',
headers: {
'Authorization': 'Bearer your-ToAPIs-key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'gemini-3-pro-image-preview',
prompt: 'Enhance the colors and details of this city photo',
size: '16:9',
n: 1,
metadata: {
resolution: '2K'
},
image_urls: ['https://example.com/city.jpg']
})
});
const task = await response.json();
console.log(`Task ID: ${task.id}`);
console.log(`Status: ${task.status}`);
{
"id": "task_img_abc123def456",
"object": "generation.task",
"model": "gemini-3-pro-image-preview",
"status": "queued",
"progress": 0,
"created_at": 1703884800,
"metadata": {}
}
Gemini-3-Pro-Image-preview (Nano banana2)
Gemini-3-Pro Image Generation
Generate images using Google Gemini 3 Pro model, with powerful image generation capabilities
POST
/
v1
/
images
/
generations
curl --request POST \
--url https://toapis.com/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "gemini-3-pro-image-preview",
"prompt": "Futuristic city skyline with neon lights",
"size": "16:9",
"n": 1,
"metadata": {
"resolution": "1K",
"orientation": "landscape"
}
}'
curl --request POST \
--url https://toapis.com/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "gemini-3-pro-image-preview",
"prompt": "Enhance the colors and details of this city photo",
"size": "16:9",
"n": 1,
"metadata": {
"resolution": "2K"
},
"image_urls": ["https://example.com/city.jpg"]
}'
import requests
response = requests.post(
"https://toapis.com/v1/images/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
json={
"model": "gemini-3-pro-image-preview",
"prompt": "Futuristic city skyline with neon lights",
"size": "16:9",
"n": 1,
"metadata": {
"resolution": "1K",
"orientation": "landscape"
}
}
)
task = response.json()
print(f"Task ID: {task['id']}")
print(f"Status: {task['status']}")
import requests
response = requests.post(
"https://toapis.com/v1/images/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
json={
"model": "gemini-3-pro-image-preview",
"prompt": "Enhance the colors and details of this city photo",
"size": "16:9",
"n": 1,
"metadata": {
"resolution": "2K"
},
"image_urls": ["https://example.com/city.jpg"]
}
)
task = response.json()
print(f"Task ID: {task['id']}")
print(f"Status: {task['status']}")
const response = await fetch('https://toapis.com/v1/images/generations', {
method: 'POST',
headers: {
'Authorization': 'Bearer your-ToAPIs-key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'gemini-3-pro-image-preview',
prompt: 'Futuristic city skyline with neon lights',
size: '16:9',
n: 1,
metadata: {
resolution: '1K',
orientation: 'landscape'
}
})
});
const task = await response.json();
console.log(`Task ID: ${task.id}`);
console.log(`Status: ${task.status}`);
const response = await fetch('https://toapis.com/v1/images/generations', {
method: 'POST',
headers: {
'Authorization': 'Bearer your-ToAPIs-key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'gemini-3-pro-image-preview',
prompt: 'Enhance the colors and details of this city photo',
size: '16:9',
n: 1,
metadata: {
resolution: '2K'
},
image_urls: ['https://example.com/city.jpg']
})
});
const task = await response.json();
console.log(`Task ID: ${task.id}`);
console.log(`Status: ${task.status}`);
{
"id": "task_img_abc123def456",
"object": "generation.task",
"model": "gemini-3-pro-image-preview",
"status": "queued",
"progress": 0,
"created_at": 1703884800,
"metadata": {}
}
- Google Gemini 3 Pro powerful image generation model (Nano banana2)
- Use model parameter to select
gemini-3-pro-image-previewmodel - Supports text-to-image generation
- 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
string
required
All endpoints require Bearer Token authenticationGet your API Key from the API Key Management PageAdd to request header:
Authorization: Bearer YOUR_API_KEY
Body
string
default:"gemini-3-pro-image-preview"
required
Image generation model nameModel alias:
nano-banana-proExample: "gemini-3-pro-image-preview"string
required
Text description for image generationThe upstream model input limit is 65,536 tokens. ToAPIs does not add a 1000-character cap.
string
Image generation aspect ratioSupported formats:
- Ratios:
1:1,2:3,3:2,3:4,4:3,4:5,5:4,9:16,16:9,21:9
integer
default:1
Number of images to generateFixed at 1⚠️ Note: Must be a pure number (e.g.
1), do not add quotes, otherwise it will errorobject
Metadata parameters for passing additional configuration options
object[]
List of reference image URLs for image-to-image or image editing
Limit: Maximum 14 images
Show Detailed field description
Show Detailed field description
string
required
Image URL address⚠️ URL format only (base64 no longer supported)
- Publicly accessible image URL (http:// or https://)
- Example:
https://example.com/image.jpg - You can use the Upload Image API to upload local images and get URLs
- Single image must not exceed 10MB
- Supported formats: .jpeg, .jpg, .png, .webp
Response
string
Unique task identifier for status queries
string
Object type, always
generation.taskstring
Model name used
string
Task status
queued- Queued for processingin_progress- Processingcompleted- Successfully completedfailed- Failed
integer
Task progress percentage (0-100)
integer
Task creation timestamp (Unix timestamp)
object
Task metadata
curl --request POST \
--url https://toapis.com/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "gemini-3-pro-image-preview",
"prompt": "Futuristic city skyline with neon lights",
"size": "16:9",
"n": 1,
"metadata": {
"resolution": "1K",
"orientation": "landscape"
}
}'
curl --request POST \
--url https://toapis.com/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "gemini-3-pro-image-preview",
"prompt": "Enhance the colors and details of this city photo",
"size": "16:9",
"n": 1,
"metadata": {
"resolution": "2K"
},
"image_urls": ["https://example.com/city.jpg"]
}'
import requests
response = requests.post(
"https://toapis.com/v1/images/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
json={
"model": "gemini-3-pro-image-preview",
"prompt": "Futuristic city skyline with neon lights",
"size": "16:9",
"n": 1,
"metadata": {
"resolution": "1K",
"orientation": "landscape"
}
}
)
task = response.json()
print(f"Task ID: {task['id']}")
print(f"Status: {task['status']}")
import requests
response = requests.post(
"https://toapis.com/v1/images/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
json={
"model": "gemini-3-pro-image-preview",
"prompt": "Enhance the colors and details of this city photo",
"size": "16:9",
"n": 1,
"metadata": {
"resolution": "2K"
},
"image_urls": ["https://example.com/city.jpg"]
}
)
task = response.json()
print(f"Task ID: {task['id']}")
print(f"Status: {task['status']}")
const response = await fetch('https://toapis.com/v1/images/generations', {
method: 'POST',
headers: {
'Authorization': 'Bearer your-ToAPIs-key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'gemini-3-pro-image-preview',
prompt: 'Futuristic city skyline with neon lights',
size: '16:9',
n: 1,
metadata: {
resolution: '1K',
orientation: 'landscape'
}
})
});
const task = await response.json();
console.log(`Task ID: ${task.id}`);
console.log(`Status: ${task.status}`);
const response = await fetch('https://toapis.com/v1/images/generations', {
method: 'POST',
headers: {
'Authorization': 'Bearer your-ToAPIs-key',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'gemini-3-pro-image-preview',
prompt: 'Enhance the colors and details of this city photo',
size: '16:9',
n: 1,
metadata: {
resolution: '2K'
},
image_urls: ['https://example.com/city.jpg']
})
});
const task = await response.json();
console.log(`Task ID: ${task.id}`);
console.log(`Status: ${task.status}`);
{
"id": "task_img_abc123def456",
"object": "generation.task",
"model": "gemini-3-pro-image-preview",
"status": "queued",
"progress": 0,
"created_at": 1703884800,
"metadata": {}
}
⌘I