JuCode 文档
ApiAccount

用量时间序列

按小时或天分桶返回你自己的调用量、token 数与花费,并附一份 `totals` 汇总。 ### 窗口会被对齐 传入的 `start` / `end` 会被向下对齐到分桶边界。这不是为了好看:小时粒度的 快速路径只回答正好落在整点的窗口,响应缓存也按窗口做键。一个每次轮询都重新 计算的 `now - 24h` 会同时错过这两者,把轮询客户端变成对调用日志的反复全表扫描。 因此**同一个 TTL 内的多次轮询会拿到同一个窗口**,而不是每次都往前挪几秒。 ### 空桶不补零 没有调用的时间段不会出现在 `buckets` 里。需要连续坐标轴的话在客户端补。 查询窗口最长 92 天,超出部分从起点截断(保留 `end`)。

GET
/v1/open/usage

按小时或天分桶返回你自己的调用量、token 数与花费,并附一份 totals 汇总。

窗口会被对齐

传入的 start / end 会被向下对齐到分桶边界。这不是为了好看:小时粒度的 快速路径只回答正好落在整点的窗口,响应缓存也按窗口做键。一个每次轮询都重新 计算的 now - 24h 会同时错过这两者,把轮询客户端变成对调用日志的反复全表扫描。

因此同一个 TTL 内的多次轮询会拿到同一个窗口,而不是每次都往前挪几秒。

空桶不补零

没有调用的时间段不会出现在 buckets 里。需要连续坐标轴的话在客户端补。

查询窗口最长 92 天,超出部分从起点截断(保留 end)。

Authorization

AuthorizationBearer <token>

Authorization: Bearer sk-juc-...

前缀必须是恰好 Bearer (首字母大写 + 单个空格)。bearerBEARER 或用制表符分隔都会被判为无效。

除 API Key 外,也接受 OAuth 设备访问令牌(仅限 oauth_access 类型的 JWT; 普通网页会话令牌会被拒绝)。

In: header

Query Parameters

start?string

窗口起点。接受 RFC 3339 时间串或裸的 Unix 秒数。省略时为 end 前 7 天。

无法解析的值会回落到默认窗口而不是报错——这是只读统计接口,把日期敲错的 调用方拿到「这是最近一周」比拿到一个还得去翻文档的 400 更有用。

end?string

窗口终点(不含)。接受 RFC 3339 或 Unix 秒数,省略时为当前时间。

bucket?string

分桶粒度。非法值回落到 day

Default"day"

Value in

  • "hour"
  • "day"
model?string

只统计该模型名的调用,精确匹配。

status?string

只统计该状态的调用。

Value in

  • "ok"
  • "upstream_error"
  • "quota_exceeded"
  • "banned"
  • "internal_error"
  • "unauthorized"

Response Body

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/v1/open/usage"
{  "start": "2026-08-07T00:00:00Z",  "end": "2026-08-14T00:00:00Z",  "bucket": "day",  "buckets": [    {      "time": "2026-08-13T00:00:00Z",      "requests": 412,      "tokens_in": 1288340,      "tokens_out": 96210,      "cached_tokens_in": 902100,      "cache_creation_tokens_in": 41200,      "cost_final_sum": "6.21430000",      "errors": 3    }  ],  "totals": {    "requests": 412,    "errors": 3,    "tokens_in": 1288340,    "tokens_out": 96210,    "cached_tokens_in": 902100,    "cache_creation_tokens_in": 41200,    "cost": "6.21430000",    "currency": "CNY"  }}