Skip to content
SuperToken 文档

同步生成与编辑

同步接口使用普通模型 API Token,在同一个 HTTP 请求中等待图片生成完成。结果通常位于 data[].url;请求 response_format: "b64_json" 时,从 data[].b64_json 读取。

端点

能力方法与路径请求格式
文生图POST /v1/images/generationsJSON
URL / Base64 图片编辑POST /v1/images/editsJSON
本地文件 / Mask 编辑POST /v1/images/editsmultipart/form-data
bash
export SUPERTOKEN_BASE_URL="https://api.supertoken.cc"
export SUPERTOKEN_KEY="YOUR_MODEL_API_TOKEN"
export IMAGE_MODEL="gpt-image-2"

同步文生图

POST /v1/images/generations

bash
curl -sS "$SUPERTOKEN_BASE_URL/v1/images/generations" \
  -H "Authorization: Bearer $SUPERTOKEN_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "'"$IMAGE_MODEL"'",
    "prompt": "一张电影感产品摄影,透明玻璃杯放在黑色石材桌面上,柔和侧光",
    "n": 1,
    "size": "1024x1024",
    "quality": "low",
    "output_format": "png"
  }' | jq .

典型响应:

json
{
  "created": 1784682000,
  "data": [
    {
      "url": "https://example.com/generated/image.png"
    }
  ],
  "output_format": "png",
  "quality": "low",
  "size": "1024x1024"
}

具体响应字段和可用参数以所选模型的实际返回为准。

同步图片编辑

POST /v1/images/edits

本地多图

本地文件使用 multipart,请重复传入 image 字段。客户端会自动生成 boundary,不要手动设置 Content-Type

bash
curl -sS "$SUPERTOKEN_BASE_URL/v1/images/edits" \
  -H "Authorization: Bearer $SUPERTOKEN_KEY" \
  -F "model=$IMAGE_MODEL" \
  -F "prompt=融合两张参考图的主体与场景,保持自然光影" \
  -F "image=@./reference-1.png" \
  -F "image=@./reference-2.png" \
  -F "size=1024x1024" \
  -F "quality=low" \
  -F "output_format=png" | jq .

关于 image[]

推荐统一重复使用 image。部分客户端会把多文件字段写成 image[],但重复 image 最直观。

公开 URL 多图

URL 编辑使用 JSON,字段名是单数 image,值可以是 URL 字符串或 URL 数组:

bash
jq -nc \
  --arg model "$IMAGE_MODEL" \
  --arg image1 "https://img.example.com/reference-1.png" \
  --arg image2 "https://img.example.com/reference-2.png" \
  '{
    model: $model,
    prompt: "将两张参考图融合,保留第一张主体和第二张背景",
    image: [$image1, $image2],
    size: "1024x1024",
    quality: "low",
    output_format: "png"
  }' |
curl -sS "$SUPERTOKEN_BASE_URL/v1/images/edits" \
  -H "Authorization: Bearer $SUPERTOKEN_KEY" \
  -H "Content-Type: application/json" \
  --data-binary @- | jq .

URL 必须是服务端可直接访问的 http://https:// 图片直链,不能依赖 Cookie、登录态或浏览器临时授权。

不支持 images[].image_url

同步编辑当前不接受 {"images":[{"image_url":"https://..."}]}。请改为 {"image":["https://..."]},否则对象会按 Base64 输入解析,并返回缺少 b64_jsonbase64dataimage 的错误。

Base64

Base64 可以传纯编码或 data:image/png;base64,... 数据 URL。对象形式还可以指定文件名:

bash
IMAGE_BASE64="$(base64 < ./reference-1.png | tr -d '\n')"

jq -nc \
  --arg model "$IMAGE_MODEL" \
  --arg image "$IMAGE_BASE64" \
  '{
    model: $model,
    prompt: "把图片背景改为日落海边",
    image: [
      {b64_json: $image, filename: "reference-1.png"}
    ],
    size: "1024x1024",
    quality: "low",
    output_format: "png"
  }' |
curl -sS "$SUPERTOKEN_BASE_URL/v1/images/edits" \
  -H "Authorization: Bearer $SUPERTOKEN_KEY" \
  -H "Content-Type: application/json" \
  --data-binary @- | jq .

Mask 局部编辑

mask 最多一张。透明区域表示需要编辑的部分,建议原图和 Mask 使用相同尺寸:

bash
curl -sS "$SUPERTOKEN_BASE_URL/v1/images/edits" \
  -H "Authorization: Bearer $SUPERTOKEN_KEY" \
  -F "model=$IMAGE_MODEL" \
  -F "prompt=仅将透明区域替换为一盆绿色植物" \
  -F "image=@./source.png" \
  -F "mask=@./mask.png" \
  -F "size=1024x1024" \
  -F "quality=low" \
  -F "output_format=png" | jq .

选择输入格式

图片来源推荐请求格式字段
本地文件multipart/form-data重复 image
公开图片直链JSONimage: ["https://..."]
已有 Base64JSONimage: [{"b64_json":"..."}]
局部编辑multipart/form-dataimage + 单个 mask

完整 Python 和 Node.js 程序见代码示例,字段范围和上传限制见参数与错误

下一步

SuperToken - 让全球顶级 AI 模型触手可达