421 API 文档
OpenAI 兼容 API · 一个接口接入多个模型
https://token.54421666.xyz/v1支持 OpenAI Chat Completions 的客户端和工具,可直接替换 API 地址使用。
🚀 你的第一个 API 调用
1. 获取 API Key
登录控制台 → 左侧「API 密钥」→ 创建密钥。密钥仅创建时显示一次,请妥善保存。
2. 发起请求
curl https://token.54421666.xyz/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk-你的密钥" \
-d '{
"model": "deepseek-v4-flash",
"messages": [{"role": "user", "content": "你好"}]
}'from openai import OpenAI
client = OpenAI(
base_url="https://token.54421666.xyz/v1",
api_key="sk-你的密钥"
)
resp = client.chat.completions.create(
model="deepseek-v4-flash",
messages=[{"role": "user", "content": "你好"}]
)
print(resp.choices[0].message.content)import OpenAI from 'openai';
const client = new OpenAI({
baseURL: "https://token.54421666.xyz/v1",
apiKey: "sk-你的密钥"
});
const resp = await client.chat.completions.create({
model: "deepseek-v4-flash",
messages: [{ role: "user", content: "你好" }]
});
console.log(resp.choices[0].message.content);🤖 模型与定价
GET/v1/models 返回当前密钥可用的全部模型。可用模型取决于所属分组。
已支持模型
GET /v1/models 返回结果为准。| 模型 | 系列 | 说明 |
|---|---|---|
deepseek-v4-flash | DeepSeek | 轻量版,速度快、性价比高 |
deepseek-v4-flash-0731 | DeepSeek | 轻量版(0731 版本) |
gpt-5.6-luna | OpenAI GPT | 综合能力强 |
gpt-5.6-terra | OpenAI GPT | 推理更强 |
qwen-image-2.0 | 通义图像 | 图像生成,¥0.05/张 |
wan2.7-image | Wan 图像 | 图像生成,¥0.05/张 |
模型价格(每 1M tokens)
以下为本网站各模型的计费价格,按输入、输出、缓存命中分别计费。综合成本按 95% 缓存命中率估算。
| 模型 | 输入(未命中) | 输入(缓存命中) | 输出 | 综合成本* |
|---|---|---|---|---|
deepseek-v4-flash | $0.14 | $0.0028 | $0.28 | $0.011 |
deepseek-v4-flash-0731 | $0.14 | $0.0028 | $0.28 | $0.011 |
gpt-5.6-luna | $0.020 | $0.002 | $0.120 | $0.003 |
gpt-5.6-terra | $0.200 | $0.020 | $1.200 | $0.031 |
* 综合成本 = 按 95% 缓存命中率 + 近 30 天输入输出比例估算,仅供参考,实际以用量记录为准。
🔢 Token 与用量
Token 是模型处理文本的最小单位。中文约 1 个汉字 ≈ 1-1.5 token,英文约 1 个单词 ≈ 1.3 token。
每次请求消耗的 token 分为三部分:
| 类型 | 含义 | 价格 |
|---|---|---|
| 输入 tokens | 你发送的 messages 内容 | 正常输入价 |
| 缓存命中 tokens | 与之前请求重复的输入前缀 | 通常低于普通输入价格,具体以模型价格和用量记录为准 |
| 输出 tokens | 模型生成的回复 | 正常输出价 |
⚠️ 错误码
| HTTP 状态码 | 含义 | 处理建议 |
|---|---|---|
401 | 密钥无效或已过期 | 检查 API Key 是否正确 |
403 | 无权限 / 模型未授权 | 确认分组是否包含该模型 |
404 | 模型不存在 | 检查模型名称拼写 |
429 | 请求过于频繁 / 额度不足 | 降低频率或充值 |
5xx | 服务端错误 | 稍后重试,持续请反馈 |
错误响应示例
请求失败时,接口返回统一格式的 JSON:
{
"error": {
"message": "Model is not allowed for this group",
"type": "invalid_request_error",
"code": "invalid_request_error"
}
}
message 是给开发者看的错误描述,type 是错误类别(invalid_request_error / authentication_error / rate_limit_error 等)。
💬 Chat Completions
POST/v1/chat/completions
与 OpenAI Chat Completions API 完全兼容,支持流式输出(stream: true)。
请求参数
| 参数 | 类型 | 说明 |
|---|---|---|
model | string | 必填。模型名称 |
messages | array | 必填。对话消息数组 |
temperature | number | 可选。采样温度,默认 1.0 |
max_tokens | integer | 可选。最大生成 token 数 |
stream | boolean | 可选。流式返回,默认 false |
reasoning_effort | string | 可选。思考模型:none / low / medium / high |
流式输出
curl https://token.54421666.xyz/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk-你的密钥" \
-d '{
"model": "deepseek-v4-flash",
"messages": [{"role": "user", "content": "讲个笑话"}],
"stream": true
}'
流式返回(SSE)格式
开启 stream: true 后,服务端按 Server-Sent Events 逐块返回:每块以 data: 开头,块之间以空行分隔,结束时发送 data: [DONE]:
data: {"id":"chatcmpl-8xQ","object":"chat.completion.chunk","model":"deepseek-v4-flash","choices":[{"index":0,"delta":{"role":"assistant","content":"从前有个"},"finish_reason":null}]}
data: {"id":"chatcmpl-8xQ","object":"chat.completion.chunk","model":"deepseek-v4-flash","choices":[{"index":0,"delta":{"content":"程序员"},"finish_reason":null}]}
data: {"id":"chatcmpl-8xQ","object":"chat.completion.chunk","model":"deepseek-v4-flash","choices":[{"index":0,"delta":{},"finish_reason":"stop"}]}
data: [DONE]
客户端按行读取以 data: 开头的行,解析每块的 choices[0].delta.content 拼接即可得到完整回复。
🎨 图像生成
POST/v1/images/generations
支持模型:qwen-image-2.0(¥0.05/张)、wan2.7-image(¥0.05/张)。图像生成仅对开放生图模型的分组可用,实际可用模型请以 GET /v1/models 返回结果为准。
curl https://token.54421666.xyz/v1/images/generations \
-H "Content-Type: application/json" \
-H "Authorization: Bearer sk-你的密钥" \
-d '{
"model": "qwen-image-2.0",
"prompt": "一只橘猫在雪地里看风景,戴红色围巾",
"size": "1024x1024"
}'
请求参数
| 参数 | 类型 | 说明 |
|---|---|---|
model | string | 必填。qwen-image-2.0 或 wan2.7-image |
prompt | string | 必填。图像描述,建议包含主体、场景、风格 |
size | string | 可选。默认 1024x1024,支持 1024x1024 / 1024x1792 / 1792x1024 / 2048x2048。不支持 4K |
n | integer | 可选。生成张数,默认 1,上限 4 |
response_format | string | 可选。url(默认,返回图片链接)或 b64_json(返回 Base64 数据) |
🔀 Agent 集成(Claude Code / Codex)
推荐使用 CC Switch 管理 Claude Code 和 Codex 的供应商配置。你的 421 接口是 DeepSeek 等模型的 OpenAI 兼容中转,因此在 CC Switch 中统一选择 OpenAI Chat Completions,不要选择 Anthropic Messages。
在 CC Switch 中添加 421
CC Switch 的“添加新供应商”页面中,按下表填写 API 模式、API 端点和模型即可。
协议和端点怎么填
| 应用 | API 模式 | API 端点 | 模型 |
|---|---|---|---|
| Claude Code | OpenAI Chat Completions | https://token.54421666.xyz/v1 | deepseek-v4-flash 或以 /v1/models 返回为准 |
| Codex | OpenAI Chat Completions | https://token.54421666.xyz/v1 | deepseek-v4-flash 或以 /v1/models 返回为准 |
/v1 的端点,并选择 OpenAI Chat Completions。模型必须填写当前 Key 实际开放的模型名;不同分组请以 /v1/models 返回结果为准。Claude Code 手动配置
如果使用 CC Switch,优先在 CC Switch 中配置。Claude Code 通过 CC Switch 使用 OpenAI Chat Completions 时,端点填写:
https://token.54421666.xyz/v1
Codex 手动配置
编辑 ~/.codex/config.toml。Codex 使用 OpenAI 兼容模式,模型名可通过当前 Key 的 /v1/models 确认:
model = "gpt-5.6-luna"
model_provider = "sub2"
[model_providers.sub2]
name = "421 API"
base_url = "https://token.54421666.xyz/v1"
api_key_env_var = "OPENAI_API_KEY"
常见问题
- 404:通常是 Base URL 多写或少写了
/v1。 - 403:当前 Key 所属分组没有开放该模型。
- 模型不存在:先调用
GET /v1/models,不要直接照抄别的供应商模型名。 - 请求失败:先确认 Provider 已启用、API 模式和端点匹配,再检查 API Key 是否有效。
🔑 认证方式
所有请求都需要在 HTTP Header 中携带 API Key:
Authorization: Bearer sk-你的密钥