快速上手

使用你的 API 密钥

Token Relay 提供两个上游兼容端点。拿到密钥后,你可以继续使用现有的 OpenAI 或 Anthropic 客户端库——只需改动 base_url 与 API 密钥。

1. 获取密钥

  1. 登录开发者控制台
  2. 打开API 密钥
  3. 点击创建 API 密钥。给它取一个名称(类似 local-devprod-app),并可选地设置一个以美元(USD)计的每月消费上限。
  4. 一个以 tsk_ 开头的 token 会出现在展示横幅中,直接点复制拿走。丢了也不要紧:在密钥列表点显示就能再看到它;加密留存启用之前建的老密钥则只能轮换。
为什么是一次性可见? 后端只存储该 token 的 SHA-256 哈希。即使是拥有完整数据库访问权限的管理员也无法还原原文——只能吊销并重新签发。

2. 端点

中转提供两种协议。选择你的客户端已经支持的那一种。

协议Base URL认证头
OpenAI Chat Completionshttps://chinzy.com/v1Authorization: Bearer tsk_...
Anthropic Messages(流式)https://chinzy.com/anthropic/v1x-api-key: tsk_...

3. 选择模型

把我们任意公开模型别名作为 model 字段传入。完整列表见模型。几个常见的:

  • gpt-5.2gpt-5gpt-5-minigpt-5.4-mini — OpenAI 系列
  • claude-sonnet-4.5claude-haiku-4.5claude-opus-4.5 — Anthropic 系列
  • deepseek-v3.2kimi-k2-thinkingglm-4.6 — 开放权重系列

你始终传平台别名,而不是上游特定的 id。在幕后,中转会挑选一个健康的上游并把调用路由过去,并具备自动故障转移。

4. 示例

curl

curl https://chinzy.com/v1/chat/completions \
  -H "Authorization: Bearer $TOKEN_RELAY_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-5.2",
    "messages": [
      {"role": "user", "content": "Hi in one sentence"}
    ]
  }'

Python(OpenAI SDK)

from openai import OpenAI

client = OpenAI(
    api_key=os.environ["TOKEN_RELAY_KEY"],
    base_url="https://chinzy.com/v1",
)

resp = client.chat.completions.create(
    model="gpt-5.2",
    messages=[{"role": "user", "content": "Hi in one sentence"}],
)
print(resp.choices[0].message.content)

Node.js(OpenAI SDK)

import OpenAI from 'openai';

const client = new OpenAI({
  apiKey: process.env.TOKEN_RELAY_KEY,
  baseURL: 'https://chinzy.com/v1',
});

const resp = await client.chat.completions.create({
  model: 'gpt-5.2',
  messages: [{ role: 'user', content: 'Hi in one sentence' }],
});
console.log(resp.choices[0].message.content);

Anthropic SDK(流式)

import Anthropic from '@anthropic-ai/sdk';

const client = new Anthropic({
  apiKey: process.env.TOKEN_RELAY_KEY,
  baseURL: 'https://chinzy.com/anthropic',
});

const stream = await client.messages.stream({
  model: 'claude-sonnet-4.5',
  max_tokens: 512,
  messages: [{ role: 'user', content: 'Hi in one sentence' }],
});

for await (const event of stream) {
  if (event.type === 'content_block_delta' && event.delta.type === 'text_delta') {
    process.stdout.write(event.delta.text);
  }
}

5. 常见错误

状态码含义解决
401Token 缺失、格式错误或已停用。确认 Authorization 头的值与展示横幅中的 token 一致。检查API 密钥——已停用的密钥会显示红色徽标。
402 / 403 "balance too low"钱包没有余额来结算这次请求。账单充值。
403 "monthly spend cap reached"该特定密钥的每月配额已用尽。等待下一个自然月、在API 密钥提高上限,或使用另一个密钥。
429你越过了按 IP 的速率限制(中转为 300 次/分钟)。退避后重试;拉大请求之间的间隔。
503服务该别名的每个上游都宕机了。罕见——中转已对间歇性故障自动重试。试试同系列别名(例如用 gpt-5-mini 代替 gpt-5.2)。若持续,检查你的状态页。

6. 小贴士

  • 每个应用一个密钥。轮换成本低;可在不破坏其他客户端的情况下停用泄露的凭证。
  • 设置每月上限。当每个密钥都有边界时,失控的开发循环更容易恢复。
  • /console/usage关注用量。该页展示按模型 + 按密钥的消费、带状态码的近期调用,以及用于记账的 CSV 导出。
  • 两种协议都支持流式。只需在 OpenAI SDK 中传 stream: true,或在 Anthropic 中使用 messages.stream()

在本文档中发现遗漏或错误?提交一个 issue 或联系管理员。