切换主题
GPT-4o 图像生成
使用 DragonAPI 密钥和本站接口。示例中的 your-media.example 是占位地址,需替换为你自己的可访问素材或回调地址。协议、可用性与价格以当前模型说明和控制台为准。
使用 GPT-4o 模型生成图像,支持文本到图像和图像编辑
- 统一的图像生成 API 接口
- 通过 model 参数选择
gpt-4o-image模型 - 支持文本到图像、图生图和图像编辑
- 异步任务管理,通过任务 ID 查询结果
重要变更 :为了更稳定的调用体验,我们不再支持在 image_urls 中直接传入 base64 图片数据。请先将素材保存到可公开访问的 HTTPS 地址,再调用本接口。
Authorizations
Authorization
string · 必填
所有接口均需要使用 Bearer Token 进行认证
获取 DragonAPI API Key:访问 DragonAPI 密钥管理页面 获取您的 API Key
使用时在请求头中添加:
text
Authorization: Bearer YOUR_DRAGONAPI_KEYBody
model
string · 必填 · 默认 gpt-4o-image
图像生成模型名称
示例:"gpt-4o-image"
prompt
string · 必填
图像生成的文本描述
最长 1000 个字符
size
string · 可选 · 默认 1:1
图像生成的尺寸比例
支持的格式:
1:1- 正方形(默认)2:3- 竖版3:2- 横版
n
integer · 可选 · 默认 1
生成图像的数量
支持 1、2、4,会根据生成数量进行预扣费
默认:1
⚠️ 注意: 必须输入纯数字(如 1),不要加引号,否则会报错
image_urls
string[] · 可选
参考图像 URL 列表,用于图生图或图像编辑
⚠️ 仅支持 URL 格式(不再支持 base64)
- 公开可访问的图片 URL(http\😕/ 或 https\😕/)
- 请先将本地素材保存到可公开访问的 HTTPS 地址
限制:
- 最多 5 张图片
- 单张图片不超过 10MB
- 支持格式:jpeg、jpg、png、webp
mask_url
string · 可选
蒙版图像 URL(用于图像编辑)
- 必须是 PNG 格式
- 尺寸必须与参考图像匹配
- 不得超过 4MB
Response
id
string · 可选
任务唯一标识符,用于查询任务状态
object
string · 可选
对象类型,固定为 generation.task
model
string · 可选
使用的模型名称
status
string · 可选
任务状态
queued- 排队等待处理in_progress- 处理中completed- 成功完成failed- 失败
progress
integer · 可选
任务进度百分比(0-100)
created_at
integer · 可选
任务创建时间戳(Unix 时间戳)
metadata
object · 可选
任务元数据
curl --request POST \
--url https://newapi.dragon3api.com/v1/videos \
--header 'Authorization: Bearer YOUR_DRAGONAPI_KEY' \
--header 'Content-Type: application/json' \
--data '{
"model": "gpt-4o-image",
"prompt": "星空下的古老城堡",
"size": "1:1",
"n": 1
}'curl --request POST \
--url https://newapi.dragon3api.com/v1/videos \
--header 'Authorization: Bearer YOUR_DRAGONAPI_KEY' \
--header 'Content-Type: application/json' \
--data '{
"model": "gpt-4o-image",
"prompt": "将这张图片转换为星空下的古老城堡风格",
"size": "1:1",
"n": 1,
"image_urls": [
"https://your-media.example/castle.jpg"
]
}'curl --request POST \
--url https://newapi.dragon3api.com/v1/videos \
--header 'Authorization: Bearer YOUR_DRAGONAPI_KEY' \
--header 'Content-Type: application/json' \
--data '{
"model": "gpt-4o-image",
"prompt": "在城堡上方添加烟花",
"size": "1:1",
"n": 1,
"image_urls": [
"https://your-media.example/castle.jpg"
],
"mask_url": "https://your-media.example/mask.png"
}'import requests
response = requests.post(
"https://newapi.dragon3api.com/v1/videos",
headers={
"Authorization": "Bearer YOUR_DRAGONAPI_KEY",
"Content-Type": "application/json"
},
json={
"model": "gpt-4o-image",
"prompt": "星空下的古老城堡",
"size": "1:1",
"n": 1
}
)
task = response.json()
print(f"任务 ID: {task['id']}")
print(f"状态: {task['status']}")import requests
response = requests.post(
"https://newapi.dragon3api.com/v1/videos",
headers={
"Authorization": "Bearer YOUR_DRAGONAPI_KEY",
"Content-Type": "application/json"
},
json={
"model": "gpt-4o-image",
"prompt": "将这张图片转换为星空下的古老城堡风格",
"size": "1:1",
"n": 1,
"image_urls": ["https://your-media.example/castle.jpg"]
}
)
task = response.json()
print(f"任务 ID: {task['id']}")
print(f"状态: {task['status']}")const response = await fetch('https://newapi.dragon3api.com/v1/videos', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_DRAGONAPI_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'gpt-4o-image',
prompt: '星空下的古老城堡',
size: '1:1',
n: 1
})
});
const task = await response.json();
console.log(`任务 ID: ${task.id}`);
console.log(`状态: ${task.status}`);const response = await fetch('https://newapi.dragon3api.com/v1/videos', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_DRAGONAPI_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({
model: 'gpt-4o-image',
prompt: '将这张图片转换为星空下的古老城堡风格',
size: '1:1',
n: 1,
image_urls: ['https://your-media.example/castle.jpg']
})
});
const task = await response.json();
console.log(`任务 ID: ${task.id}`);
console.log(`状态: ${task.status}`);{
"id": "task_img_abc123def456",
"object": "generation.task",
"model": "gpt-4o-image",
"status": "queued",
"progress": 0,
"created_at": 1703884800,
"metadata": {}
}{
"error": {
"code": "invalid_request",
"message": "The 'prompt' field is required.",
"param": "prompt",
"type": "invalid_request_error"
}
}{
"error": {
"code": "unauthorized",
"message": "Invalid API key",
"type": "authentication_error"
}
}