接入文档
GameKey 提供 OpenAI 兼容接口。已经在用 OpenAI SDK 的项目,改两行就能切过来。
更新于 2026-09-07
1. 基本信息
| 接口地址 | https://gamekey.cn/v1 |
|---|---|
| 协议 | OpenAI 兼容(/v1/chat/completions、/v1/models) |
| 鉴权 | 请求头 Authorization: Bearer <your-api-key> |
| 流式 | 支持,"stream": true,标准 SSE |
| 速率限制 | 每个 Key 每秒 20 次,允许 40 次瞬时突发 |
| 可用模型 | 见模型与价格,或调用 GET /v1/models |
2. 三种语言的最小示例
curl
curl https://gamekey.cn/v1/chat/completions \
-H "Authorization: Bearer $GAMEKEY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "deepseek-v4-flash",
"messages": [{"role": "user", "content": "用一句话介绍你自己"}]
}'
Python(官方 openai 库)
from openai import OpenAI
client = OpenAI(
api_key="your-api-key",
base_url="https://gamekey.cn/v1", # 只改这一行
)
resp = client.chat.completions.create(
model="deepseek-v4-flash",
messages=[{"role": "user", "content": "用一句话介绍你自己"}],
)
print(resp.choices[0].message.content)
Node.js
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.GAMEKEY_API_KEY,
baseURL: "https://gamekey.cn/v1",
});
const resp = await client.chat.completions.create({
model: "deepseek-v4-flash",
messages: [{ role: "user", content: "用一句话介绍你自己" }],
});
console.log(resp.choices[0].message.content);
流式输出
stream = client.chat.completions.create(
model="deepseek-v4-flash",
messages=[{"role": "user", "content": "写一首五言绝句"}],
stream=True,
)
for chunk in stream:
print(chunk.choices[0].delta.content or "", end="", flush=True)
3. 错误码
请按 HTTP 状态码 + 响应体里的 error.code 判断,不要匹配 message 里的文字——
同一个错误的文案可能是中文也可能是英文,且会变。
| 状态码 | error.code | 含义 | 该怎么办 |
|---|---|---|---|
| 401 | — | Key 无效、已删除或已过期 | 检查 Key,不要重试 |
| 403 | insufficient_user_quota | 余额不足 | 充值,不要重试 |
| 403 | 空 / 其他 | 该 Key 无权调用这个模型 | 检查模型名与 Key 的模型限制 |
| 429 | RATE_LIMITED | 触发速率限制(每 Key 20 次/秒) | 指数退避后重试 |
| 500 | sensitive_words_detected | 请求内容被输入侧敏感词拦截 | 不要重试,也不要原样重发 |
| 502 | PROVIDER_UNAVAILABLE | 上游模型服务异常或参数被上游拒绝 | 可重试;持续失败请联系我们 |
值得重试的只有 429 和 502。 401 / 403 / 500 重试只会浪费配额——
这三类都是请求本身的问题,重发同样的请求结果不会变。
4. 几件容易踩的事
- 新注册账号余额为 0,没有赠送额度,第一次调用前需要先充值。
max_tokens由你自己控制。平台不会截断你的请求,也没有单次上限; 写多大就按多大送给上游,费用按实际生成量计算。- 输入侧有敏感词过滤(返回 500
sensitive_words_detected)。 输出侧不做二次审查,模型自身的拒答会以正常 200 返回。 - 计费按实际 token;被拒绝的请求(401 / 403 / 429)不产生费用。 每一次调用的 token 数与扣费在控制台可逐条查。
5. 拿 API Key
用手机号验证码注册(目前不开放邮箱注册),登录后在控制台创建 Key。 创建时可以给单个 Key 设定额度上限、可调用的模型范围和 IP 白名单—— 建议每个项目单独建 Key,泄漏时影响可控。