账户
获取用量洞察
一次返回 /insights 页面需要的所有数据:三种指标(token/花费/请求数)的趋势、各指标前三名模型、缓存命中统计、token 用量分解、年度热力图(含连续天数)、余额与免费模型用量、筛选面板选项。依 (用户, period, heatmap_metric, 筛选条件) 组合缓存 5 分钟。
GET
/api/v1/insights验证
Authorization必填string · header
在 Authorization 标头以 Bearer token 传入 API 密钥。
查询参数
periodstring
驱动整页的统计区间,默认 7d。无效值返回 400。
7d30dytdallExample:
"30d"heatmap_metricstring
年度热力图显示的指标(热力图固定为整年,不受 period 影响),默认 spend。无效值返回 400。
spendtokensrequestsExample:
"tokens"modelstring
页面全局筛选——只计入此模型的用量。省略时不筛选。
api_key_idstring
页面全局筛选——只计入此 API 密钥的用量。省略时不筛选。
appstring
页面全局筛选——只计入此应用程序名称(x-title / HTTP-Referer)的用量。省略时不筛选。
GET /api/v1/insights
1
2
curl "https://bazaarlink.ai/api/v1/insights?period=30d&heatmap_metric=tokens" \
-H "Authorization: Bearer $BAZAARLINK_API_KEY"响应示例
成功。trend/topModels/heatmap 固定返回三个指标的完整数据(tokens、spend、requests),前端切换不必重新请求;caching 与 breakdown 依 period 分桶(≤120 天日粒度、≤730 周粒度,否则月粒度)。以下为节选范例,实际 buckets/heatmap.days 数组会依区间长度含多笔。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
{
"period": "30d",
"bucketUnit": "day",
"trend": {
"tokens": {
"total": 152000,
"prevTotal": 98000,
"changePct": 55.1,
"buckets": [
{
"date": "2026-07-01",
"segs": [
{
"model": "openai/gpt-4.1",
"value": 5200
}
]
}
]
},
"spend": {
"total": 4.82,
"prevTotal": 3.1,
"changePct": 55.5,
"buckets": [
{
"date": "2026-07-01",
"segs": [
{
"model": "openai/gpt-4.1",
"value": 0.16
}
]
}
]
},
"requests": {
"total": 340,
"prevTotal": 210,
"changePct": 61.9,
"buckets": [
{
"date": "2026-07-01",
"segs": [
{
"model": "openai/gpt-4.1",
"value": 12
}
]
}
]
}
},
"topModels": {
"tokens": [
{
"model": "openai/gpt-4.1",
"provider": "openai",
"value": 152000,
"unit": "tokens"
}
],
"spend": [
{
"model": "openai/gpt-4.1",
"provider": "openai",
"value": 4.82,
"unit": "spend"
}
],
"requests": [
{
"model": "openai/gpt-4.1",
"provider": "openai",
"value": 340,
"unit": "requests"
}
]
},
"caching": {
"buckets": [
{
"date": "2026-07-01",
"hit": 3200,
"write": 800
}
],
"totalHit": 96000,
"totalWrite": 24000
},
"breakdown": {
"buckets": [
{
"date": "2026-07-01",
"prompt": 4000,
"completion": 1200,
"reasoning": 0,
"cached": 3200
}
],
"totals": {
"prompt": 120000,
"completion": 32000,
"reasoning": 0,
"cached": 96000
}
},
"heatmap": {
"spend": {
"days": [
{
"date": "2026-01-01",
"value": 0.02
}
],
"streak": {
"current": 5,
"longest": 21
},
"avgDay": 0.16,
"avgWeek": 1.12,
"total": 58.4
},
"tokens": {
"days": [
{
"date": "2026-01-01",
"value": 640
}
],
"streak": {
"current": 5,
"longest": 21
},
"avgDay": 5066,
"avgWeek": 35462,
"total": 1850000
},
"requests": {
"days": [
{
"date": "2026-01-01",
"value": 4
}
],
"streak": {
"current": 5,
"longest": 21
},
"avgDay": 11.3,
"avgWeek": 79,
"total": 4130
}
},
"credit": {
"today": 0.16,
"thisWeek": 1.12,
"thisMonth": 4.82
},
"freeModel": {
"today": 0,
"thisWeek": 0,
"thisMonth": 0
},
"facets": {
"models": [
"openai/gpt-4.1"
],
"apiKeys": [
{
"id": "key_abc123",
"name": "default"
}
],
"apps": [
"my-app"
]
}
}