XRToken API 文档

编辑图片(图生图)

API 配置
保存后下方「Try It」面板会自动携带此 API Key 发送真实请求。
Base: api.xrtoken.net

基于一张或多张参考图和文字描述生成新图。使用 OpenAI 标准 multipart/form-data 上传图片二进制。 多图通过 image[] 字段重复传入,单图也可用 image 字段;还可用 image_urls 或 image_urls[] 传参考图 URL。 分层时须在这四种入口中只选一种,且仅传一张参考图,不能混用入口。 计费跟 /v1/images/generations 一致:按 token 计费模型按 usage.input_tokens / output_tokens 结算,按张计费模型按成功输出张数结算。

Seedream 5.0 Pro / Flash 图层拆分

使用支持分层的 Seedream 5.0 Pro / Flash 模型,传入 layer_decomposition: true 和一张待拆分图片。 分层输入仅支持 PNG 或 JPEG;上传文件和 Base64 Data URI 也须使用这两种格式。 prompt 可省略以自动识别主要元素,也可指定需要拆分的元素。普通图片生成仍须传入 prompt。 分层 size 支持 auto(默认)、1K、1.5K、2K;仅支持单张输入,n 须为 1。 返回 1 张底图和最多 16 个带透明通道的 PNG 图层。output_format 仅控制底图格式,图层始终为 PNG。 data 中保留 z_index、name、description、bounding_box;底图 z_index=0,其余图层按数值递增叠放。 bounding_box.absolute 是输出底图中的像素坐标,normalized 是 0–1000 的归一化坐标,均为 [left, top, right, bottom]。 还原时将图层缩放至框的宽高,再放到框的左上角,按 z_index 从小到大叠放;各图层文件尺寸可以与底图不同。 底图和每个成功输出图层分别按实际输出分辨率计费;n=1 不表示只收一张的费用。 这与 sequential_image_generation 组图生成不同;5.0 Pro 不支持组图生成。

Seedream 5.0 Pro 计费方式

普通生成与图层拆分分别按实际输出分辨率结算。每张成功输出的实际像素数为其宽 × 高;261 万像素(2,610,000)及以下为低档,超过该值为高档。 底图也算一张输出;底图和所有成功图层各按自己的实际像素档位计费,同一请求可混合高低档。n=1 是一次拆分请求,不是只计一张费用。 只有成功输出计费,失败请求不扣费并退还冻结金额。 Pro 的首张参考图免费,第 2 张起按参考图张数收取输入费用。每次请求参考图费用为 max(参考图张数 − 1, 0) × 当前账户输入单价,仅计算一次,不按输出张数倍增;输出图片费用另算。分层恰好一张参考图,因此没有参考图输入费用。 适用的账户折扣同时作用于输入和输出单价。具体单价和适用折扣以当前调用站点的模型价格列表为准。

以下请求示例使用国内站;海外调用请使用对应站点和模型 ID。

curl https://api.xrtoken.net/v1/images/edits \
  -H "Authorization: Bearer $XRTOKEN_API_KEY" \
  -F "model=volcengine/doubao-seedream-5.0-pro" \
  -F "image=@source.png" \
  -F "layer_decomposition=true" \
  -F "size=auto" \
  -F "response_format=url"
POST
/v1/images/edits

Authorization

BearerAuth
AuthorizationBearer <token>

API 密钥认证(OpenAI 格式)。在 Authorization 请求头中传入:

Authorization: Bearer tr-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

In: header

Request Body

multipart/form-data

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X post "https://api.xrtoken.net/v1/images/edits" \  -F model="volcengine/doubao-seedream-5.0-pro" \  -F layer_decomposition="true"
{
  "created": 0,
  "data": [
    {
      "url": "http://example.com",
      "b64_json": "string",
      "size": "1273x265",
      "output_format": "string",
      "z_index": 0,
      "name": "string",
      "description": "string",
      "bounding_box": {
        "absolute": [
          383,
          120,
          1655,
          384
        ],
        "normalized": [
          187,
          59,
          808,
          188
        ]
      }
    }
  ],
  "usage": {
    "input_images": 0,
    "generated_images": 0,
    "input_tokens": 0,
    "output_tokens": 0,
    "total_tokens": 0
  }
}
{
  "error": "model field is required",
  "type": "invalid_request_error"
}
{
  "error": "invalid or missing API key",
  "type": "auth_error"
}
{
  "error": "insufficient balance -- please top up or upgrade your plan",
  "type": "billing_error"
}
{
  "error": "rate limit exceeded",
  "type": "rate_limit_error"
}
{
  "error": "upstream provider error",
  "type": "server_error"
}