最近调用
仅展示最近 8 条计费请求,轮询查询不计入。
| 模型 | 接口 | 状态 | 消费 | 耗时 | 时间 |
|---|---|---|---|---|---|
| 加载中... | |||||
API 密钥
密钥用于调用 /v1 接口,完整密钥仅在创建时展示一次。
| 名称 | 密钥 | 状态 | 创建时间 | 操作 |
|---|---|---|---|---|
| 加载中... | ||||
| 暂无密钥,点击右上角创建 | ||||
支付宝在线充值
生成支付宝付款二维码,支付成功后自动到账;请以页面订单状态为准。
付款后页面会自动刷新订单状态,到账后余额同步更新。
兑换码充值
输入兑换码,余额将即时到账。
充值记录
只显示充值订单和状态;支付成功后会自动变为已到账。
| 订单 | 金额 | 到账积分 | 状态 | 时间 |
|---|---|---|---|---|
| 加载中... | ||||
| 暂无充值记录 | ||||
流水日志
| 类型 | 金额 | 余额 | 备注 | 时间 |
|---|---|---|---|---|
| 加载中... | ||||
| 暂无交易记录 | ||||
请求日志
| 模型 | 接口 | 结果 | 输入/输出 | 数量 | 消费 | 耗时 | 时间 |
|---|---|---|---|---|---|---|---|
| 加载中... | |||||||
| 暂无日志 | |||||||
接入文档
XS-Token 中转站兼容 OpenAI 接口规范,可直接替换 base_url 与 api_key 使用。
AI 友好文档 · 一键给 AI 助手
把下面这个 URL 发给 ChatGPT / Claude / Cursor 等 AI 助手,它就能完整理解 XS-Token 的所有模型、调用方式、计费规则 —— 模型清单和价格实时生成,永不过期。
https://api.xs-token.com/llms.txt
基础信息
https://api.xs-token.com
Authorization: Bearer <API_KEY>
API Key 在「API 密钥」页面创建。计费单位为积分(credits),1 积分 = 1e6 micro。
接口总览
POST /v1/chat/completions — 同步对话/视频生成,阻塞返回POST /v1/videos — 异步建任务GET /v1/videos/:id — 查询任务(轮询不计费)GET /v1/files/:id — 视频直链下载(无需鉴权)GET /v1/models — 列出已开通模型已开通模型
| 模型 | 类型 | 计费 |
|---|---|---|
| 加载中... | ||
|
||
计费说明
- 按次计费(per_call):每次请求固定扣费 price_call。
- 按 Token 计费(per_token):输入按 price_in、输出按 price_out 分别计费。
- 按时长计费(per_second):视频按生成秒数 × price_second 计费。
- 采用先扣费策略,请求失败或生成服务错误自动退款。
- 异步任务轮询不计费:GET /v1/videos/:id 仅用于查询状态,不消耗积分。
- 余额不足时请求将被拒绝(HTTP 402),请通过兑换码充值。
常见错误码
| HTTP | code | 含义 |
|---|---|---|
| 401 | missing_api_key / invalid_api_key | 未提供 / 无效的 API Key |
| 402 | insufficient_balance | 余额不足,请充值 |
| 403 | user_disabled / key_disabled | 账号或密钥被禁用 |
| 404 | model_not_found / task_not_found | 模型或任务不存在 |
| 429 | rate_limit_exceeded | 请求过快,稍后重试 |
| 502 | upstream_error | 生成服务错误(已自动退款) |
Seedance 视频生成 OpenAPI 文档
按外部 API 文档母版生成,仅替换为 XS 请求地址,并增加 XS 图床上传接口。
https://api.xs-token.com/v1
Sora V3 Pro 视频生成
文生 / 图生 / 首尾帧 / 参考视频 / 混合参考。异步 POST /videos 创建,轮询 GET /videos/:task_id(每 5 秒,不计费)。720p 2.5 积分/秒,1080p 5 积分/秒。成功后 result_url 直接返回原生视频直链。
https://api.xs-token.com/v1
Sora V4 Fast 视频生成
文生 / 图生 / 首尾帧 / 多参考(4图+3视频+1音频);标准 1.5 积分/秒,分组 sora-vip 1.25/秒。最短 5 秒。result_url 直接返回原生视频直链。
https://api.xs-token.com/v1
Grok Imagine Video 1.5
视频生成 · 同步grok-imagine-video-1.5-preview
图生视频:每次请求必须提供一张参考图(base64 内嵌或 XS CDN 图片 URL)。
采用同步方式:阻塞约 30–60 秒后直接返回视频直链,单次只扣一次费。建议客户端总超时 ≥ 900 秒。
请求示例 · POST /v1/chat/completions
video_config 字段
| 字段 | 可选值 | 说明 |
|---|---|---|
| video_length | 6 · 10 | 视频时长(秒),仅支持 6 或 10 |
| aspect_ratio | 16:9 · 9:16 · 1:1 · 3:2 · 2:3 | 画面比例,横屏 16:9 / 竖屏 9:16 |
| resolution | HD · SD | 清晰度,HD≈720p,SD≈480p |
| preset | normal | 风格预设,建议传 normal |
返回与下载
- 成功返回标准 chat.completion,视频直链在
choices[0].message.content中。 - 直链域名为
cdn.xs-token.com或api.xs-token.com/v1/files/<id>,内容为video/mp4,直接 GET 即可下载,无需带鉴权头。 - content 个别情况下可能被包成 markdown,建议用正则
https?://[^\s"'`]+兜底提取。
Gemini 图像生成
图像生成 · 同步 文生图 / 图生图 / 多图融合gemini-3-pro-image-preview
gemini-3.1-flash-image-preview
同步调用:单次请求阻塞 20–60 秒返回图片直链。
接口路径:POST /v1/chat/completions(不是 /v1/images/generations)— 走 OpenAI 多模态对话格式。
两个模型按画质 / 速度 / 价格取舍,请求体格式完全一致,只改 model 即可切换。
返回的 content 形如 ,XS 已自动把图片落到我们的 CDN,客户端直接 GET 这个 URL 拿 PNG,无需自己解码。
模型与计费
| model | 定位 | 计费 |
|---|---|---|
| gemini-3-pro-image-preview | 更高画质,质量优先 | 1.5 积分/次 |
| gemini-3.1-flash-image-preview | 更快更省,速度优先 | 1 积分/次 |
计费为 per_call 按次计费,与输出图片大小无关;同步返回,无需轮询。
三种用法
- 文生图:
messages[0].content直接传一段提示词字符串。 - 图生图 / 编辑:
messages[0].content传数组,把参考图作为image_url项放最前面,文字描述({"type":"text"})放后面。 - 多图融合:在
content数组里塞多张image_url,模型会综合参考。
image_url.url 既可以是 data:image/...;base64,... data URI,也可以是一条 https:// 直链(推荐先用图床上传转成 XS CDN URL)。
可选输出参数
| 参数 | 取值 | 说明 |
|---|---|---|
| imageSize | 1K / 2K / 4K | 输出分辨率档位,别名 image_size。 |
| aspect_ratio | 1:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9 … | 画面比例(还支持 1:4 / 4:1 / 1:8 / 8:1)。 |
两个参数都是可选的,放在请求体顶层,XS 会原样转发给上游。
图生图时若不传 aspect_ratio,上游会尽量保持输入图片原有的比例。
示例
返回与下载
- 成功返回标准 chat.completion,
choices[0].message.content是 markdown 字符串:。 - URL 是
https://cdn.xs-token.com/images/<id>.png,直接 GET 即可下载,无需鉴权。 - 建议用正则
https?://[^\s)\"'<>]+兜底提取 URL。 - 客户端总超时建议 ≥ 120 秒。
- 出错时返回标准 OpenAI 风格 error body(
{"error":{"message":...}})。
注意事项
- 本系列只走
/v1/chat/completions。请不要调用/v1/images/generations。 - 提示词建议明确写"生成一张图"或英文 "Generate an image",模型才会输出图像而不是文字描述。
- 参考图支持
data:image/jpeg;base64,...data URI 或https://直链(含 XS CDN URL),可放多张做多图融合。 - 计费为 per_call 按次计费(pro 1.5 / flash 1 积分),与输出图片大小无关;同步返回无需轮询。
GPT Image 2
图像生成 · 同步 标准 images API 画质分模型gpt-image-2 / -pro / -max
同步调用:单次请求阻塞返回图片直链,无需轮询。
走标准 OpenAI images 接口(不是 chat):文生图 POST /v1/images/generations,图生图 POST /v1/images/edits。
三个画质档位模型,按次计费:gpt-image-2(标准)/ gpt-image-2-pro(高)/ gpt-image-2-max(超高)。价格只看你选了哪个模型(画质档),与 size 无关。
size 用 宽x高 像素串(如 1024x1024 / 2048x2048 / 2880x2880)只决定输出分辨率,不影响价格。
返回里 data[0].url 形如 https://cdn.xs-token.com/images/<id>.png,XS 已自动把图片转存到我们的 CDN,客户端直接 GET 这个 URL 拿 PNG,无需鉴权、无需自己解码。
模型画质与计费
| model | 画质 | 计费 |
|---|---|---|
| gpt-image-2 | 标准 | 0.30 积分/次 |
| gpt-image-2-pro | 高 | 0.50 积分/次 |
| gpt-image-2-max | 超高 | 0.70 积分/次 |
价格只与模型(画质档)有关,按次计费;size 调多大都不改价。
想要更高画质就换更高一档的模型名,不要靠 size 去凑价格。
接口
| 用途 | 方法 / 路径 |
|---|---|
| 文生图 | POST /v1/images/generations |
| 图生图 / 编辑 | POST /v1/images/edits |
请求参数
| 字段 | 必填 | 说明 |
|---|---|---|
| model | 是 | gpt-image-2 / gpt-image-2-pro / gpt-image-2-max,决定画质与价格 |
| prompt | 是 | 提示词 |
| size | 否 | 宽x高 像素串(如 1024x1024 / 1536x1024 / 2048x2048 / 2880x2880)。只决定输出分辨率,不影响价格 |
| quality | 否 | low / medium / high / auto |
| n | 否 | 出图数量,多张时返回多个 data[] 项 |
自定义 size 规则:宽高需为 16 的倍数、最长边 ≤ 3840、长短边比 ≤ 3:1。
常用尺寸 → 档位
| size(宽x高) | 比例 | 档位 |
|---|---|---|
| 1024x1024 | 1:1 | ≈ 1K 档 |
| 1536x1024 | 3:2 | ≈ 1K 档 |
| 1024x1536 | 2:3 | ≈ 1K 档 |
| 1280x720 | 16:9 | ≈ 1K 档 |
| 2048x2048 | 1:1 | ≈ 2K 档 |
| 2560x1440 | 16:9 | ≈ 2K 档 |
| 2880x2880 | 1:1 | ≈ 4K 档 |
| 3840x2160 | 16:9 | ≈ 4K 档 |
这里的「档位」只是输出分辨率的粗略说法,不代表价格——价格永远只看模型名(标准/高/超高)。
图生图 / 编辑(/v1/images/edits)
/v1/images/edits 支持两种传图方式,二选一:
- multipart 上传:
-F "image=@input.png"。多图就重复image字段,最多 16 张。 - JSON 传 URL:
"images":[{"image_url":"https://..."}],可放多项做多图融合。
示例
返回与下载
两个接口返回结构一致:
{
"created": 1781187443,
"data": [
{ "url": "https://cdn.xs-token.com/images/<id>.png" }
],
"output_format": "png",
"quality": "high",
"size": "1024x1024"
}data[0].url是https://cdn.xs-token.com/images/<id>.png,在我们自己的 CDN 上(XS 已自动转存),直接 GET 即可下载,无需鉴权。- 出多张图(
n> 1)时data[]会有多项,逐个取url。
错误
出错返回 OpenAI 风格:
{ "error": { "message": "...", "type": "invalid_request_error" } }图床上传
同步 multipart 免费POST /v1/images/upload
用你自己的 sk-xs-... Key 直传一张图片到我们的 R2,返回 永久可用的 CDN 公开 URL。
典型用途:把本地图片转成 XS CDN URL,给 gpt-image 图生图(/v1/images/edits 的 images[].image_url)或 Gemini 图像(image_url)当参考图用。
规则
| 项 | 说明 |
|---|---|
| Content-Type | multipart/form-data |
| 字段名 | file(推荐) / image / image[] 任意一个 |
| 单文件大小 | ≤ 2 MB |
| 支持格式 | JPG / PNG / WEBP / GIF |
| 数量限制 | 不限张数,免费使用 |
| 鉴权 | Authorization: Bearer sk-xs-... |
| 存储位置 | cdn.xs-token.com/uploads/<uid>/<ts>_<rand>.<ext> · 永久有效 |
示例
返回字段
{
"url": "https://cdn.xs-token.com/uploads/3/1780640570_27ad0b68a5c591fe.jpg",
"key": "uploads/3/1780640570_27ad0b68a5c591fe.jpg",
"size": 40496,
"mime": "image/jpeg",
"filename": "seed.jpg"
}
- url — 公开 CDN URL,直接可访问(无需鉴权)
- key — R2 对象 key,以
uploads/<你的 user_id>/开头 - size / mime / filename — 元信息
错误码
401 missing_api_key / invalid_api_key— 未带或无效的 Key400 missing_file— multipart 字段名不对(请用file)400 upload_too_large— 超过 2 MB400 invalid_format— 不是 JPG/PNG/WEBP/GIF503 storage_unavailable— R2 暂不可用(极少见)