Docs

认证

安全使用 AnyPath API Key。

本页目录
  1. API Key
  2. Key 生命周期
  3. 使用 API Key
  4. Key 控制项
  5. 路由策略
  6. RPM 与 TPM 限额
  7. 使用上限
  8. Key 前缀
  9. Anthropic 兼容性
  10. 错误响应

API Key

每个网关请求都需要 AnyPath API Key。请在 控制台 → API 接入 创建 Key。

对于 OpenAI 兼容端点,按以下方式发送:

Authorization: Bearer sk-your-api-key

对于 Anthropic 兼容的 /v1/messages 请求,也可以使用:

x-api-key: sk-your-api-key

对于 Gemini /v1beta 请求,Google 风格的客户端也可以使用 x-goog-api-key 或 ?key=... 传递同一个 AnyPath Key。

Key 生命周期

  1. 在 API 接入 创建 Key。
  2. 立即复制完整密钥——只显示这一次。
  3. 放入服务端的密钥管理系统或环境变量。
  4. 不再使用时,在控制台中轮换或吊销。
  • 不要在客户端代码中暴露 API Key
  • 不要把 API Key 提交到代码仓库
  • 不要把 API Key 写入日志或截图
  • 定期轮换 Key
  • 删除不再使用的 Key

使用 API Key

curl https://api.anypath.dev/v1/responses \
  -H "Authorization: Bearer $ANYPATH_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "gpt-4o-mini",
    "input": "Hello!"
  }'
import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ.get("ANYPATH_API_KEY"),
    base_url="https://api.anypath.dev/v1"
)
import OpenAI from 'openai';

const client = new OpenAI({
  apiKey: process.env.ANYPATH_API_KEY,
  baseURL: 'https://api.anypath.dev/v1'
});

Key 控制项

路由策略

每个 API Key 使用智能路由或指定供应商。指定供应商是供应商边界,不等于锁定某一个具体 key。使用同一个 Key 调用 GET /v1/models 即可看到当前可用模型。

RPM 与 TPM 限额

账号 Tier 通过用户策略设置账号级 RPM / TPM。API Key 限额只能针对某个工作负载进一步收紧账号策略。最终有效值还会受所选模型、可用凭证路由和上游供应商 key 影响。请通过控制台、GET /v1/models 和限流响应头查看当前有效限额。

使用上限

可以为每个 API Key 设置使用上限:

设置说明
无限制Key 可以使用可用的共享资源
固定上限Key 消费达到指定金额后停止使用

Key 前缀

所有 AnyPath API Key 都以 sk- 开头。

Anthropic 兼容性

对于 /v1/messages 端点,Anthropic 风格的请求头可以正常使用:

curl https://api.anypath.dev/v1/messages \
  -H "x-api-key: sk-your-api-key" \
  -H "anthropic-version: 2023-06-01" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-4-6",
    "max_tokens": 1024,
    "messages": [{"role": "user", "content": "Hello!"}]
  }'

对于支持的端点,如 /v1/responses、/v1/chat/completions、/v1/messages、/v1/images/generations 和 Gemini /v1beta,请使用 Authorization: Bearer ...。

错误响应

状态码Code说明
401auth_required缺少认证头
401auth_invalidAPI Key 无效
401auth_expiredAPI Key 已过期
403spending_limit_exceededAPI Key 已达到使用上限

运行时 JSON 中的 type 始终与 code 相同。示例:

{
  "error": {
    "message": "Invalid API key.",
    "type": "auth_invalid",
    "code": "auth_invalid"
  }
}