创建
签发带有支出上限的密钥
跟踪
查看每个密钥的支出
更改
调高上限或延长过期时间
撤销
立即停用密钥
工作原理
Admin 密钥你的控制密钥创建、更改和撤销密钥读取使用情况和账单仅保存在你的服务器上
Inferencecust:acme$50 / 月仅限私有模型
Inferencecust:globex$5 / 月仅限来自 11.22.33.0/24
Inferencestaging$10 / 天6 月 30 日过期
在仪表板中创建你的第一个 Admin 密钥:按照 生成 API 密钥 操作,并选择 Admin 作为密钥类型。请将其保存在服务器端的密钥存储中,切勿放在客户端代码里。
VENICE_ADMIN_KEY 读取 Admin 密钥:
创建密钥
以下示例为一位客户创建一个 Inference 密钥,上限为每月 $50,并于 2027 年 6 月 30 日过期:Response
密钥设置
你可以在创建密钥时设置以下字段,或稍后通过PATCH /api_keys 进行更改。请求体采用严格校验,未知字段会返回 400。
你每分钟最多可以创建 20 个密钥,最多可保留 500 个活跃密钥。如需更多,请联系支持团队。
跟踪使用情况
单个密钥
Response (trimmed)
currentPeriodUsage 仅出现在设置了 USD 或 DIEM 上限的密钥上,使用量为保留四位小数的字符串。响应返回的是 consumptionLimits(复数),而请求发送的是 consumptionLimit(单数)。
每个密钥随时间的支出
GET /billing/usage-analytics 在 byKey 中返回每个密钥的总计,在 byKeyDaily 中返回每天一行的数据,可直接用于绘制图表。传入 lookback(默认 7d,最多 90d),或传入跨度不超过 90 天的 startDate 和 endDate。结果会缓存 10 分钟。
cURL
Response (trimmed)
每个密钥的每笔费用
GET /billing/usage-history 列出每一笔费用,每个条目都带有其计费的 apiKeyId。可用它来核对支出或向你自己的客户计费。条目按从旧到新的顺序返回。将 nextCursor 作为 cursor 单独传回,直到其为 null。发送 Accept: text/csv 可改为获取 CSV 格式。
amount 为负数,因此循环中将其减去,以得到每个密钥和货币的正数总计。没有 apiKeyId 的条目来自 Venice 网页应用,或是诸如购买积分之类的账户条目。
某个密钥当前是否可以消费
GET /api_keys/rate_limits 适用于任何密钥,并报告调用它的那个密钥的情况。accessPermitted 表示该密钥当前是否可以消费,balances 显示其剩余可消费的额度。
cURL
GET /api_keys/rate_limits/log,可返回你最近 50 次触发速率限制的记录,每条记录都带有其 apiKeyId 和 modelId。
更改限额和设置
发送密钥的id,以及仅需更改的字段。其他所有设置保持不变。以下示例将上限调高到每月 $100:
新的
limitPeriod 会立即生效,因此切换到 LIFETIME 会将该密钥过去的所有支出计入上限。apiKeyType 无法更改;请改为创建一个新密钥。
撤销或轮换密钥
{ "success": true }。撤销会立即生效:该密钥的下一个请求将收到 401 Authentication failed,并且该密钥将从 GET /api_keys 中消失。其过去的费用仍保留在使用历史中。
要在不停机的情况下轮换密钥:
1
创建替换密钥
使用相同的设置创建一个新密钥,并保存其机密值。
2
部署新密钥
将你的应用切换为使用新的机密值。
3
撤销旧密钥
当
GET /api_keys 中旧密钥的 lastUsedAt 不再变化时,将其删除。调用方可能遇到的错误
完整列表请参见 错误代码。
最佳实践
- 将 Admin 密钥保存在你的服务器上,只分发 Inference 密钥。
- 为每个应用、环境和客户分配独立的密钥,以便单独跟踪和撤销每个密钥。
- 在
description中填写你自己的标识符。使用分析会用它来标记密钥。 - 为你提供给他人的每个密钥设置上限和过期时间,并使用
ipAllowlist将服务器到服务器的密钥锁定到你的 IP。
API 参考
创建 API 密钥
创建时接受的所有字段。
更新 API 密钥
更改限额、过期时间、隐私设置和 IP。
列出 API 密钥
所有活跃密钥及其使用情况。
删除 API 密钥
撤销密钥。
使用分析
按密钥、模型和日期统计的支出。
使用历史
每笔费用及其 API 密钥。