登录后在令牌管理创建 Virtual Key。
用一套 Key 接入多模型 API
页面会按当前访问域名自动使用国内或海外 API 根地址,复制文本、图片和视频接口示例。临时 Key 只在当前内存中替换,不会上传或保存。
地址和复制内容会跟随当前访问域名。
按你的接入场景选择对应接口。
错误码、环境变量和客户端配置排查已经移到独立 FAQ 页面。
查看常见问题环境与鉴权
页面展示与复制内容会按当前访问域名自动使用同一地址。
https://api.tokenstar.worldhttps://api.tokenstar.world/v1https://api.tokenstar.world所有接口使用平台 API Key。OpenAI 兼容接口使用 Authorization: Bearer ${API_KEY};Claude / Anthropic 接口使用 x-api-key: ${API_KEY}。
OpenAI 兼容客户端通常填写到 /v1;Claude Code 的 ANTHROPIC_BASE_URL 不带 /v1。
TokenStar Agent Skill
把 TokenStar 公开文档压缩成 AI Agent 可直接使用的 SKILL.md,覆盖文本、图片、视频、素材、回调和客户端配置。
tokenstar-codex-gateway/SKILL.md下载后将文件放入下列目录结构,或复制内容交给你的 Agent/Skill 管理流程。
SKILL.md 预览
文本生成接口
文本生成支持 OpenAI 兼容协议与 Claude / Anthropic 协议,按客户端或业务场景选择。
/v1/chat/completionsOpenAI Chat Completions同步Chat Completions
通过平台 API Key 调用 OpenAI 兼容聊天接口。
鉴权
Authorization: Bearer <API_KEY>Content-Type: application/json
请求参数
| 字段 | 必填 | 说明 |
|---|---|---|
model | 是 | 内置模型 ID |
messages | 是 | OpenAI 兼容消息数组 |
stream | 否 | 是否以 SSE 风格流式返回 |
max_tokens / temperature / top_p | 否 | 兼容参数透传 |
curl -sS "https://api.tokenstar.world/v1/chat/completions" \
-H "Authorization: Bearer ${API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"model": "qwen3.7-plus",
"messages": [
{"role": "user", "content": "只回复OK"}
]
}'- 可选 requestId 请求头用于问题排查。
/v1/responsesOpenAI Responses同步Responses API
调用 OpenAI Responses 兼容接口,适用于 Codex 自定义 provider。
鉴权
Authorization: Bearer <API_KEY>Content-Type: application/json
请求参数
| 字段 | 必填 | 说明 |
|---|---|---|
model | 是 | 模型 ID |
input | 是 | 字符串或 Responses 输入项 |
stream | 否 | 是否流式返回 |
curl -sS "https://api.tokenstar.world/v1/responses" \
-H "Authorization: Bearer ${API_KEY}" \
-H "Content-Type: application/json" \
-d '{
"model": "gpt-5.4",
"input": "只回复OK"
}'- Codex 自定义 provider 的 wire_api 使用 responses。
/v1/messagesAnthropic Messages同步Claude Messages
通过 Anthropic Messages 协议调用 Claude 模型。
鉴权
x-api-key: <API_KEY>anthropic-version: 2023-06-01
请求参数
| 字段 | 必填 | 说明 |
|---|---|---|
model | 是 | Claude 模型 ID |
max_tokens | 是 | 最大生成长度 |
messages | 是 | Anthropic 消息数组 |
- Claude Code 的 ANTHROPIC_BASE_URL 使用根地址,不带 /v1。
完整模型列表、上下文长度和输入能力请查看模型广场。 模型广场
图片生成接口
图片接口通常同步返回,请按不同模型响应字段读取图片内容。
gpt-image
POST /v1/images/generations · POST /v1/images/edits响应位置: data[].b64_json
- 适用模型:gpt-image-2。
- 图片生成使用 JSON 请求;图片编辑和局部重绘使用 multipart/form-data 上传 image,可选上传 mask。
- 常用尺寸包含 1024x1024、2048x2048;输出格式按模型支持范围传入。
Gemini 兼容图片模型
POST /v1beta/models/{model}:generateContent响应位置: candidates[].content.parts[].inlineData
- 适用模型:gemini-3-pro-image-preview、gemini-3.1-flash-image-preview、gemini-2.5-flash-image。
- parts 中可能同时包含文本和图片,请遍历 parts 查找 inlineData。
视频生成接口
异步任务、素材与回调的接入信息。
Seedance 视频生成
Seedance 任务创建后通过任务 ID 轮询终态,也可以传 callback_url 接收状态变化。
POST /v1/video/generations · GET /v1/video/generations/{task_id}结果: result_url
- 无参考人入口使用 seedance-2.0 或 seedance-2.0-fast。
- 创建任务后保存返回的 id 或 task_id,再用查询接口轮询结果。
POST /volc/asset/CreateAssetGroup · POST /volc/asset/ListAssetGroups · POST /volc/asset/CreateAsset · POST /volc/asset/ListAssets · POST /v1/video/generations结果: asset://<Id> · result_url
- 参考人入口使用 seedance-2.0-asset 或 seedance-2.0-asset-fast。
- 素材支持图片、视频和音频;URL 字段可传普通 URL、Data URI 或纯 Base64。
- 也可以使用 multipart/form-data 直接上传本地文件。
- 素材组和素材查询可用于确认 GroupId、素材 Id 和素材状态。
- 视频生成请求在 content 中用 asset://<Id> 引用素材。
- 引用素材生成视频时,content 必须严格按 text、image_url、video_url、audio_url 的顺序传入;请勿调整顺序,否则可能导致报错。
Kling 视频生成
Kling 新视频接口按路径区分文生、图生、Omni 视频编辑和动作控制;创建返回 data.task_id,查询结果位于 data.task_result.videos[].url。
POST /v1/videos/text2video · GET /v1/videos/text2video/{task_id}结果: data.task_result.videos[].url
- 适用模型:kling-v2-6、kling-v3。
- 创建结果为 data.task_id;查询任务时使用 GET /v1/videos/text2video/{task_id}。
- 使用字段 model_name、prompt、duration、mode、aspect_ratio、sound;巡检当前使用 mode=std。
- 如需主体一致性,不建议走文生视频,建议使用 image2video、omni-video 或 motion-control 的 element_list。
POST /v1/videos/image2video · GET /v1/videos/image2video/{task_id}结果: data.task_result.videos[].url
- 适用模型:kling-v2-6、kling-v3。
- 图片字段使用顶层 image,不是 image_url,也不是旧版 Image.Url。
- image2video 不支持 aspect_ratio,携带会返回 UnknownParameter。
- 需要主体一致性时传 element_list,并使用 CreateAigcElement 返回的 ElementId 作为 element_id。
- 使用 element_list 前,必须先调用 DescribeAigcElement 确认主体 Status=succeed;主体仍在 pending 时提交任务可能导致 Element id not found。
POST /v1/videos/omni-video · GET /v1/videos/omni-video/{task_id}结果: data.task_result.videos[].url
- 适用模型:kling-v3-omni。
- 视频编辑使用 video_list,video_list[].video_url 必须是可下载的视频地址。
- 需要主体一致性时传 element_list,元素字段为 element_id。
- 巡检当前覆盖 kling-v3-omni + std + element_list。
POST /v1/videos/motion-control · GET /v1/videos/motion-control/{task_id}结果: data.task_result.videos[].url
- 基础动作控制适用 kling-v2-6、kling-v3;主体一致性动作控制适用 kling-v3。
- 必须同时传 image_url 和 video_url;video_url 是动作参考视频,image_url 是主体图片。
- 必须传 prompt 和 character_orientation;kling-v3 + element_list 时 character_orientation 使用 video。
- 不要传 duration 或 StaticMask,否则可能返回 UnknownParameter 或任务失败。
- kling-v2-6 + element_list 已确认不支持,会返回 subject reference is not supported for model 'kling-v2-6'。
POST /aigc/element结果: Response.ElementId
- 通过 X-TC-Action 区分 CreateAigcElement、DescribeAigcElement、DeleteAigcElement。
- 创建后保存 ElementId,并轮询 DescribeAigcElement,直到 Status=succeed 后再用于新接口的 element_list[].element_id。
- Name 建议使用短名称;过长会返回 Name length is invalid。
- 主体参考图片 URL 必须能被上游下载,否则会返回 ImageDownloadError。
GET /doc/kling-legacy结果: 旧版 /v1/video/generations 与 X-TC-Action 文档
- 旧版页面仅用于存量接口、迁移和历史排障。
- 新接入请优先使用本模块的 /v1/videos/{endpoint} 新接口。
任务状态、查询与回调
视频任务必须按异步任务处理;仅在对应接口明确支持 callback_url 时传回调地址,否则按任务查询接口轮询。
submitted / queued / NOT_START → running / IN_PROGRESS → succeeded / SUCCESS / DONE / failed / FAILURE / FAIL结果: Seedance: result_url;Kling 新接口: data.task_result.videos[].url
- 建议轮询间隔 5 到 10 秒,Kling 新接口建议 10 到 20 秒,进入终态后停止轮询。
- callback_url 仅在对应视频接口明确支持时使用;Kling 新视频接口暂不对外提供或不建议依赖 callback_url、watermark_info、external_task_id。
- 客户回调需返回 HTTP 2xx,并按任务 ID 幂等处理。
创建任务后保存 id、task_id 或 Kling Response.JobId,通过查询接口轮询;客户回调需按任务 ID 幂等处理。
第三方 Agent 工具配置
根据 Agent 工具使用不同协议和 Base URL。
Claude Code
export ANTHROPIC_API_KEY="${API_KEY}"
export ANTHROPIC_BASE_URL="https://api.tokenstar.world"
export CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1
export ANTHROPIC_MODEL="claude-sonnet-4-6-thinking"
claude不要同时设置 ANTHROPIC_API_KEY 和 ANTHROPIC_AUTH_TOKEN。
Codex
model = "gpt-5.4"
model_provider = "tokenstar"
[model_providers.tokenstar]
name = "TokenStar Gateway"
base_url = "https://api.tokenstar.world/v1"
wire_api = "responses"
env_key = "TOKENSTAR_API_KEY"OpenClaw
{
env: { TOKENSTAR_API_KEY: "${API_KEY}" },
models: {
mode: "merge",
providers: {
tokenstar: {
baseUrl: "https://api.tokenstar.world/v1",
apiKey: "${TOKENSTAR_API_KEY}",
api: "openai-completions",
authHeader: true,
models: [{
id: "qwen3.7-plus",
name: "Qwen 3.7 Plus",
reasoning: true,
input: ["text", "image"],
contextWindow: 200000,
maxTokens: 32768
}]
}
}
}
}Anthropic provider 的 Base URL 使用根地址。
下载同源的 SKILL.md,让 AI Agent 直接读取 TokenStar API、Base URL、模型、媒体任务和排障规则,减少人工翻文档。
