curl --request POST \
--url https://toapis.com/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "doubao-seedream-4-0",
"prompt": "A cute panda playing in a bamboo forest",
"size": "1:1",
"n": 1,
"metadata": {
"resolution": "2K"
}
}'
curl --request POST \
--url https://toapis.com/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "doubao-seedream-4-0",
"prompt": "A cute panda playing in a bamboo forest",
"size": "1:1",
"n": 1,
"image_urls": [
"https://example.com/panda.jpg"
],
"metadata": {
"resolution": "2K"
}
}'
curl --request POST \
--url https://toapis.com/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "doubao-seedream-4-0",
"prompt": "A cute panda playing in a bamboo forest",
"size": "1:1",
"n": 3,
"image_urls": [
"https://example.com/panda.jpg"
],
"metadata": {
"resolution": "4K",
"optimize_prompt_options": "standard",
"sequential_image_generation": "auto",
"sequential_image_generation_options": { "max_images": 3 },
"watermark": false
}
}'
import requests
response = requests.post(
"https://toapis.com/v1/images/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
json={
"model": "doubao-seedream-4-0",
"prompt": "A cute panda playing in a bamboo forest",
"size": "1:1",
"n": 1,
"metadata": {
"resolution": "2K"
}
}
)
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": "doubao-seedream-4-0",
"prompt": "A cute panda playing in a bamboo forest",
"size": "1:1",
"n": 1,
"image_urls": ["https://example.com/panda.jpg"],
"metadata": {
"resolution": "2K"
}
}
)
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": "doubao-seedream-4-0",
"prompt": "A cute panda playing in a bamboo forest",
"size": "1:1",
"n": 3,
"image_urls": ["https://example.com/panda.jpg"],
"metadata": {
"resolution": "4K",
"optimize_prompt_options": "standard",
"sequential_image_generation": "auto",
"sequential_image_generation_options": {"max_images": 3},
"watermark": False
}
}
)
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: 'doubao-seedream-4-0',
prompt: 'A cute panda playing in a bamboo forest',
size: '1:1',
n: 1,
metadata: {
resolution: '2K'
}
})
});
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: 'doubao-seedream-4-0',
prompt: 'A cute panda playing in a bamboo forest',
size: '1:1',
n: 1,
image_urls: ['https://example.com/panda.jpg'],
metadata: {
resolution: '2K'
}
})
});
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: 'doubao-seedream-4-0',
prompt: 'A cute panda playing in a bamboo forest',
size: '1:1',
n: 3,
image_urls: ['https://example.com/panda.jpg'],
metadata: {
resolution: '4K',
optimize_prompt_options: 'standard',
sequential_image_generation: 'auto',
sequential_image_generation_options: { max_images: 3 },
watermark: false
}
})
});
const task = await response.json();
console.log(`Task ID: ${task.id}`);
console.log(`Status: ${task.status}`);
{
"id": "task_img_abc123def456",
"object": "generation.task",
"model": "doubao-seedream-4-0",
"status": "queued",
"progress": 0,
"created_at": 1703884800,
"metadata": {}
}
Seedream-4.0
Seedream-4.0 画像生成
Generate high-quality images using Seedream 4.0 model
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": "doubao-seedream-4-0",
"prompt": "A cute panda playing in a bamboo forest",
"size": "1:1",
"n": 1,
"metadata": {
"resolution": "2K"
}
}'
curl --request POST \
--url https://toapis.com/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "doubao-seedream-4-0",
"prompt": "A cute panda playing in a bamboo forest",
"size": "1:1",
"n": 1,
"image_urls": [
"https://example.com/panda.jpg"
],
"metadata": {
"resolution": "2K"
}
}'
curl --request POST \
--url https://toapis.com/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "doubao-seedream-4-0",
"prompt": "A cute panda playing in a bamboo forest",
"size": "1:1",
"n": 3,
"image_urls": [
"https://example.com/panda.jpg"
],
"metadata": {
"resolution": "4K",
"optimize_prompt_options": "standard",
"sequential_image_generation": "auto",
"sequential_image_generation_options": { "max_images": 3 },
"watermark": false
}
}'
import requests
response = requests.post(
"https://toapis.com/v1/images/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
json={
"model": "doubao-seedream-4-0",
"prompt": "A cute panda playing in a bamboo forest",
"size": "1:1",
"n": 1,
"metadata": {
"resolution": "2K"
}
}
)
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": "doubao-seedream-4-0",
"prompt": "A cute panda playing in a bamboo forest",
"size": "1:1",
"n": 1,
"image_urls": ["https://example.com/panda.jpg"],
"metadata": {
"resolution": "2K"
}
}
)
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": "doubao-seedream-4-0",
"prompt": "A cute panda playing in a bamboo forest",
"size": "1:1",
"n": 3,
"image_urls": ["https://example.com/panda.jpg"],
"metadata": {
"resolution": "4K",
"optimize_prompt_options": "standard",
"sequential_image_generation": "auto",
"sequential_image_generation_options": {"max_images": 3},
"watermark": False
}
}
)
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: 'doubao-seedream-4-0',
prompt: 'A cute panda playing in a bamboo forest',
size: '1:1',
n: 1,
metadata: {
resolution: '2K'
}
})
});
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: 'doubao-seedream-4-0',
prompt: 'A cute panda playing in a bamboo forest',
size: '1:1',
n: 1,
image_urls: ['https://example.com/panda.jpg'],
metadata: {
resolution: '2K'
}
})
});
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: 'doubao-seedream-4-0',
prompt: 'A cute panda playing in a bamboo forest',
size: '1:1',
n: 3,
image_urls: ['https://example.com/panda.jpg'],
metadata: {
resolution: '4K',
optimize_prompt_options: 'standard',
sequential_image_generation: 'auto',
sequential_image_generation_options: { max_images: 3 },
watermark: false
}
})
});
const task = await response.json();
console.log(`Task ID: ${task.id}`);
console.log(`Status: ${task.status}`);
{
"id": "task_img_abc123def456",
"object": "generation.task",
"model": "doubao-seedream-4-0",
"status": "queued",
"progress": 0,
"created_at": 1703884800,
"metadata": {}
}
- Seedream 4.0 high-quality image generation model
- Use model parameter to select
doubao-seedream-4-0model - 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 画像API first to upload images and get URLs, then call this endpoint.Authorizations
string
必須
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
デフォルト:"doubao-seedream-4-0"
必須
Image generation model nameExample:
"doubao-seedream-4-0"string
必須
Text description for image generationMaximum 1000 characters
string
デフォルト:"1:1"
Image aspect ratioSupported aspect ratios:
1:1- Square (default)4:3- Landscape 4:33:4- Portrait 3:416:9- Landscape widescreen9:16- Portrait vertical3:2- Landscape 3:22:3- Portrait 2:321:9- Ultra-wide9:21- Ultra-tallauto- Auto-match reference image ratio (requiresimage_urls)
integer
デフォルト:1
Number of images to generateRange: 1-15 (minimum 1, maximum 15)Default: 1Note:
- The actual number of images that can be generated is affected by both this parameter and the number of input reference images. The total of reference images + generated images must be ≤ 15
- Must enter a plain number (e.g.,
1), do not use quotes or it will cause an error
string[]
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://)
- Example:
https://example.com/image.jpg - You can use the Upload 画像API to upload local images and get URLs
- Maximum 10 images
- Image formats: jpeg, png
- Aspect ratio (width/height) range: [1/3, 3]
- Width and height (px) > 14
- Single image size: not exceeding 10MB
- Total pixels: not exceeding 6000×6000 px
object
Channel-specific parameters for Seedream 4.0 model advanced configuration
表示 metadata properties
表示 metadata properties
string
デフォルト:"2K"
Image resolutionSupported resolutions:
1K- Basic resolution2K- Standard resolution (default)4K- High definition
| Resolution | 1:1 Size | 16:9 Size |
|---|---|---|
| 1K | 1024x1024 | 1280x720 |
| 2K | 2048x2048 | 2560x1440 |
| 4K | 4096x4096 | 5404x3040 |
object
Prompt optimization optionsProperties:
mode(string): Optimization modestandard: Standard mode, generates higher quality with longer processing time (default)fast: Fast mode, generates content in shorter time with regular quality
"optimize_prompt_options": { "mode": "standard" }
string
デフォルト:"disabled"
Sequential image generation mode (Doubao-specific feature)Controls whether to generate multiple images:
disabled: Disable sequential mode, generates only 1 image (default)auto: Enable sequential mode, can generate multiple images
- ✅ Set
n: 3or usesequential_image_generation: "auto"+max_images: 3 - ✅ Supports text-to-image: up to 15 images from text prompt only
- ✅ Supports image-to-image: provide
image_urlsto generate multiple variations - ⚠️ When
n > 1, it will automatically be set toauto
- Total reference images + generated images must be ≤ 15
object
Sequential image generation optionsAvailable when
sequential_image_generation is set to autoProperties:max_images(integer): Specify the number of images to generate, Range: 1-15
"sequential_image_generation_options": { "max_images": 3 }
boolean
デフォルト:true
Whether to add a watermark to the generated image
true: Add watermark (default)false: No watermark
レスポンス
string
Unique task identifier for status queries
string
Object type, always
generation.taskstring
モデル 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": "doubao-seedream-4-0",
"prompt": "A cute panda playing in a bamboo forest",
"size": "1:1",
"n": 1,
"metadata": {
"resolution": "2K"
}
}'
curl --request POST \
--url https://toapis.com/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "doubao-seedream-4-0",
"prompt": "A cute panda playing in a bamboo forest",
"size": "1:1",
"n": 1,
"image_urls": [
"https://example.com/panda.jpg"
],
"metadata": {
"resolution": "2K"
}
}'
curl --request POST \
--url https://toapis.com/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "doubao-seedream-4-0",
"prompt": "A cute panda playing in a bamboo forest",
"size": "1:1",
"n": 3,
"image_urls": [
"https://example.com/panda.jpg"
],
"metadata": {
"resolution": "4K",
"optimize_prompt_options": "standard",
"sequential_image_generation": "auto",
"sequential_image_generation_options": { "max_images": 3 },
"watermark": false
}
}'
import requests
response = requests.post(
"https://toapis.com/v1/images/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
json={
"model": "doubao-seedream-4-0",
"prompt": "A cute panda playing in a bamboo forest",
"size": "1:1",
"n": 1,
"metadata": {
"resolution": "2K"
}
}
)
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": "doubao-seedream-4-0",
"prompt": "A cute panda playing in a bamboo forest",
"size": "1:1",
"n": 1,
"image_urls": ["https://example.com/panda.jpg"],
"metadata": {
"resolution": "2K"
}
}
)
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": "doubao-seedream-4-0",
"prompt": "A cute panda playing in a bamboo forest",
"size": "1:1",
"n": 3,
"image_urls": ["https://example.com/panda.jpg"],
"metadata": {
"resolution": "4K",
"optimize_prompt_options": "standard",
"sequential_image_generation": "auto",
"sequential_image_generation_options": {"max_images": 3},
"watermark": False
}
}
)
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: 'doubao-seedream-4-0',
prompt: 'A cute panda playing in a bamboo forest',
size: '1:1',
n: 1,
metadata: {
resolution: '2K'
}
})
});
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: 'doubao-seedream-4-0',
prompt: 'A cute panda playing in a bamboo forest',
size: '1:1',
n: 1,
image_urls: ['https://example.com/panda.jpg'],
metadata: {
resolution: '2K'
}
})
});
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: 'doubao-seedream-4-0',
prompt: 'A cute panda playing in a bamboo forest',
size: '1:1',
n: 3,
image_urls: ['https://example.com/panda.jpg'],
metadata: {
resolution: '4K',
optimize_prompt_options: 'standard',
sequential_image_generation: 'auto',
sequential_image_generation_options: { max_images: 3 },
watermark: false
}
})
});
const task = await response.json();
console.log(`Task ID: ${task.id}`);
console.log(`Status: ${task.status}`);
{
"id": "task_img_abc123def456",
"object": "generation.task",
"model": "doubao-seedream-4-0",
"status": "queued",
"progress": 0,
"created_at": 1703884800,
"metadata": {}
}
⌘I