读取客户账本
POST/api/v1/customer-ledger
按类型和日期跨历史查询已验证财务事实。
SDK 0.0.1更新于
发起请求
按类型和日期跨历史查询已验证财务事实。
- 调用凭据
- 服务端 API Key 或客户 Token。客户调用不能选择其他客户。
- 所需权限
credits:read
base URL 和 App ID 来自 SDK 接入页。示例使用占位值,不会执行请求。服务端 Key 不可放入浏览器。
1curl -X POST "$GROOVE_BASE_URL/api/v1/customer-ledger" \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 "query": {8 "type": null,9 "from": null,10 "to": null,11 "after": null,12 "limit": 5013 }14}'
响应选项卡列出字段类型,不是响应示例;实际值由客户状态决定。
请求参数
JSON 请求体
customerIduuid可选Indiana 客户 ID。服务端从已验证身份关联;客户 Token 调用时省略并使用 Token 绑定的客户。
queryobject必填本次操作的 query 值,类型和约束见字段标注。
展开子字段
typeenum | null必填本次操作的 type 值,类型和约束见字段标注。
fromdate | null必填本次操作的 from 值,类型和约束见字段标注。
todate | null必填本次操作的 to 值,类型和约束见字段标注。
afterobject | null必填本次操作的 after 值,类型和约束见字段标注。
展开子字段
atdate-time必填本次操作的 at 值,类型和约束见字段标注。
iduuid必填本次操作的 id 值,类型和约束见字段标注。
typeenum必填本次操作的 type 值,类型和约束见字段标注。
查看允许值
"source""usage""transaction""debt""settlement"
limitinteger必填一页返回的最大记录数量,受契约上限限制。
min: 1 · max: 50
响应字段
成功响应包含 requestId 和 scope。结合实际业务状态或 accepted 判断操作结果;可选字段不可用时省略。
HTTP 200 · application/json
requestIduuid必填服务端生成的 HTTP 请求 UUID,排查请求时提供这个值。
scopeobject必填响应实际所属的 App 和环境。Header 只能核对,不能切换 Key 范围。
展开子字段
projectIdstring必填凭据绑定的 App ID。
minLength: 1
environmentenum必填独立数据范围:sandbox 或 live。
查看允许值
"sandbox""live"
ledgerobject必填本次操作的 ledger 值,类型和约束见字段标注。
展开子字段
customerIduuid必填Indiana 客户 ID。服务端从已验证身份关联;客户 Token 调用时省略并使用 Token 绑定的客户。
rowsarray必填本次操作的 rows 值,类型和约束见字段标注。
maxItems: 50
展开子字段
iduuid | uuid | uuid | uuid | uuid必填本次操作的 id 值,类型和约束见字段标注。
occurredAtdate-time | date-time | date-time | date-time | date-time必填本次操作的 occurredAt 值,类型和约束见字段标注。
entitlementIduuid | uuid | uuid | uuid可选本次操作的 entitlementId 值,类型和约束见字段标注。
entitlementVersionIduuid | uuid | uuid可选本次操作的 entitlementVersionId 值,类型和约束见字段标注。
versioninteger | integer | integer可选本次操作的 version 值,类型和约束见字段标注。
keystring | string | string可选本次操作的 key 值,类型和约束见字段标注。
namestring | string | string | string可选客户或对象的展示名称,不作为身份唯一键。
kindenum | enum | enum | enum | enum必填本次操作的 kind 值,类型和约束见字段标注。
type"source" | "usage" | "transaction" | "debt" | "settlement"必填本次操作的 type 值,类型和约束见字段标注。
reasonenum | enum | null可选拒绝原因或账本操作说明;结合 accepted / 状态判断结果。
quantitystring | object可选业务数量按字段标注类型传入;积分操作用十进制字符串,避免浮点误差。quote/reserve/confirm/refund 要求正数;consume 可记录零费用事件。
unlimitedboolean可选本次操作的 unlimited 值,类型和约束见字段标注。
statusenum可选本次操作的 status 值,类型和约束见字段标注。
查看允许值
"scheduled""active""expired""revoked""unavailable"
startsAtdate-time可选本次操作的 startsAt 值,类型和约束见字段标注。
expiresAtdate-time | null | date-time | null可选ISO 8601 UTC 到期时间;会话和预占到期后不能继续使用。
orderIduuid | null | uuid可选本次操作的 orderId 值,类型和约束见字段标注。
parentSourceIduuid | null可选本次操作的 parentSourceId 值,类型和约束见字段标注。
originalIduuid | null | uuid | null可选本次操作的 originalId 值,类型和约束见字段标注。
acceptedboolean可选操作是否被业务规则接受。HTTP 200 不等于 accepted 为 true。
propertiesobject可选服务端校验的计价属性,用于匹配维度和倍率。
reservationStatusenum | null可选本次操作的 reservationStatus 值,类型和约束见字段标注。
chargesarray可选本次操作的 charges 值,类型和约束见字段标注。
maxItems: 500
展开子字段
entitlementIduuid可选本次操作的 entitlementId 值,类型和约束见字段标注。
entitlementVersionIduuid可选本次操作的 entitlementVersionId 值,类型和约束见字段标注。
versioninteger可选本次操作的 version 值,类型和约束见字段标注。
max: 9007199254740991
keystring可选本次操作的 key 值,类型和约束见字段标注。
minLength: 1 · maxLength: 64
namestring可选客户或对象的展示名称,不作为身份唯一键。
minLength: 1 · maxLength: 120
kindenum可选本次操作的 kind 值,类型和约束见字段标注。
查看允许值
"access""metered""credit"
funding"prepaid" | "postpaid"必填本次操作的 funding 值,类型和约束见字段标注。
amountstring可选积分或账本金额,按字段的十进制字符串或整数类型传入。
pattern: ^(0|[1-9]\d{0,17})(\.\d{1,12})?$
invoiceIduuid可选本次操作的 invoiceId 值,类型和约束见字段标注。
invoiceLineIduuid可选本次操作的 invoiceLineId 值,类型和约束见字段标注。
authorizationIduuid可选本次操作的 authorizationId 值,类型和约束见字段标注。
unitsobject可选本次操作的 units 值,类型和约束见字段标注。
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"
purposeenum可选本次操作的 purpose 值,类型和约束见字段标注。
查看允许值
"product""invoice"
productVersionIduuid | null可选本次操作的 productVersionId 值,类型和约束见字段标注。
productNamestring | null可选本次操作的 productName 值,类型和约束见字段标注。
productVersioninteger | null可选本次操作的 productVersion 值,类型和约束见字段标注。
invoiceIduuid | null可选本次操作的 invoiceId 值,类型和约束见字段标注。
amountMinorinteger | null可选本次操作的 amountMinor 值,类型和约束见字段标注。
currencyenum | null可选已发布价格支持的币种代码。
sourceIduuid | uuid可选本次操作的 sourceId 值,类型和约束见字段标注。
transactionIduuid可选原消费返回的账本交易 UUID,退款必须引用这个记录。
amountstring | string可选积分或账本金额,按字段的十进制字符串或整数类型传入。
debtIduuid可选本次操作的 debtId 值,类型和约束见字段标注。
nextCursorobject | null必填下一页游标;null 表示结束。原样传回,改筛选条件时清空。
展开子字段
atdate-time必填本次操作的 at 值,类型和约束见字段标注。
iduuid必填本次操作的 id 值,类型和约束见字段标注。
typeenum必填本次操作的 type 值,类型和约束见字段标注。
查看允许值
"source""usage""transaction""debt""settlement"
处理错误
常见失败| 错误码 | 处理方式 |
|---|
| UNAUTHENTICATED | 核对 Key,或将过期客户 Token 重新签发一次。 |
| FORBIDDEN | 核对当前 Key 权限与客户访问范围。 |
| INVALID_REQUEST | 检查字段类型、UUID、十进制字符串和互斥字段。 |
| SCOPE_MISMATCH | 使用凭据绑定的 App 和环境。 |
常见失败
UNAUTHENTICATED
- 处理方式
- 核对 Key,或将过期客户 Token 重新签发一次。
FORBIDDEN
- 处理方式
- 核对当前 Key 权限与客户访问范围。
INVALID_REQUEST
- 处理方式
- 检查字段类型、UUID、十进制字符串和互斥字段。
SCOPE_MISMATCH
- 处理方式
- 使用凭据绑定的 App 和环境。
相关:完整请求与错误约定·返回接口索引