读取用量账单
POST/api/v1/billing/invoices/read
分页读取当前客户的用量账单和结算状态,金额来自已持久化事实。
SDK 0.0.1更新于
发起请求
分页读取当前客户的用量账单和结算状态,金额来自已持久化事实。
- 调用凭据
- 仅客户 Token。身份由 Token 绑定。
- 所需权限
billing:read
base URL 和 App ID 来自 SDK 接入页。示例使用占位值,不会执行请求。服务端 Key 不可放入浏览器。
1curl -X POST "$GROOVE_BASE_URL/api/v1/billing/invoices/read" \2 -H "Authorization: Bearer $GROOVE_CUSTOMER_TOKEN" \3 -H "X-Groove-Project: $GROOVE_PROJECT_ID" \4 -H "X-Groove-Environment: sandbox" \5 -H "Content-Type: application/json" \6 -d '{7 "after": null,8 "limit": 509}'
响应选项卡列出字段类型,不是响应示例;实际值由客户状态决定。
请求参数
JSON 请求体
afteruuid | null必填本次操作的 after 值,类型和约束见字段标注。
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"
invoicesobject必填本次操作的 invoices 值,类型和约束见字段标注。
展开子字段
rowsarray必填本次操作的 rows 值,类型和约束见字段标注。
maxItems: 100
展开子字段
iduuid必填本次操作的 id 值,类型和约束见字段标注。
sourceKindenum必填本次操作的 sourceKind 值,类型和约束见字段标注。
查看允许值
"product""usage"
providerInvoiceIdstring | null必填本次操作的 providerInvoiceId 值,类型和约束见字段标注。
statusenum必填本次操作的 status 值,类型和约束见字段标注。
查看允许值
"accruing""open""pending""paid""failed""void"
currencyenum必填已发布价格支持的币种代码。
查看允许值
"USD""EUR""CNY""GBP""JPY""CAD""AUD""NZD""CHF""HKD""SGD""KRW""INR""BRL""MXN""TWD""THB""IDR""MYR""PHP""VND""ZAR""AED""SAR""SEK""NOK""DKK""PLN""CZK""HUF""ILS""TRY""RON"
startsAtdate-time必填本次操作的 startsAt 值,类型和约束见字段标注。
endsAtdate-time必填本次操作的 endsAt 值,类型和约束见字段标注。
amountMinorstring必填本次操作的 amountMinor 值,类型和约束见字段标注。
pattern: ^(0|[1-9]\d{0,14})$
grossAmountMinorstring必填本次操作的 grossAmountMinor 值,类型和约束见字段标注。
pattern: ^(0|[1-9]\d{0,14})$
discountMinorstring必填本次操作的 discountMinor 值,类型和约束见字段标注。
pattern: ^(0|[1-9]\d{0,14})$
paidAmountMinorstring必填本次操作的 paidAmountMinor 值,类型和约束见字段标注。
pattern: ^(0|[1-9]\d{0,14})$
refundedAmountMinorstring必填本次操作的 refundedAmountMinor 值,类型和约束见字段标注。
pattern: ^(0|[1-9]\d{0,14})$
createdAtdate-time必填记录创建时的 ISO 8601 UTC 时间。
hostedInvoiceUrluri | null必填本次操作的 hostedInvoiceUrl 值,类型和约束见字段标注。
adjustmentobject | null必填本次操作的 adjustment 值,类型和约束见字段标注。
展开子字段
originalInvoiceIduuid必填本次操作的 originalInvoiceId 值,类型和约束见字段标注。
amountMinorstring必填本次操作的 amountMinor 值,类型和约束见字段标注。
pattern: ^-?(0|[1-9]\d{0,8})$
acceptedAtdate-time | null必填本次操作的 acceptedAt 值,类型和约束见字段标注。
linesarray必填本次操作的 lines 值,类型和约束见字段标注。
maxItems: 100
展开子字段
iduuid必填本次操作的 id 值,类型和约束见字段标注。
entitlementIduuid必填本次操作的 entitlementId 值,类型和约束见字段标注。
entitlementVersionIduuid必填本次操作的 entitlementVersionId 值,类型和约束见字段标注。
productVersionIduuid必填本次操作的 productVersionId 值,类型和约束见字段标注。
authorizationIduuid必填本次操作的 authorizationId 值,类型和约束见字段标注。
entityIduuid | null必填当前客户范围内的实体 ID;只用于已配置的实体和许可功能。
unitsobject必填本次操作的 units 值,类型和约束见字段标注。
amountMinorstring必填本次操作的 amountMinor 值,类型和约束见字段标注。
pattern: ^(0|[1-9]\d{0,17})(\.\d{1,30})?$
cashPriceobject必填本次操作的 cashPrice 值,类型和约束见字段标注。
linesLimitedboolean必填本次操作的 linesLimited 值,类型和约束见字段标注。
nextCursoruuid | null必填下一页游标;null 表示结束。原样传回,改筛选条件时清空。
处理错误
常见失败| 错误码 | 处理方式 |
|---|
| UNAUTHENTICATED | 核对 Key,或将过期客户 Token 重新签发一次。 |
| FORBIDDEN | 核对当前 Key 权限与客户访问范围。 |
| INVALID_REQUEST | 检查字段类型、UUID、十进制字符串和互斥字段。 |
| SCOPE_MISMATCH | 使用凭据绑定的 App 和环境。 |
常见失败
UNAUTHENTICATED
- 处理方式
- 核对 Key,或将过期客户 Token 重新签发一次。
FORBIDDEN
- 处理方式
- 核对当前 Key 权限与客户访问范围。
INVALID_REQUEST
- 处理方式
- 检查字段类型、UUID、十进制字符串和互斥字段。
SCOPE_MISMATCH
- 处理方式
- 使用凭据绑定的 App 和环境。
相关:完整请求与错误约定·返回接口索引