按模型汇总用量
同一个时间窗口,按模型而不是按时间聚合。回答的是「钱花在哪个模型上了」。 窗口参数与对齐规则同 `/v1/open/usage`。响应里没有分桶,但 `bucket` 仍然有意义 ——它决定窗口按小时还是按天对齐,因而会影响实际统计的区间。查几小时的数据时 传 `hour`,否则窗口会被拉宽到整天。
同一个时间窗口,按模型而不是按时间聚合。回答的是「钱花在哪个模型上了」。
窗口参数与对齐规则同 /v1/open/usage。响应里没有分桶,但 bucket 仍然有意义
——它决定窗口按小时还是按天对齐,因而会影响实际统计的区间。查几小时的数据时
传 hour,否则窗口会被拉宽到整天。
Authorization: Bearer sk-juc-...
前缀必须是恰好 Bearer (首字母大写 + 单个空格)。bearer、BEARER
或用制表符分隔都会被判为无效。
除 API Key 外,也接受 OAuth 设备访问令牌(仅限 oauth_access 类型的 JWT;
普通网页会话令牌会被拒绝)。
In: header
Query Parameters
窗口起点。接受 RFC 3339 时间串或裸的 Unix 秒数。省略时为 end 前 7 天。
无法解析的值会回落到默认窗口而不是报错——这是只读统计接口,把日期敲错的 调用方拿到「这是最近一周」比拿到一个还得去翻文档的 400 更有用。
窗口终点(不含)。接受 RFC 3339 或 Unix 秒数,省略时为当前时间。
分桶粒度。非法值回落到 day。
"day"Value in
- "hour"
- "day"
Response Body
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/v1/open/usage/models"{ "start": "2026-08-07T00:00:00Z", "end": "2026-08-14T00:00:00Z", "currency": "CNY", "models": [ { "key": "gpt-5.4", "requests": 300, "errors": 2, "tokens_in": 1100000, "tokens_out": 80000, "cost_final_sum": "5.10000000" }, { "key": "claude-sonnet-5", "requests": 112, "errors": 1, "tokens_in": 188340, "tokens_out": 16210, "cost_final_sum": "1.11430000" } ]}用量时间序列 GET
按小时或天分桶返回你自己的调用量、token 数与花费,并附一份 `totals` 汇总。 ### 窗口会被对齐 传入的 `start` / `end` 会被向下对齐到分桶边界。这不是为了好看:小时粒度的 快速路径只回答正好落在整点的窗口,响应缓存也按窗口做键。一个每次轮询都重新 计算的 `now - 24h` 会同时错过这两者,把轮询客户端变成对调用日志的反复全表扫描。 因此**同一个 TTL 内的多次轮询会拿到同一个窗口**,而不是每次都往前挪几秒。 ### 空桶不补零 没有调用的时间段不会出现在 `buckets` 里。需要连续坐标轴的话在客户端补。 查询窗口最长 92 天,超出部分从起点截断(保留 `end`)。
列出可用模型分组 GET
返回本次凭证实际能路由到的模型分组,以及每个分组作用在基础价格上的倍率—— 最终价格是 `模型单价 × rate_multiplier`。 返回的是**交集**:账户本身可访问的分组,再与 Key 的 `allowed_groups` 取交。 因为这才是用这个凭证发请求时真正会被路由到的范围。 `billing_source` 说明该分组从哪里扣费:`plan_only` 只扣套餐配额, `balance_only` 只扣余额。