curl --request POST \
--url https://toapis.com/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "flux-kontext-pro",
"prompt": "賽博朋克風格的城市夜景,霓虹燈閃爍",
"size": "16:9",
"metadata": {
"response_format": "png"
}
}'
curl --request POST \
--url https://toapis.com/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "flux-kontext-max",
"prompt": "將這張照片改爲水彩畫風格",
"size": "match_input_image",
"image_urls": ["https://example.com/photo.jpg"],
"metadata": {
"response_format": "jpg"
}
}'
import requests
response = requests.post(
"https://toapis.com/v1/images/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
json={
"model": "flux-kontext-pro",
"prompt": "賽博朋克風格的城市夜景,霓虹燈閃爍",
"size": "16:9",
"metadata": {
"response_format": "png"
}
}
)
task = response.json()
print(f"任務 ID: {task['id']}")
print(f"狀態: {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": "flux-kontext-max",
"prompt": "將這張照片改爲水彩畫風格",
"size": "match_input_image",
"image_urls": ["https://example.com/photo.jpg"],
"metadata": {
"response_format": "jpg"
}
}
)
task = response.json()
print(f"任務 ID: {task['id']}")
print(f"狀態: {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: 'flux-kontext-pro',
prompt: '賽博朋克風格的城市夜景,霓虹燈閃爍',
size: '16:9',
metadata: {
response_format: 'png'
}
})
});
const task = await response.json();
console.log(`任務 ID: ${task.id}`);
console.log(`狀態: ${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: 'flux-kontext-max',
prompt: '將這張照片改爲水彩畫風格',
size: 'match_input_image',
image_urls: ['https://example.com/photo.jpg'],
metadata: {
response_format: 'jpg'
}
})
});
const task = await response.json();
console.log(`任務 ID: ${task.id}`);
console.log(`狀態: ${task.status}`);
{
"id": "task_img_abc123def456",
"object": "generation.task",
"model": "flux-kontext-pro",
"status": "queued",
"progress": 0,
"created_at": 1703884800,
"metadata": {}
}
Flux Kontext
Flux Kontext 圖像生成
使用 Flux Kontext 模型進行圖片編輯和生成,支持文生圖和圖片編輯
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": "flux-kontext-pro",
"prompt": "賽博朋克風格的城市夜景,霓虹燈閃爍",
"size": "16:9",
"metadata": {
"response_format": "png"
}
}'
curl --request POST \
--url https://toapis.com/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "flux-kontext-max",
"prompt": "將這張照片改爲水彩畫風格",
"size": "match_input_image",
"image_urls": ["https://example.com/photo.jpg"],
"metadata": {
"response_format": "jpg"
}
}'
import requests
response = requests.post(
"https://toapis.com/v1/images/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
json={
"model": "flux-kontext-pro",
"prompt": "賽博朋克風格的城市夜景,霓虹燈閃爍",
"size": "16:9",
"metadata": {
"response_format": "png"
}
}
)
task = response.json()
print(f"任務 ID: {task['id']}")
print(f"狀態: {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": "flux-kontext-max",
"prompt": "將這張照片改爲水彩畫風格",
"size": "match_input_image",
"image_urls": ["https://example.com/photo.jpg"],
"metadata": {
"response_format": "jpg"
}
}
)
task = response.json()
print(f"任務 ID: {task['id']}")
print(f"狀態: {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: 'flux-kontext-pro',
prompt: '賽博朋克風格的城市夜景,霓虹燈閃爍',
size: '16:9',
metadata: {
response_format: 'png'
}
})
});
const task = await response.json();
console.log(`任務 ID: ${task.id}`);
console.log(`狀態: ${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: 'flux-kontext-max',
prompt: '將這張照片改爲水彩畫風格',
size: 'match_input_image',
image_urls: ['https://example.com/photo.jpg'],
metadata: {
response_format: 'jpg'
}
})
});
const task = await response.json();
console.log(`任務 ID: ${task.id}`);
console.log(`狀態: ${task.status}`);
{
"id": "task_img_abc123def456",
"object": "generation.task",
"model": "flux-kontext-pro",
"status": "queued",
"progress": 0,
"created_at": 1703884800,
"metadata": {}
}
- Flux Kontext 圖像生成與編輯模型
- 通過 model 參數選擇
flux-kontext-pro(Pro)或flux-kontext-max(Max,更高質量) - 支持文生圖、圖片編輯兩種模式
- 有參考圖時爲圖片編輯,無參考圖時爲文生圖
- 按請求固定計費
- 異步任務模式,返回
task_id用於查詢結果
重要變更:爲了更好的性能和成本控制,我們不再支持在
image_urls 中直接傳入 base64 圖片數據。請先使用 上傳圖片接口 上傳圖片,獲取 URL 後再調用本接口。Authorizations
string
必填
所有接口均需要使用 Bearer Token 進行認證獲取 API Key:訪問 API Key 管理頁面 獲取您的 API Key使用時在請求頭中添加:
Authorization: Bearer YOUR_API_KEY
Body
string
必填
圖像生成模型名稱可選值:
flux-kontext-pro- Pro 版本flux-kontext-max- Max 版本,更高質量
string
必填
圖像生成的文本描述
string
圖像寬高比默認值:
- 有參考圖時:
match_input_image(匹配輸入圖片) - 無參考圖時:
16:9
| 值 | 說明 |
|---|---|
match_input_image | 匹配輸入圖片比例(僅圖片編輯時) |
1:1 | 正方形 |
4:3 / 3:4 | 傳統顯示器比例 |
16:9 / 9:16 | 寬屏/豎屏 |
3:2 / 2:3 | 標準照片 |
21:9 / 9:21 | 超寬屏/超窄屏 |
string[]
參考圖像 URL 數組,用於圖片編輯⚠️ 僅支持 URL 格式(不支持 base64)
- 公開可訪問的圖片 URL(http:// 或 https://)
- 可使用 上傳圖片接口 上傳本地圖片獲取 URL
- 最多 1 張圖片
- 傳入圖片時爲圖片編輯模式,不傳時爲文生圖模式
object
Response
string
任務唯一標識符,用於查詢任務狀態
string
對象類型,固定爲
generation.taskstring
使用的模型名稱
string
任務狀態
queued- 排隊等待處理in_progress- 處理中completed- 成功完成failed- 失敗
integer
任務進度百分比(0-100)
integer
任務創建時間戳(Unix 時間戳)
object
任務元數據
使用場景
場景一:文生圖
{
"model": "flux-kontext-pro",
"prompt": "賽博朋克風格的城市夜景,霓虹燈閃爍",
"size": "16:9",
"metadata": {
"response_format": "png",
"safety_tolerance": 2
}
}
場景二:圖片編輯
{
"model": "flux-kontext-max",
"prompt": "將這張照片改爲水彩畫風格",
"size": "match_input_image",
"image_urls": ["https://example.com/photo.jpg"],
"metadata": {
"response_format": "jpg",
"prompt_upsampling": true
}
}
場景三:高質量文生圖(Max 模型)
{
"model": "flux-kontext-max",
"prompt": "一隻可愛的橘貓在窗臺上曬太陽,寫實風格",
"size": "1:1",
"metadata": {
"response_format": "png",
"safety_tolerance": 3
}
}
查詢任務結果圖像生成爲異步任務,提交後會返回任務 ID。使用 獲取圖像任務狀態 接口查詢生成進度和結果。
curl --request POST \
--url https://toapis.com/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "flux-kontext-pro",
"prompt": "賽博朋克風格的城市夜景,霓虹燈閃爍",
"size": "16:9",
"metadata": {
"response_format": "png"
}
}'
curl --request POST \
--url https://toapis.com/v1/images/generations \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"model": "flux-kontext-max",
"prompt": "將這張照片改爲水彩畫風格",
"size": "match_input_image",
"image_urls": ["https://example.com/photo.jpg"],
"metadata": {
"response_format": "jpg"
}
}'
import requests
response = requests.post(
"https://toapis.com/v1/images/generations",
headers={
"Authorization": "Bearer your-ToAPIs-key",
"Content-Type": "application/json"
},
json={
"model": "flux-kontext-pro",
"prompt": "賽博朋克風格的城市夜景,霓虹燈閃爍",
"size": "16:9",
"metadata": {
"response_format": "png"
}
}
)
task = response.json()
print(f"任務 ID: {task['id']}")
print(f"狀態: {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": "flux-kontext-max",
"prompt": "將這張照片改爲水彩畫風格",
"size": "match_input_image",
"image_urls": ["https://example.com/photo.jpg"],
"metadata": {
"response_format": "jpg"
}
}
)
task = response.json()
print(f"任務 ID: {task['id']}")
print(f"狀態: {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: 'flux-kontext-pro',
prompt: '賽博朋克風格的城市夜景,霓虹燈閃爍',
size: '16:9',
metadata: {
response_format: 'png'
}
})
});
const task = await response.json();
console.log(`任務 ID: ${task.id}`);
console.log(`狀態: ${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: 'flux-kontext-max',
prompt: '將這張照片改爲水彩畫風格',
size: 'match_input_image',
image_urls: ['https://example.com/photo.jpg'],
metadata: {
response_format: 'jpg'
}
})
});
const task = await response.json();
console.log(`任務 ID: ${task.id}`);
console.log(`狀態: ${task.status}`);
{
"id": "task_img_abc123def456",
"object": "generation.task",
"model": "flux-kontext-pro",
"status": "queued",
"progress": 0,
"created_at": 1703884800,
"metadata": {}
}
⌘I