Gemini 图片生成 API 使用说明(MoreToken版)
概述
本页为MoreToken版接口说明。MoreToken版走MoreToken 渠道(MORETOKEN),是纯图片渠道,仅提供 Gemini 系列文生图模型,按预估一口价计费。与「face 优化版」「官方版」「可当版」「贞贞版」相互独立、互不影响。
- 上游(moretokens.ai)是同步出图接口,本服务封装为与其他版本一致的任务式调用:
POST提交后立即返回任务 ID,随后轮询任务状态,成功后取图片链接或打包下载 zip。 - 仅文生图:只接受
model+prompt+ 可选尺寸,不支持参考图参数image/images,传入会返回 400。 - 任务状态透出为
QUEUED/RUNNING/SUCCEEDED/FAILED等,上游细节由本服务统一封装,客户无需感知。
各版本共用同一套 API Key,靠模型名自动区分渠道。你的账号需由管理员开通「moretoken」开关(MoreToken 生图,与贞贞生图开关相互独立)后才能调用 MoreToken 版模型,否则返回 403 image_disabled。
快速开始
认证方式
所有接口均需在请求头中传入 API Key:
Authorization: Bearer <你的 API Key>
⚠️ 请妥善保管 API Key,不要泄露给他人。
基础信息
| 项目 | 值 |
|---|---|
| 服务器地址 | https://sd.boosterai.cn |
| 接口基础路径 | /api/v3/images/generations |
| 请求 / 响应格式 | application/json |
入口与其他版本完全相同,无需切换域名或路径。使用 MoreToken 版模型名即走 MoreToken 渠道链路。
计费与余额(预估一口价)
MoreToken版采用预付费余额模式,与其他版本共用同一个账户余额(单位:积分)。
冻结与扣费流程
- 下单冻结:提交任务时按该模型的预估价(积分/张,以管理员配置为准)全额冻结相应积分。
- 成功结算:任务成功后按冻结额一口价结算(上游不回报实际消费,故不多退少补)。
- 解冻退回:任务失败 / 取消 / 超时则全额解冻,不扣费。
可用余额
可用余额 = 账户总余额 − 冻结中金额
下单时若「可用余额 < 本次预估费用」,接口返回 402 insufficient_balance,任务不会提交。
余额查询与充值
- 余额查询:用你的 API Key 登录工作台 https://sd.boosterai.cn/#bill 查看实时余额、冻结金额与消费明细。
- 充值:请联系管理员。
与其他版本差异:face 版/可当版按「视频秒数 × 积分/秒」计费;官方版/贞贞版按「token × 积分/百万 token」计费;MoreToken 版按「预估一口价 × 张数」计费。各版本互不影响。
可用模型列表
下游模型名(别名)由管理员配置。MoreToken 渠道当前提供以下生图模型:
| 下游模型名(别名) | 上游模型名 | 类型 | 说明 |
|---|---|---|---|
gemini-3.1-flash-image-mt | gemini-3.1-flash-image | 文生图 / 图生图 | prompt 必填;可选 width × height 指定输出尺寸;可选参考图 |
gemini-3.1-flash-image-preview-mt | gemini-3.1-flash-image-preview | 文生图 / 图生图 | 预览版,能力同上 |
两个模型均支持文生图与图生图:图生图通过 image / images 传入参考图(仅接受公网可访问的 http(s) 图片 URL,最多 10 张,不支持 base64 data URI)。无 resolution 档位字段,输出尺寸用 metadata.width / metadata.height 指定(需成对传入,不传由模型自行决定)。每次任务固定出 1 张图。具体单价与开通情况以管理员配置为准。
接口详情
1. 提交图片生成任务
请求体参数
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
model | string | 是 | MoreToken 版模型名(下游别名),见上方模型列表 |
prompt | string | 是 | 提示词(文生图与图生图均必填;图生图用文字描述要做的编辑) |
image / images | string / array | 否 | 参考图(图生图):单张用 image,多张用 images 数组(最多 10 张);仅接受公网可访问的 http(s) 图片 URL,不支持 base64 data URI |
metadata.width / metadata.height | int | 否 | 输出宽高(像素),需成对传入;不传由模型自行决定尺寸 |
MoreToken 渠道不接受 metadata.resolution 档位,尺寸请用 width × height。
请求示例(文生图)
curl -X POST "https://sd.boosterai.cn/api/v3/images/generations" \
-H "Authorization: Bearer 你的APIKey" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-3.1-flash-image-mt",
"prompt": "高端护肤品电商主图,纯白柔光展台,玻璃精华瓶",
"metadata": {"width": 1024, "height": 1024}
}'
请求示例(图生图,带参考图)
curl -X POST "https://sd.boosterai.cn/api/v3/images/generations" \
-H "Authorization: Bearer 你的APIKey" \
-H "Content-Type: application/json" \
-d '{
"model": "gemini-3.1-flash-image-mt",
"prompt": "把图片里的背景换成纯白摄影棚背景,产品保持不变",
"images": ["https://example.com/product.jpg"]
}'
响应示例
{
"id": "task_01KWBW73D7WCN1PFZN9S1QQCK2"
}
提交成功返回任务 id,后续用它轮询结果。任务落库后立即返回,实际出图在后台异步执行。
| 状态码 | 说明 |
|---|---|
| 200 | 任务提交成功 |
| 400 | 请求参数错误(模型不存在、参考图不是 http(s) URL、参考图超 10 张等) |
| 401 | API Key 无效或未传入 |
| 402 | 余额不足(insufficient_balance),请联系管理员充值 |
| 403 | 未开通 MoreToken 生图功能(image_disabled),请联系管理员开通「moretoken」开关 |
| 500 / 502 / 503 | 服务器内部错误 / 上游服务异常 / 队列繁忙,稍后重试 |
2. 查询任务状态
将提交任务时返回的 id 填入路径。建议每 3~5 秒轮询一次。
curl https://sd.boosterai.cn/api/v3/images/generations/task_01KWBW73D7WCN1PFZN9S1QQCK2 \
-H "Authorization: Bearer 你的APIKey"
响应示例(成功)
{
"id": "task_01KWBW73D7WCN1PFZN9S1QQCK2",
"model": "gemini-3.1-flash-image-mt",
"status": "SUCCEEDED",
"result_url": "https://.../image-1.png",
"image_urls": ["https://.../image-1.png"]
}
status 为 SUCCEEDED 时,result_url 是主图直链,全部结果图 URL 在 image_urls 数组;图片存于阿里云 OSS,URL 为 7 天有效的预签名地址,请及时下载转存。失败时费用全额解冻。
任务状态说明
| 状态 | 说明 |
|---|---|
QUEUED | 排队等待处理 |
RUNNING | 正在生成中 |
SUCCEEDED | 生成成功,可获取图片链接 |
FAILED | 生成失败,费用全额退还 |
EXPIRED | 任务超时 |
CANCELLED | 已取消 |
3. 打包下载全部图片
任务成功后,可将该任务的全部结果图一次性打包下载为 zip:
curl -o images.zip \
https://sd.boosterai.cn/api/v3/images/generations/task_01KWBW73D7WCN1PFZN9S1QQCK2/images.zip \
-H "Authorization: Bearer 你的APIKey"
⚠️ MoreToken 版不支持提交找回:若提交时因超时/网络问题未拿到任务 ID,系统不会误扣费(异常任务会自动解冻并标记失败),你需重新提交。
错误码参考
| 错误码 | HTTP | 含义 | 处理建议 |
|---|---|---|---|
invalid_api_key | 401 | API Key 无效或已禁用 | 检查 Authorization 头 |
image_disabled | 403 | 未开通 MoreToken 生图功能 | 联系管理员开通「moretoken」开关 |
invalid_model | 400 | 模型名不存在或已禁用 | 参考模型列表使用正确的 MoreToken 版模型名 |
invalid_request | 400 | 请求结构错误(如 prompt 为空、参考图不是 http(s) URL) | 检查请求体;参考图用公网可访问的图片 URL |
insufficient_balance | 402 | 余额不足(可用余额 < 本次预估费用) | 联系管理员充值后重试 |
task_not_found | 404 | 任务不存在 | 确认 task id 正确,且属于当前 API Key |
upstream_error | 502 | 上游服务异常 | 稍后重试,若持续报错联系管理员 |
internal_error | 500 | 服务器内部错误 | 稍后重试,若持续报错联系管理员 |