API 文档

WisGate 文本、图片、视频与通用接口调用说明

基础文档

Base URL、鉴权、通用响应、任务轮询与安全注意事项。

WisGate API 基础文档

本文档说明 WisGate API 的通用调用方式。文本、图片、视频等模型系列文档会复用这里的 Base URL、鉴权、错误响应、异步任务轮询和安全约定。

基础信息

项目 说明
Base URL https://api.wisgate.cn
OpenAI 兼容 Base URL https://api.wisgate.cn/v1
鉴权方式 Authorization: Bearer YOUR_API_KEY
JSON 请求格式 Content-Type: application/json
表单请求格式 multipart/form-data,通常用于图像编辑上传图片

不要在代码仓库、文档、日志或截图中暴露真实 API Key。本文档中的 YOUR_API_KEY 仅为占位符。

API Key

调用 WisGate API 时,请在服务端保存 API Key,并通过 Authorization 请求头发送:

Authorization: Bearer YOUR_API_KEY

推荐做法:

  • 为不同业务、环境或客户创建独立 API Key,便于限流、审计和停用。
  • 不要把 API Key 放到浏览器端、移动端包体、公开 Git 仓库或前端环境变量中。
  • 生产环境建议记录请求 ID、任务 ID、模型名、状态和耗时,避免记录完整密钥。
  • 出现密钥泄露风险时,应立即停用旧密钥并替换为新密钥。

常用入口

能力 方法 路径
对话补全 POST /v1/chat/completions
Responses POST /v1/responses
Claude Messages POST /v1/messages
通用视频任务 POST /v1/videos
通用视频查询 GET /v1/videos/{id}
通用视频内容 GET /v1/videos/{id}/content
图片生成 POST /v1/images/generations
图片编辑 POST /v1/images/edits
Seedance 视频任务 POST /api/v3/contents/generations/tasks
Seedance 视频查询 GET /api/v3/contents/generations/tasks/{id}
Seedance 资产创建 POST /api/v3/open/CreateAsset
火山 Seedream 原生图片生成 POST /api/v3/images/generations

Base URL 不带 /v1 的场景请使用 https://api.wisgate.cn。OpenAI SDK 或 OpenAI 兼容接口的 base_url / baseURL 请使用 https://api.wisgate.cn/v1。

选择接口文档

分类 文档 适用场景
文本生成 Chat Completions OpenAI 兼容对话、流式输出与工具调用
文本生成 Responses 使用已开通 Responses 兼容渠道的模型
文本生成 Claude Messages Anthropic Messages 协议客户端
视频 视频生成 OpenAI 兼容视频任务与内容下载
Seedance 系列 Seedance 生视频 Seedance 原生视频任务、参考素材与模型参数
Seedance 系列 Seedance 资产 创建角色素材与使用资产引用
图像 Seedream 生图改图 Seedream 图片生成与编辑
图像 Qwen 多模态生图改图 Qwen 图片生成与编辑

不同入口的字段、鉴权细节、任务状态和模型支持范围可能不同,请以对应文档为准。模型可用于 Chat Completions,不代表同一渠道已支持 Responses 或 Messages。

鉴权示例

curl https://api.wisgate.cn/v1/chat/completions \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "deepseek-r1",
    "messages": [
      {
        "role": "user",
        "content": "你好"
      }
    ]
  }'

OpenAI SDK 示例

Python

from openai import OpenAI

client = OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://api.wisgate.cn/v1",
)

response = client.chat.completions.create(
    model="deepseek-r1",
    messages=[
        {"role": "user", "content": "你好"}
    ],
)

print(response.choices[0].message.content)

JavaScript / TypeScript

import OpenAI from "openai";

const client = new OpenAI({
  apiKey: "YOUR_API_KEY",
  baseURL: "https://api.wisgate.cn/v1",
});

const response = await client.chat.completions.create({
  model: "deepseek-r1",
  messages: [
    { role: "user", content: "你好" },
  ],
});

console.log(response.choices[0]?.message?.content);

错误响应

错误响应通常遵循 OpenAI 兼容结构;不同上游渠道的原始错误可能会被归一化到 error.message、error.type 和 error.code 中:

{
  "error": {
    "message": "model is required",
    "type": "invalid_request_error",
    "code": "invalid_request_error"
  }
}
字段 说明
error.message 可读错误信息
error.type 错误类型,例如 invalid_request_error
error.code 错误码,便于业务侧分支处理

常见处理建议:

场景 处理建议
401 或鉴权失败 检查 API Key 是否正确、是否仍有效、请求头是否为 Authorization: Bearer YOUR_API_KEY
model is required 检查 JSON 请求体或 multipart 表单是否包含 model
参数格式错误 对照对应系列文档确认字段名、类型和尺寸格式
上游任务超时 异步图片、视频任务可能需要更长时间;客户端请求超时建议按业务场景放宽
结果 URL 过期 生成图片、视频 URL 通常有有效期,业务侧应及时下载或转存

异步任务轮询

Seedance 生视频等能力会先创建任务,再通过任务 ID 查询结果。

  1. 创建任务接口返回 id。
  2. 客户端保存 id,稍后请求查询接口。
  3. 当状态进入 succeeded、failed、expired、cancelled 等终态后停止轮询。
  4. 生成结果 URL 通常有有效期,建议业务侧及时下载或转存。

建议首次查询从任务提交后数分钟开始;如果业务需要更快反馈,可逐步缩短查询间隔,但应避免高频无意义轮询。视频生成、图像异步任务和上游排队时间会随模型、分辨率、时长和素材复杂度变化。

回调安全

部分异步任务支持 callback_url。回调内容与查询结果结构一致,调用方应按以下方式处理:

  • 回调地址必须是服务端 HTTPS 地址,不建议使用本地地址或临时公网代理。
  • 回调处理逻辑应具备幂等能力,同一个任务状态可能被重复投递。
  • 收到回调后仍建议按任务 ID 查询一次结果,作为最终状态确认。
  • 不要在回调 URL 中拼接 API Key、用户密钥或敏感业务参数。

文件 URL 与素材要求

图片编辑、Seedance 资产和视频参考素材通常需要传入图片、视频或音频 URL:

  • URL 应可被上游服务公网访问,避免需要登录、内网访问或临时 Cookie 的地址。
  • 如果素材 URL 有有效期,请确保有效期覆盖任务排队和生成时间。
  • Base64 输入适合小文件或短素材;大文件建议使用公网 URL 或先创建资产。
  • 如需多次复用素材,Seedance 建议先创建资产,再使用 asset://ASSET_ID 引用。

安全建议

  • 服务端保存 API Key,不要把密钥放到浏览器、移动端包体或公开仓库。
  • 为终端用户生成不可逆的 safety_identifier,避免直接传手机号、邮箱等敏感信息。
  • 对上传或引用的图片、视频、音频 URL 做来源校验,确保素材可被上游访问。
  • 生产环境建议记录 RequestId、任务 ID、模型名和状态,避免记录完整提示词或密钥。
  • 生成结果 URL 如需长期保存,应由业务侧转存到自己的对象存储。