Lovely Router文档
获取密钥
快速入门

身份验证

每个请求都使用 Lovely Router API 密钥进行身份验证,放在你的 SDK 默认使用的请求头中即可。

所有使用你余额的请求都需要 API 密钥。一个密钥通用于整个 API:Claude、GPT 和 Gemini 模型、数据工具、浏览器智能体以及 MCP 服务器。

获取 API 密钥#

在控制台的 API 密钥页面创建密钥。密钥的格式是 lr- 加 40 个字母和数字,只在创建时显示一次。Lovely Router 只保存密钥的哈希,因此丢失的密钥无法找回:请吊销它并创建一个新密钥。

把密钥保存在环境变量中。本文档中的所有示例都从 $LOVELY_API_KEY 读取密钥。

Shell
export LOVELY_API_KEY="lr-..."

如需限制密钥的消费额或可调用的范围,请参阅 API 密钥。

发送密钥#

厂商 API 接受密钥的位置,Lovely Router 都接受。四种方式在每个端点上都可用,所以你的 SDK 或工具默认怎么发送,就保持原样即可。

位置示例使用方
Authorization 请求头Authorization: Bearer lr-...OpenAI SDK、Claude Code(ANTHROPIC_AUTH_TOKEN)、数据工具、浏览器智能体、MCP 客户端
x-api-key 请求头x-api-key: lr-...Anthropic SDK
x-goog-api-key 请求头x-goog-api-key: lr-...Google Gen AI SDK、Gemini CLI
key 查询参数?key=lr-...Gemini REST 示例

如果一个请求同时携带多个密钥,按以下顺序取第一个匹配项:Authorization: Bearer、x-api-key、x-goog-api-key、?key=。

优先使用请求头

放在查询字符串中的密钥会出现在代理日志、Shell 历史和浏览器历史中。只有无法发送请求头的工具才使用 ?key=。

检查密钥是否可用#

计算 token 数需要有效的密钥,但不产生费用,因此很适合用来快速检查。返回 200 表示密钥有效且有权使用该模型。

curl https://lovelyrouter.com/v1/messages/count_tokens \
  -H "x-api-key: $LOVELY_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{
    "model": "claude-sonnet-5.5",
    "messages": [{"role": "user", "content": "ping"}]
  }'

无需密钥的端点#

目录类端点是公开的,你可以在注册前浏览模型和工具。发送给这些端点的密钥会被忽略,但规划器除外:它会使用密钥来提供更高的限额。

端点返回内容
GET /v1/models所有可用模型,含上下文长度、价格和渠道分组
GET /v1beta/models同一列表的 Gemini 格式
GET /v1/tools数据工具目录
GET /v1/tools/{id}单个工具的输入结构、示例输入和价格
POST /v1/tools/discover与关键词查询匹配的工具
POST /v1/tools/suggest针对某个任务的分步工具方案。不带密钥时,所有匿名调用方共享每分钟 100 次请求;带密钥时,该密钥独享每分钟 100 次。

其他所有操作都需要密钥:模型请求(包括计算 token 数)、工具运行、所有 /v1/browser 端点,以及通过 MCP 运行工具。

身份验证错误#

密钥缺失、未知、已吊销或已过期时返回 401。响应体采用你所调用 API 的格式。

原因消息
模型请求未携带密钥Missing API key
密钥未知或已吊销,或账户已被停用Invalid or revoked API key
密钥已过有效期This API key has expired
在 /v1/tools 或 /v1/browser 上未携带密钥,或密钥未知、已吊销Missing, invalid or revoked API key
{"type": "error", "error": {"type": "authentication_error", "message": "Invalid or revoked API key"}}

有效的密钥也可能因权限范围而被拒绝:请求白名单之外的模型返回 403,达到消费上限返回 402,触及速率限制返回 429。请参阅触及限制时会发生什么和错误。

保护好密钥#

  • 只在服务端使用密钥。 不要把密钥放进网页、移动应用或任何交付给用户的东西里。API 接受来自任意来源的请求,所以前端代码中的密钥,任何打开它的人都能复制并消费。
  • 从环境变量或密钥管理服务中加载密钥。 不要把它们提交到代码仓库。把 .env 文件加入 .gitignore。
  • 每个应用、每个环境各用一个密钥。 这样泄露的预发布环境密钥就碰不到生产环境,日志也能显示每个请求由哪个密钥发出。
  • 限制每个密钥的权限。 为智能体、CI 任务或他人使用的密钥设置消费上限、模型白名单和过期日期。请参阅 API 密钥。
  • 定期轮换密钥,有权限的人离开时要立即轮换。请参阅轮换密钥。

密钥泄露时

立即在 API 密钥页面吊销它。吊销从下一个请求起生效。然后创建替代密钥,并在日志中检查是否有你不认识的流量。