跳到正文
Indiana
控制台
文档
章节目录 / 调整套餐余额

调整套餐余额

POST/api/v1/balances/source/adjust

可信服务端调整可用余额,或以 edit 修改当前授予量、到期及下次重置。expectedAvailable 与 expectedRevision 拒绝并发覆盖;保留已消费及预扣,下周期恢复套餐额度和原排期。

SDK 0.0.1更新于

发起请求

可信服务端调整可用余额,或以 edit 修改当前授予量、到期及下次重置。expectedAvailable 与 expectedRevision 拒绝并发覆盖;保留已消费及预扣,下周期恢复套餐额度和原排期。

调用凭据
仅服务端 API Key。由可信后端调用。
所需权限
credits:manage
base URL 和 App ID 来自 SDK 接入页。示例使用占位值,不会执行请求。服务端 Key 不可放入浏览器。
request.shShell
curl -X POST "$GROOVE_BASE_URL/api/v1/balances/source/adjust" \  -H "Authorization: Bearer $GROOVE_SECRET_KEY" \  -H "X-Groove-Project: $GROOVE_PROJECT_ID" \  -H "X-Groove-Environment: sandbox" \  -H "Content-Type: application/json" \  -d '{  "customerId": "00000000-0000-4000-8000-000000000001",  "command": {    "requestId": "00000000-0000-4000-8000-000000000001",    "sourceId": "00000000-0000-4000-8000-000000000001",    "action": "add",    "amount": "5",    "expectedAvailable": "10"  }}'

响应选项卡列出字段类型,不是响应示例;实际值由客户状态决定。

请求参数

JSON 请求体

customerIduuid必填

Indiana 客户 ID。服务端从已验证身份关联;客户 Token 调用时省略并使用 Token 绑定的客户。

commandobject | object必填

本次操作的 command 值,类型和约束见字段标注。

展开子字段
requestIduuid | uuid必填

你的业务请求 UUID;同一次操作重试复用,新的操作生成新值。

sourceIduuid | uuid必填

本次操作的 sourceId 值,类型和约束见字段标注。

expectedAvailablestring | string必填

本次操作的 expectedAvailable 值,类型和约束见字段标注。

actionenum | "edit"必填

本次业务动作。不同动作的目标字段和数量要求不同,见请求结构与示例。

amountstring可选

积分或账本金额,按字段的十进制字符串或整数类型传入。

pattern: ^(0|[1-9]\d{0,11})(\.\d{1,6})?$

grantedstring可选

本次操作的 granted 值,类型和约束见字段标注。

pattern: ^(0|[1-9]\d{0,11})(\.\d{1,6})?$

expiresAtdate-time | null可选

ISO 8601 UTC 到期时间;会话和预占到期后不能继续使用。

nextResetAtdate-time | null可选

本次操作的 nextResetAt 值,类型和约束见字段标注。

expectedRevisioninteger可选

本次操作的 expectedRevision 值,类型和约束见字段标注。

min: 0 · max: 9007199254740991

响应字段

成功响应包含 requestId 和 scope。结合实际业务状态或 accepted 判断操作结果;可选字段不可用时省略。

HTTP 200 · application/json

requestIduuid必填

服务端生成的 HTTP 请求 UUID,排查请求时提供这个值。

scopeobject必填

响应实际所属的 App 和环境。Header 只能核对,不能切换 Key 范围。

展开子字段
projectIdstring必填

凭据绑定的 App ID。

minLength: 1

environmentenum必填

独立数据范围:sandbox 或 live。

查看允许值

"sandbox""live"

balanceobject必填

本次操作的 balance 值,类型和约束见字段标注。

展开子字段
sourceIduuid必填

本次操作的 sourceId 值,类型和约束见字段标注。

availablestring必填

本次操作的 available 值,类型和约束见字段标注。

pattern: ^(0|[1-9]\d{0,17})(\.\d{1,12})?$

heldstring必填

本次操作的 held 值,类型和约束见字段标注。

pattern: ^(0|[1-9]\d{0,17})(\.\d{1,12})?$

spentstring必填

本次操作的 spent 值,类型和约束见字段标注。

pattern: ^(0|[1-9]\d{0,17})(\.\d{1,12})?$

adjustmentGrantIduuid | null必填

本次操作的 adjustmentGrantId 值,类型和约束见字段标注。

处理错误

常见失败
错误码处理方式
UNAUTHENTICATED核对 Key,或将过期客户 Token 重新签发一次。
FORBIDDEN核对当前 Key 权限与客户访问范围。
INVALID_REQUEST检查字段类型、UUID、十进制字符串和互斥字段。
SCOPE_MISMATCH使用凭据绑定的 App 和环境。

常见失败

  • UNAUTHENTICATED

    处理方式
    核对 Key,或将过期客户 Token 重新签发一次。
  • FORBIDDEN

    处理方式
    核对当前 Key 权限与客户访问范围。
  • INVALID_REQUEST

    处理方式
    检查字段类型、UUID、十进制字符串和互斥字段。
  • SCOPE_MISMATCH

    处理方式
    使用凭据绑定的 App 和环境。

相关:完整请求与错误约定·返回接口索引