Xu API
登录注册

Xu API 接入文档

文本、图片与视频 API,一页完成接入

使用统一认证方式接入文本模型,并通过媒体网关完成图片与视频任务。模型名称和价格以 Xu API 实时目录为准。

1.2 服务地址

文本聊天网关https://gpt.xuaiapi.xyz
图片和视频网关https://media.xuaiapi.xyz

2. 快速接入 CCSwitch

使用 CCSwitch 配置 Xu API,再启动 ChatGPT,进入 Codex 界面。

教程图片均可点击放大,再次点击图片或按 Esc 关闭。

2.1 前置安装

无法成功跳转时,请联系管理员【V: fnbq1203】免费远程安装。

2.2 进入控制台

进入 Xu API 控制台

2.3 进入 API 配置界面

进入 API 配置界面

2.4 创建密钥

创建 Codex 使用的 API 密钥

2.5 复制密钥

复制 API 密钥

2.6 配置 CCSwitch

先在模型广场筛选分组,再选择想配置的模型名并复制。本次以 gpt-5.6-sol 为例。

筛选模型分组并复制模型名称

进入 CCSwitch,新建供应商

在 CCSwitch 中新建供应商

填写供应商配置

官网链接:https://gpt.xuaiapi.xyz

API 请求地址:https://gpt.xuaiapi.xyz/v1

默认模型:gpt-5.6-sol

填写 CCSwitch 供应商名称、官网链接、API Key、请求地址和默认模型

启用配置

在 CCSwitch 中启用 Xu API 配置

2.7 启动 ChatGPT

必须先配置 CCSwitch,再启动 ChatGPT。走完新手指引,正常进入 Codex 界面后,左下角显示 custom 即表示配置成功。

如未显示,请联系管理员【V: fnbq1203】免费远程安装。

启动 ChatGPT 并确认 Codex 界面左下角显示 custom

3. 快速接入 WorkBuddy

教程图片均可点击放大,再次点击图片或按 Esc 关闭。

3.1 进入控制台

进入 Xu API 控制台

3.2 进入 API 配置界面

进入 API 配置界面

3.3 创建密钥

创建 API 密钥

3.4 复制密钥

复制 API 密钥

3.5 在 WorkBuddy 中选择配置自定义模型

在 WorkBuddy 中配置自定义模型

3.6 填入参数

接口地址:https://xuaiapi.xyz/v1/chat/completions

填写自定义模型参数

4. 快速开始

4.1 设置环境变量

export XU_API_KEY="<YOUR_API_KEY>"
API Key 只应保存在可信服务端。不要将完整密钥写入浏览器代码、截图、日志、公开仓库或支持消息。

4.2 端点总览

八个端点覆盖 WorkBuddy 等国内 Agent、文本、图片和异步视频任务。

POST/v1/chat/completions接入 WorkBuddy 等国内 Agent
POST/v1/responsesOpenAI Responses 文本调用
POST/v1/messagesAnthropic Messages 兼容调用
POST/v1/images/generations生成图片
POST/v1/images/edits上传参考图并编辑
POST/v1/videos创建视频任务
GET/v1/videos/{id}查询视频任务状态
GET/v1/videos/{id}/content下载完成的 MP4

5. 文本模型接口

5.1 OpenAI Responses

新项目优先使用 Responses 兼容协议。将模型名替换为实时目录中的可用文本模型。

curl https://gpt.xuaiapi.xyz/v1/responses \
  -H "Authorization: Bearer $XU_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "your-enabled-model",
    "input": "请用三句话介绍 AI 路由网关",
    "stream": false
  }'

5.2 Anthropic Messages

使用 Messages 兼容协议时,保留 x-api-key 和 anthropic-version 请求头。

curl https://gpt.xuaiapi.xyz/v1/messages \
  -H "x-api-key: $XU_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "your-enabled-model",
    "max_tokens": 512,
    "messages": [{"role":"user","content":"解释一下故障转移策略"}]
  }'

6. 图片接口

6.1 图片生成

图片请求使用媒体网关。返回临时 URL 还是 base64 数据取决于当前模型渠道。

curl https://media.xuaiapi.xyz/v1/images/generations \
  -H "Authorization: Bearer $XU_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "your-enabled-image-model",
    "prompt": "清晰、克制的 AI 网关控制台",
    "size": "1024x1024",
    "n": 1
  }'
参数类型必填说明
modelstring是实时目录中可用的图片模型。
promptstring是描述主体、风格、构图和约束。
sizestring否支持范围取决于所选模型。
nnumber否渠道不支持时可能固定为 1。
response_formatstring否常见返回为 URL 或 b64_json。

图片 URL 通常有有效期。需要长期保存时,请及时下载到自己的受控存储。

6.2 图片编辑

该端点使用 multipart/form-data。图片文件放在 image 字段,不要手动设置 Content-Type 边界。

curl https://media.xuaiapi.xyz/v1/images/edits \
  -H "Authorization: Bearer $XU_API_KEY" \
  -F "model=your-enabled-image-model" \
  -F "prompt=保留构图,调整为 Xu API 的克制风格" \
  -F "size=1024x1024" \
  -F "image=@input.png;type=image/png"

model、image、prompt 必填,size 可选。mask 仅在模型支持局部重绘时使用;上传图片和 mask 的格式、尺寸必须符合模型要求。

7. 视频接口

7.1 异步任务流程

视频采用异步任务模式:先创建任务,保存任务 ID,轮询状态,完成后下载 MP4。

01

创建

POST /v1/videos

02

查询

GET /v1/videos/{id}

03

下载

GET /v1/videos/{id}/content

7.2 完整请求示例

BASE_URL="https://media.xuaiapi.xyz"
API_KEY="$XU_API_KEY"

TASK_JSON=$(curl -sS -X POST "$BASE_URL/v1/videos" \
  -H "Authorization: Bearer $API_KEY" \
  -F "model=gemini-veo31" \
  -F "prompt=镜头缓慢推进,保持主体和画面风格" \
  -F "seconds=8" \
  -F "size=1280x720" \
  -F "input_reference=@input.png;type=image/png")
TASK_ID=$(printf "%s" "$TASK_JSON" | jq -r ".id")

STATUS="queued"
for ATTEMPT in $(seq 1 120); do
  TASK_JSON=$(curl -sS "$BASE_URL/v1/videos/$TASK_ID" \
    -H "Authorization: Bearer $API_KEY")
  STATUS=$(printf "%s" "$TASK_JSON" | jq -r ".status")
  case "$STATUS" in completed) break ;; failed) exit 1 ;; esac
  sleep 5
done

[ "$STATUS" = "completed" ] || { echo "video task timed out"; exit 1; }
curl -fL "$BASE_URL/v1/videos/$TASK_ID/content" \
  -H "Authorization: Bearer $API_KEY" -o output.mp4

7.3 参数和状态说明

创建任务时 model、prompt 必填;seconds、size、input_reference 的支持范围由模型决定。

  • queued:任务正在排队,继续等待。
  • in_progress:任务正在处理,继续等待。
  • completed:任务已完成,可以下载。
  • failed:任务失败,停止轮询并记录请求 ID。

8. 错误处理与重试

8.1 401 / 403

检查密钥、权限、请求地址和模型访问范围。不要对鉴权失败无限重试。

8.2 429

降低并发并使用指数退避和随机抖动;尊重服务返回的重试提示。

8.3 5xx / 超时

仅对可安全重复的请求进行有限次数重试。异步任务先查询原任务状态,避免重复创建和计费。

8.4 日志建议

建议记录请求 ID、端点、模型、状态码和耗时,并设置最大重试次数与总超时。不要记录完整请求正文中的敏感数据。

9. 安全说明与支持

9.1 API Key 管理

  • 为开发、测试、生产环境分别创建 API Key,并及时撤销泄露的密钥。
  • 日志只记录排障所需字段;对 Authorization、API Key、用户内容和个人信息进行脱敏。
  • 不要在浏览器代码、移动应用包、截图或公开仓库中嵌入完整密钥。

9.2 媒体文件管理

对临时图片 URL 及时下载,并按业务要求控制存储访问和生命周期。

9.3 问题反馈

反馈问题时提供请求 ID、时间、端点和状态码,不要发送完整 API Key 或敏感请求内容。

需要帮助时,请登录 Xu API 控制台,通过站内支持入口提交问题。