Mixtoken API 接入文档
专项 API 接入文档
查看判断模型与图像模型的详细参数、调用示例和接入说明。
Mixtoken 支持 OpenAI、Google Gemini、Anthropic 多种兼容格式接口。你可以把官方 SDK 的 base URL 指向 Mixtoken,无需改动业务代码,即可调用 Claude / Gemini / GPT 等多家模型。
-
Base URL:OpenAI-compatible 使用
https://api.mixtoken.ai/v1;Anthropic Messages 完整端点为https://api.mixtoken.ai/v1/messages;Gemini 原生接口前缀为https://api.mixtoken.ai/v1beta -
鉴权:API Key(
$MIXTOKEN_API_KEY) -
协议:支持 Anthropic Messages(
/v1/messages)、OpenAI Chat Completions(/v1/chat/completions)、OpenAI Responses(/v1/responses,仅 GPT)、Gemini GenerateContent(/v1beta/models/{model}:generateContent)、图片生成(/v1/images/generations)和视频任务接口。
文中的 $MIXTOKEN_API_KEY 请替换为你自己的 Key,妥善保管、不要提交到代码仓库。
一、Base URL 与请求头
根据使用的模型选择对应的兼容格式:
不同格式的鉴权 Header 不同,按使用的协议选择:
| 协议 | Header |
|---|---|
| Anthropic |
x-api-key: $MIXTOKEN_API_KEY + anthropic-version: 2023-06-01
|
| OpenAI | Authorization: Bearer $MIXTOKEN_API_KEY |
| Gemini | Authorization: Bearer $MIXTOKEN_API_KEY |
二、可用模型
查询当前公开模型:
curl https://api.mixtoken.ai/v1/models \
-H "Authorization: Bearer $MIXTOKEN_API_KEY"
当前公开模型:
| 能力 | 准确模型 ID |
|---|---|
| OpenAI 兼容文本 |
gpt-5.5、gpt-5.6-sol、gpt-6-astra、gpt-6-sol、deepseek-v4-pro、deepseek-v4.1-flash、glm-5.2、glm-5.3、glm-5.3-flash、kimi-k3、gpt-5.6-luna、gpt-5.6-terra、grok-4.6、gpt-6-luna
|
| Claude |
claude-opus-5-5、claude-fable-5、claude-fable-5-1、claude-haiku-4-5、claude-opus-4-5、claude-opus-4-6、claude-opus-4-7、claude-opus-4-8、claude-opus-5、claude-sonnet-4-5、claude-sonnet-4-6、claude-sonnet-5
|
| Gemini |
gemini-3.1-pro-preview、gemini-3.5-flash、gemini-3.5-flash-lite、gemini-3.6-flash、gemini-3.7-flash
|
| Jev 判断 | jev-1.13 |
| 图片生成 |
dola-seedream-5-0-pro-260628、gpt-image-2、gpt-image-2-4k、gpt-image-2.5-flare-4k、gpt-image-2.5-sunburst-4k、gpt-image-2.5-flare、gpt-image-2.5-sunburst
|
| 视频生成 |
doubao-seedance-2-0-260128、doubao-seedance-2-0-fast-260128、doubao-seedance-2-0-mini-260615、dreamina-seedance-2-0-260128、dreamina-seedance-2-0-fast-260128、dreamina-seedance-2-5-260628、kling-v1、kling-v1-5、kling-v1-6、kling-v2-1、kling-v2-1-master、kling-v2-5-turbo、kling-v2-6、kling-v2-master、kling-v3
|
三、Anthropic 原生格式
端点:POST /v1/messages
3.1 基础请求
curl https://api.mixtoken.ai/v1/messages \
-H "x-api-key: $MIXTOKEN_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{
"model": "claude-fable-5",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "用一句话介绍你自己"}
]
}'
返回(节选):
{
"id": "msg_01KxDE...",
"type": "message",
"role": "assistant",
"model": "claude-fable-5",
"content": [{"type": "text", "text": "我是 Claude……"}],
"stop_reason": "end_turn",
"usage": {"input_tokens": 159, "output_tokens": 34}
}
3.2 流式(SSE)
加 "stream": true,响应为 text/event-stream:
curl https://api.mixtoken.ai/v1/messages \
-H "x-api-key: $MIXTOKEN_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-H "content-type: application/json" \
-d '{
"model": "claude-fable-5",
"max_tokens": 1024,
"stream": true,
"messages": [{"role": "user", "content": "写一首五言绝句"}]
}'
事件序列:message_start → content_block_start → 多个 content_block_delta → content_block_stop → message_delta → message_stop。
3.3 Python SDK(anthropic)
from anthropic import Anthropic
client = Anthropic(
api_key="$MIXTOKEN_API_KEY",
base_url="https://api.mixtoken.ai",
)
resp = client.messages.create(
model="claude-fable-5",
max_tokens=1024,
messages=[{"role": "user", "content": "你好"}],
)
print(resp.content[0].text)
四、OpenAI 兼容格式
端点:POST /v1/chat/completions(Chat Completions)与 POST /v1/responses(Responses API,仅 GPT 系列)
4.1 Chat Completions 基础请求
curl https://api.mixtoken.ai/v1/chat/completions \
-H "Authorization: Bearer $MIXTOKEN_API_KEY" \
-H "content-type: application/json" \
-d '{
"model": "gpt-5.6-sol",
"max_tokens": 1024,
"messages": [{"role": "user", "content": "Hello"}]
}'
返回为标准 OpenAI chat.completion 结构:
{
"object": "chat.completion",
"model": "gpt-5.6-sol",
"choices": [
{"index": 0, "message": {"role": "assistant", "content": "Hello!"}, "finish_reason": "stop"}
],
"usage": {"prompt_tokens": 214, "completion_tokens": 3, "total_tokens": 217}
}
4.2 Python SDK(openai)
from openai import OpenAI
client = OpenAI(
api_key="$MIXTOKEN_API_KEY",
base_url="https://api.mixtoken.ai/v1",
)
resp = client.chat.completions.create(
model="gpt-5.6-sol",
messages=[{"role": "user", "content": "你好"}],
)
print(resp.choices[0].message.content)
4.3 流式
加 "stream": true,返回标准 OpenAI SSE(data: {...} 分片,以 data: [DONE] 结束)。
4.4 Responses API 基础请求
如果你的应用已经迁移到 OpenAI Responses API,可以直接调用 /v1/responses:
curl https://api.mixtoken.ai/v1/responses \
-H "Authorization: Bearer $MIXTOKEN_API_KEY" \
-H "content-type: application/json" \
-d '{
"model": "gpt-5.6-sol",
"input": "用一句话介绍 Mixtoken"
}'
/v1/responses 仅支持 GPT 系列模型,请求 Claude / Gemini 会直接返回 400。Claude 请走 /v1/messages,Gemini 请走 Gemini 原生格式。
4.5 Python SDK(openai responses)
from openai import OpenAI
client = OpenAI(
api_key="$MIXTOKEN_API_KEY",
base_url="https://api.mixtoken.ai/v1",
)
resp = client.responses.create(
model="gpt-5.6-sol",
input="用一句话介绍 Mixtoken",
)
print(resp.output_text)
4.6 Responses API 流式
加 "stream": true,返回 OpenAI Responses API 的标准流式事件。
五、Gemini 原生格式
5.1 基础请求
curl https://api.mixtoken.ai/v1beta/models/gemini-3.5-flash:generateContent \
-H "Authorization: Bearer $MIXTOKEN_API_KEY" \
-H "content-type: application/json" \
-d '{
"contents": [
{"role": "user", "parts": [{"text": "用一句话介绍你自己"}]}
]
}'
返回(节选):
{
"candidates": [
{
"content": {"role": "model", "parts": [{"text": "我是 Gemini……"}]},
"finishReason": "STOP"
}
],
"usageMetadata": {"promptTokenCount": 12, "candidatesTokenCount": 22, "totalTokenCount": 34}
}
5.2 流式(SSE)
使用 streamGenerateContent,并加上 alt=sse:
curl "https://api.mixtoken.ai/v1beta/models/gemini-3.5-flash:streamGenerateContent?alt=sse" \
-H "Authorization: Bearer $MIXTOKEN_API_KEY" \
-H "content-type: application/json" \
-d '{
"contents": [
{"role": "user", "parts": [{"text": "写一首五言绝句"}]}
]
}'
5.3 环境变量
如果你的工具或 SDK 支持自定义 Gemini Base URL,可以按下面方式配置:
export GOOGLE_GEMINI_BASE_URL="https://api.mixtoken.ai"
export GEMINI_API_KEY="$MIXTOKEN_API_KEY"
export GEMINI_API_KEY_AUTH_MECHANISM="bearer"
不同 Gemini SDK 对自定义 endpoint 的字段名可能不同,常见名称包括 base_url、baseURL、apiEndpoint 或环境变量。核心原则:Base URL 指向 https://api.mixtoken.ai,Key 使用你的 Mixtoken API Key。
六、图像生成(Seedream 5.0 Pro)
图像模型 dola-seedream-5-0-pro-260628 使用 /v1/images/generations 端点,鉴权为 Authorization: Bearer。
6.1 生成图像
端点:POST /v1/images/generations
curl https://api.mixtoken.ai/v1/images/generations \
-H "Authorization: Bearer $MIXTOKEN_API_KEY" \
-H "content-type: application/json" \
-d '{
"model": "dola-seedream-5-0-pro-260628",
"prompt": "一只在键盘上打字的橘猫,插画风格"
}'
返回(节选),data[0].b64_json 为 Base64 编码的图片:
{
"created": 1752345600,
"data": [
{"b64_json": "iVBORw0KGgo..."}
]
}
建议超时时间设置为300秒。生图模型响应时间较长,短于300秒可能调用超时失败
七、在 Agent 工具中接入
Claude Code 走 Anthropic 协议、Codex 走 OpenAI 协议、Gemini CLI 走 Gemini 协议。
只需用环境变量把 Base URL 和 API Key 指向 Mixtoken 即可,无需改动工具本身。
Claude Code(Anthropic 协议):
export ANTHROPIC_BASE_URL="https://api.mixtoken.ai"
export ANTHROPIC_AUTH_TOKEN="$MIXTOKEN_API_KEY"
OpenAI 协议的工具(Chat Completions / Responses API 均可):
export OPENAI_BASE_URL="https://api.mixtoken.ai/v1"
export OPENAI_API_KEY="$MIXTOKEN_API_KEY"
Gemini CLI:
export GOOGLE_GEMINI_BASE_URL="https://api.mixtoken.ai"
export GEMINI_API_KEY="$MIXTOKEN_API_KEY"
export GEMINI_API_KEY_AUTH_MECHANISM="bearer"
视频生成与 Seedance 官方兼容接口
文生视频:POST /v1/videos/text2video;图生视频:POST /v1/videos/image2video;任务查询:GET /v1/videos/{text2video|image2video}/{task_id};Seedance 素材提交:POST /v1/videos/assets。
文生视频参数
model、prompt 必填;可选字段包括 mode | generation_mode(std 或 pro)、duration、ratio | aspect_ratio、resolution、negative_prompt、cfg_scale、watermark 和 generate_audio。
Seedance 官方兼容任务提交使用 POST /api/v3/contents/generations/tasks,任务查询使用 GET /api/v3/contents/generations/tasks/{task_id}。
Seedance 官方任务参数与约束
-
model和多模态content数组必填;content 支持text、image_url、video_url、audio_url。 -
content[].role支持reference_image、reference_video、reference_audio、first_frame、last_frame。不要混用首尾帧角色与reference_*;last_frame必须同时包含first_frame。 - Seedance 2.0 时长支持
-1或 4–15 秒(默认 5);Seedance 2.5 支持-1或 4–30 秒(默认 -1)。Seedance 2.5 参考图/视频 auto、edit 任务必须为duration=-1。 -
ratio支持16:9、4:3、1:1、3:4、9:16、21:9、adaptive,不支持9:21;Seedance 默认adaptive。 - Seedance 2.0 分辨率支持
480p、720p、1080p、4k;Seedance 2.5 支持480p、720p。 -
omni_reference_task_type支持auto、reference、edit、extend。edit/extend 必须包含reference_video;Seedance 2.5 auto 参考任务需ratio=adaptive且duration=-1。 - 其他字段包括
generate_audio、watermark、output_format、return_last_frame、execution_expires_after(3600–259200)、priority(0–9)和callback_url。 - Seedance 2.0 最多 9 张参考图、3 段参考视频、3 段参考音频;Seedance 2.5 最多 30 张图、10 段视频、10 段音频。Seedance 2.5 不要传
frames、seed、camera_fixed、draft、service_tier。
Seedance 素材提交
POST /v1/videos/assets 必须传 assetType(Image、Video 或 Audio)和可访问的 HTTP(S) url,name 可选;返回 ID 可通过 assetId://{assetId} 引用。
图生视频与任务查询
POST /v1/videos/image2video 必须传 model、prompt 和 image | image_url,可选生成字段与文生视频一致。普通视频任务使用 GET /v1/videos/{text2video|image2video}/{task_id} 查询;Seedance 官方任务使用 GET /api/v3/contents/generations/tasks/{task_id} 查询。
文生视频模型
kling-v1、kling-v1-6、kling-v2-master、kling-v2-1-master、kling-v2-5-turbo、kling-v2-6、kling-v3
图生视频模型
kling-v1、kling-v1-5、kling-v1-6、kling-v2-master、kling-v2-1、kling-v2-1-master、kling-v2-5-turbo、kling-v2-6、kling-v3
Seedance 官方视频模型
dreamina-seedance-2-5-260628、doubao-seedance-2-0-260128、dreamina-seedance-2-0-260128
返回与计费
调用按最终用量记录和模型价格结算。视频生成先返回任务 ID,最终 URL 通过对应查询接口获取;流式文本返回 SSE 原始数据,并在结束后记录用量。对于流式中断或异步任务失败等情况,请以账户用量记录中的最终结算结果为准。
八、常见问题
出现401报错 / 鉴权失败?
先核对协议与 Header 的对应关系:Anthropic 用 x-api-key,OpenAI / Gemini 用 Authorization: Bearer,Gemini 原生端点也接受 x-goog-api-key。再确认 Key 复制完整、无多余空格且未在控制台删除;另外注意 base_url 写法:OpenAI SDK 需要带 /v1,Anthropic SDK 不带。
用 OpenAI 格式调 Claude 报错 / 变贵 / 效果差?
Claude 模型请务必使用 Anthropic 原生协议(/v1/messages)调用,Claude Code 等 Agent 工具必须按 Anthropic 协议配置。Claude 模型不能通过 OpenAI-compatible 端点调用,请使用 /v1/messages;Gemini 模型请使用原生 GenerateContent 端点。/v1/responses 仅支持 GPT 模型。
模型不可用?
请先用 GET /v1/models 拉取实时列表,核对模型 ID 拼写(全小写,留意 - 与 . 的区别)。同时确认端点与模型的对应关系。
超时 / 首字慢?
Opus / Fable 这类大模型在思考阶段首字延迟数秒到数十秒属正常,不代表请求失败。生产环境建议加 "stream": true 用流式提升体感,并把客户端读超时调大(服务端支持长达 600 秒的响应)。
Key 安全:
放入环境变量或密钥管理服务,切勿硬编码、提交到 Git,或打包进前端 / 客户端对外分发。若怀疑 Key 已泄露,立即在控制台删除该 Key 并新建替换。