查询原始用量与 AI 聚合
POST/api/v1/usage/analytics
按已接受消费/确认计数,包含零费用调用;Token 和提供商成本按有效上报值汇总,区分缺失和无效上报。预扣与退款不增加事件数。
SDK 0.0.1更新于
发起请求
按已接受消费/确认计数,包含零费用调用;Token 和提供商成本按有效上报值汇总,区分缺失和无效上报。预扣与退款不增加事件数。
- 调用凭据
- 仅服务端 API Key。由可信后端调用。
- 所需权限
credits:read
base URL 和 App ID 来自 SDK 接入页。示例使用占位值,不会执行请求。服务端 Key 不可放入浏览器。
1curl -X POST "$GROOVE_BASE_URL/api/v1/usage/analytics" \2 -H "Authorization: Bearer $GROOVE_SECRET_KEY" \3 -H "X-Groove-Project: $GROOVE_PROJECT_ID" \4 -H "X-Groove-Environment: sandbox" \5 -H "Content-Type: application/json" \6 -d '{7 "customerId": null,8 "query": {9 "range": {10 "kind": "last_days",11 "days": 712 },13 "timezone": "UTC",14 "filterBy": [],15 "interval": "day",16 "entitlementId": null,17 "groupBy": "customer",18 "entityId": null,19 "topN": null,20 "after": null,21 "limit": 5022 }23}'
响应选项卡列出字段类型,不是响应示例;实际值由客户状态决定。
请求参数
JSON 请求体
customerIduuid | null必填Indiana 客户 ID。服务端从已验证身份关联;客户 Token 调用时省略并使用 Token 绑定的客户。
queryobject必填本次操作的 query 值,类型和约束见字段标注。
展开子字段
rangeobject | object | object必填本次操作的 range 值,类型和约束见字段标注。
展开子字段
kind"absolute" | "last_days" | "billing_cycles"必填本次操作的 kind 值,类型和约束见字段标注。
fromdate-time可选本次操作的 from 值,类型和约束见字段标注。
todate-time可选本次操作的 to 值,类型和约束见字段标注。
days1 | 7 | 30 | 90可选本次操作的 days 值,类型和约束见字段标注。
membershipIduuid可选本次操作的 membershipId 值,类型和约束见字段标注。
countinteger可选本次操作的 count 值,类型和约束见字段标注。
min: 1 · max: 12
includeCurrentboolean可选本次操作的 includeCurrent 值,类型和约束见字段标注。
timezonestring必填本次操作的 timezone 值,类型和约束见字段标注。
maxLength: 100
filterByarray必填本次操作的 filterBy 值,类型和约束见字段标注。
maxItems: 5
展开子字段
keystring必填本次操作的 key 值,类型和约束见字段标注。
pattern: ^[a-z][a-z0-9_]{0,63}$
valuesarray必填本次操作的 values 值,类型和约束见字段标注。
minItems: 1 · maxItems: 20
intervalenum必填本次操作的 interval 值,类型和约束见字段标注。
查看允许值
"hour""day""week""month"
entitlementIduuid | null必填本次操作的 entitlementId 值,类型和约束见字段标注。
entityIduuid | null必填当前客户范围内的实体 ID;只用于已配置的实体和许可功能。
topNinteger | null必填本次操作的 topN 值,类型和约束见字段标注。
groupByenum | string必填本次操作的 groupBy 值,类型和约束见字段标注。
afterobject | null必填本次操作的 after 值,类型和约束见字段标注。
展开子字段
bucketdate-time必填本次操作的 bucket 值,类型和约束见字段标注。
groupstring必填本次操作的 group 值,类型和约束见字段标注。
maxLength: 240
isOtherboolean必填本次操作的 isOther 值,类型和约束见字段标注。
entitlementIduuid必填本次操作的 entitlementId 值,类型和约束见字段标注。
limitinteger必填一页返回的最大记录数量,受契约上限限制。
min: 1 · max: 100
响应字段
成功响应包含 requestId 和 scope。结合实际业务状态或 accepted 判断操作结果;可选字段不可用时省略。
HTTP 200 · application/json
requestIduuid必填服务端生成的 HTTP 请求 UUID,排查请求时提供这个值。
scopeobject必填响应实际所属的 App 和环境。Header 只能核对,不能切换 Key 范围。
展开子字段
projectIdstring必填凭据绑定的 App ID。
minLength: 1
environmentenum必填独立数据范围:sandbox 或 live。
查看允许值
"sandbox""live"
analyticsobject必填本次操作的 analytics 值,类型和约束见字段标注。
展开子字段
fromdate-time必填本次操作的 from 值,类型和约束见字段标注。
todate-time必填本次操作的 to 值,类型和约束见字段标注。
intervalenum必填本次操作的 interval 值,类型和约束见字段标注。
查看允许值
"hour""day""week""month"
timezonestring必填本次操作的 timezone 值,类型和约束见字段标注。
maxLength: 100
rowsarray必填本次操作的 rows 值,类型和约束见字段标注。
maxItems: 100
展开子字段
bucketdate-time必填本次操作的 bucket 值,类型和约束见字段标注。
groupstring必填本次操作的 group 值,类型和约束见字段标注。
maxLength: 240
isOtherboolean必填本次操作的 isOther 值,类型和约束见字段标注。
entitlementIduuid必填本次操作的 entitlementId 值,类型和约束见字段标注。
eventCountstring必填本次操作的 eventCount 值,类型和约束见字段标注。
pattern: ^(0|[1-9]\d{0,29})$
unitsstring必填本次操作的 units 值,类型和约束见字段标注。
pattern: ^(0|[1-9]\d{0,29})(\.\d{1,18})?$
tokenEventCountstring必填本次操作的 tokenEventCount 值,类型和约束见字段标注。
pattern: ^(0|[1-9]\d{0,29})$
tokensobject必填本次操作的 tokens 值,类型和约束见字段标注。
展开子字段
inputstring必填本次操作的 input 值,类型和约束见字段标注。
pattern: ^(0|[1-9]\d{0,29})$
outputstring必填本次操作的 output 值,类型和约束见字段标注。
pattern: ^(0|[1-9]\d{0,29})$
cache_readstring必填本次操作的 cache_read 值,类型和约束见字段标注。
pattern: ^(0|[1-9]\d{0,29})$
cache_writestring必填本次操作的 cache_write 值,类型和约束见字段标注。
pattern: ^(0|[1-9]\d{0,29})$
reasoningstring必填本次操作的 reasoning 值,类型和约束见字段标注。
pattern: ^(0|[1-9]\d{0,29})$
input_audiostring必填本次操作的 input_audio 值,类型和约束见字段标注。
pattern: ^(0|[1-9]\d{0,29})$
output_audiostring必填本次操作的 output_audio 值,类型和约束见字段标注。
pattern: ^(0|[1-9]\d{0,29})$
totalTokensstring必填本次操作的 totalTokens 值,类型和约束见字段标注。
pattern: ^(0|[1-9]\d{0,29})$
providerCostEventCountstring必填本次操作的 providerCostEventCount 值,类型和约束见字段标注。
pattern: ^(0|[1-9]\d{0,29})$
providerCostUsdstring必填本次操作的 providerCostUsd 值,类型和约束见字段标注。
pattern: ^(0|[1-9]\d{0,29})(\.\d{1,18})?$
invalidTelemetryEventCountstring必填本次操作的 invalidTelemetryEventCount 值,类型和约束见字段标注。
pattern: ^(0|[1-9]\d{0,29})$
nextCursorobject | null必填下一页游标;null 表示结束。原样传回,改筛选条件时清空。
展开子字段
bucketdate-time必填本次操作的 bucket 值,类型和约束见字段标注。
groupstring必填本次操作的 group 值,类型和约束见字段标注。
maxLength: 240
isOtherboolean必填本次操作的 isOther 值,类型和约束见字段标注。
entitlementIduuid必填本次操作的 entitlementId 值,类型和约束见字段标注。
处理错误
常见失败| 错误码 | 处理方式 |
|---|
| UNAUTHENTICATED | 核对 Key,或将过期客户 Token 重新签发一次。 |
| FORBIDDEN | 核对当前 Key 权限与客户访问范围。 |
| INVALID_REQUEST | 检查字段类型、UUID、十进制字符串和互斥字段。 |
| SCOPE_MISMATCH | 使用凭据绑定的 App 和环境。 |
常见失败
UNAUTHENTICATED
- 处理方式
- 核对 Key,或将过期客户 Token 重新签发一次。
FORBIDDEN
- 处理方式
- 核对当前 Key 权限与客户访问范围。
INVALID_REQUEST
- 处理方式
- 检查字段类型、UUID、十进制字符串和互斥字段。
SCOPE_MISMATCH
- 处理方式
- 使用凭据绑定的 App 和环境。
相关:完整请求与错误约定·返回接口索引