Operation details
GET /v1/admin/recharge-payment-approvals
稳定快照分页读取充值审批
- operationId
listRechargePaymentApprovals- Auth
- Session: the Bearer session of a signed-in control plane user, used by the customer in their own control plane; a plugin must never ask for it.
- Required permissions
All of:billing.recharges.read
Parameters
listRechargePaymentApprovals Parameters| Name | In | Type | Required | Description |
|---|
X-Request-ID | header | string | Yes | — |
|---|
page | query | integer | Yes | — |
|---|
limit | query | integer | Yes | — |
|---|
kind | query | string: refund / void | No | — |
|---|
state | query | string: pending / approved / rejected / expired | No | — |
|---|
snapshot_at | query | string(date-time) | No | — |
|---|
Responses
listRechargePaymentApprovals Responses| Status | Description |
|---|
200 | 稳定快照分页 Fields:items: array<Approval> total: integer(int64) page: integer limit: integer snapshot_at: string(date-time) |
|---|
400 | 稳定错误码 |
|---|
401 | 稳定错误码 |
|---|
403 | 稳定错误码 |
|---|
What to do on failure
400 Fix the parameters or body per the field list; do not retry unchanged.401 Check the credential format and whether it expired or was rotated.403 Check the key scopes, the owner’s current permissions and the tenant scope; never switch to a more privileged account.
↑ Back to list
POST /v1/admin/recharge-payment-approvals
创建充值退款或撤销审批提议
- operationId
proposeRechargePaymentApproval- Auth
- Session: the Bearer session of a signed-in control plane user, used by the customer in their own control plane; a plugin must never ask for it.
- Required permissions
All of:billing.recharges.compensate
Parameters
proposeRechargePaymentApproval Parameters| Name | In | Type | Required | Description |
|---|
X-Request-ID | header | string | Yes | — |
|---|
Idempotency-Key | header | string | Yes | — |
|---|
Request body
application/json · Required:Yes
proposeRechargePaymentApproval Request body| Name | Type | Required | Description |
|---|
order_id | string(uuid) | Yes | — |
|---|
tenant_scope_id | string(uuid) | Yes | — |
|---|
kind | string: refund / void | Yes | — |
|---|
amount_minor | integer(int64) | Yes | — |
|---|
expected_order_revision | integer(int64) | Yes | — |
|---|
reason | string | Yes | — |
|---|
Responses
proposeRechargePaymentApproval Responses| Status | Description |
|---|
201 | 新提议或精确重放 Fields:id: string(uuid) order_id: string(uuid) tenant_scope_id: string(uuid) kind: string: refund / void amount_minor: integer(int64) currency: string expected_order_revision: integer(int64) reason: string state: string: pending / approved / rejected / expired revision: integer: 1 / 2 proposed_by_scope_id: string(uuid) proposed_by_user_id: string(uuid) proposed_at: string(date-time) expires_at: string(date-time) decided_by_scope_id?: string(uuid) decided_by_user_id?: string(uuid) decided_at?: string(date-time) replayed: boolean |
|---|
400 | 稳定错误码 |
|---|
401 | 稳定错误码 |
|---|
403 | 稳定错误码 |
|---|
409 | 稳定错误码 |
|---|
What to do on failure
400 Fix the parameters or body per the field list; do not retry unchanged.401 Check the credential format and whether it expired or was rotated.403 Check the key scopes, the owner’s current permissions and the tenant scope; never switch to a more privileged account.409 Read the current state first; a retry of the same operation keeps the original Idempotency-Key and body.
↑ Back to list
GET /v1/admin/recharge-payment-approvals/export
导出充值审批 CSV
- operationId
exportRechargePaymentApprovals- Auth
- Session: the Bearer session of a signed-in control plane user, used by the customer in their own control plane; a plugin must never ask for it.
- Required permissions
All of:billing.recharges.read
Parameters
exportRechargePaymentApprovals Parameters| Name | In | Type | Required | Description |
|---|
X-Request-ID | header | string | Yes | — |
|---|
kind | query | string: refund / void | No | — |
|---|
state | query | string: pending / approved / rejected / expired | No | — |
|---|
snapshot_at | query | string(date-time) | No | — |
|---|
Responses
exportRechargePaymentApprovals Responses| Status | Description |
|---|
200 | UTF-8 CSV with stable snapshot |
|---|
400 | 稳定错误码 |
|---|
401 | 稳定错误码 |
|---|
403 | 稳定错误码 |
|---|
What to do on failure
400 Fix the parameters or body per the field list; do not retry unchanged.401 Check the credential format and whether it expired or was rotated.403 Check the key scopes, the owner’s current permissions and the tenant scope; never switch to a more privileged account.
↑ Back to list
GET /v1/admin/recharge-payment-approvals/statistics
读取充值审批金额统计
- operationId
rechargePaymentApprovalStatistics- Auth
- Session: the Bearer session of a signed-in control plane user, used by the customer in their own control plane; a plugin must never ask for it.
- Required permissions
All of:billing.recharges.read
Parameters
rechargePaymentApprovalStatistics Parameters| Name | In | Type | Required | Description |
|---|
X-Request-ID | header | string | Yes | — |
|---|
kind | query | string: refund / void | No | — |
|---|
state | query | string: pending / approved / rejected / expired | No | — |
|---|
snapshot_at | query | string(date-time) | No | — |
|---|
Responses
rechargePaymentApprovalStatistics Responses| Status | Description |
|---|
200 | 稳定快照统计 Fields:snapshot_at: string(date-time) pending_count: integer(int64) approved_count: integer(int64) rejected_count: integer(int64) expired_count: integer(int64) refund_amount_minor: integer(int64) void_amount_minor: integer(int64) |
|---|
400 | 稳定错误码 |
|---|
401 | 稳定错误码 |
|---|
403 | 稳定错误码 |
|---|
What to do on failure
400 Fix the parameters or body per the field list; do not retry unchanged.401 Check the credential format and whether it expired or was rotated.403 Check the key scopes, the owner’s current permissions and the tenant scope; never switch to a more privileged account.
↑ Back to list
GET /v1/admin/recharge-payment-approvals/{approval_id}
读取单条充值审批事实
- operationId
getRechargePaymentApproval- Auth
- Session: the Bearer session of a signed-in control plane user, used by the customer in their own control plane; a plugin must never ask for it.
- Required permissions
All of:billing.recharges.read
Parameters
getRechargePaymentApproval Parameters| Name | In | Type | Required | Description |
|---|
approval_id | path | string(uuid) | Yes | — |
|---|
X-Request-ID | header | string | Yes | — |
|---|
Responses
getRechargePaymentApproval Responses| Status | Description |
|---|
200 | 充值审批事实 Fields:id: string(uuid) order_id: string(uuid) tenant_scope_id: string(uuid) kind: string: refund / void amount_minor: integer(int64) currency: string expected_order_revision: integer(int64) reason: string state: string: pending / approved / rejected / expired revision: integer: 1 / 2 proposed_by_scope_id: string(uuid) proposed_by_user_id: string(uuid) proposed_at: string(date-time) expires_at: string(date-time) decided_by_scope_id?: string(uuid) decided_by_user_id?: string(uuid) decided_at?: string(date-time) replayed: boolean |
|---|
400 | 稳定错误码 |
|---|
401 | 稳定错误码 |
|---|
403 | 稳定错误码 |
|---|
404 | 稳定错误码 |
|---|
503 | 稳定错误码 |
|---|
What to do on failure
400 Fix the parameters or body per the field list; do not retry unchanged.401 Check the credential format and whether it expired or was rotated.403 Check the key scopes, the owner’s current permissions and the tenant scope; never switch to a more privileged account.404 The resource does not exist or belongs to another tenant.503 A dependency is unavailable: retry later with the original Idempotency-Key.
↑ Back to list
POST /v1/admin/recharge-payment-approvals/{approval_id}/approve
由不同 operator 批准充值补偿
- operationId
approveRechargePaymentApproval- Auth
- Session: the Bearer session of a signed-in control plane user, used by the customer in their own control plane; a plugin must never ask for it.
- Required permissions
All of:billing.recharges.approve
Parameters
approveRechargePaymentApproval Parameters| Name | In | Type | Required | Description |
|---|
approval_id | path | string(uuid) | Yes | — |
|---|
X-Request-ID | header | string | Yes | — |
|---|
Idempotency-Key | header | string | Yes | — |
|---|
Request body
application/json · Required:Yes
approveRechargePaymentApproval Request body| Name | Type | Required | Description |
|---|
expected_revision | integer | Yes | — |
|---|
Responses
approveRechargePaymentApproval Responses| Status | Description |
|---|
200 | 批准或精确重放 Fields:id: string(uuid) order_id: string(uuid) tenant_scope_id: string(uuid) kind: string: refund / void amount_minor: integer(int64) currency: string expected_order_revision: integer(int64) reason: string state: string: pending / approved / rejected / expired revision: integer: 1 / 2 proposed_by_scope_id: string(uuid) proposed_by_user_id: string(uuid) proposed_at: string(date-time) expires_at: string(date-time) decided_by_scope_id?: string(uuid) decided_by_user_id?: string(uuid) decided_at?: string(date-time) replayed: boolean |
|---|
400 | 稳定错误码 |
|---|
401 | 稳定错误码 |
|---|
403 | 稳定错误码 |
|---|
409 | 稳定错误码 |
|---|
What to do on failure
400 Fix the parameters or body per the field list; do not retry unchanged.401 Check the credential format and whether it expired or was rotated.403 Check the key scopes, the owner’s current permissions and the tenant scope; never switch to a more privileged account.409 Read the current state first; a retry of the same operation keeps the original Idempotency-Key and body.
↑ Back to list
POST /v1/admin/recharge-payment-approvals/{approval_id}/reject
拒绝充值补偿提议
- operationId
rejectRechargePaymentApproval- Auth
- Session: the Bearer session of a signed-in control plane user, used by the customer in their own control plane; a plugin must never ask for it.
- Required permissions
All of:billing.recharges.approve
Parameters
rejectRechargePaymentApproval Parameters| Name | In | Type | Required | Description |
|---|
approval_id | path | string(uuid) | Yes | — |
|---|
X-Request-ID | header | string | Yes | — |
|---|
Idempotency-Key | header | string | Yes | — |
|---|
Request body
application/json · Required:Yes
rejectRechargePaymentApproval Request body| Name | Type | Required | Description |
|---|
expected_revision | integer | Yes | — |
|---|
Responses
rejectRechargePaymentApproval Responses| Status | Description |
|---|
200 | 拒绝或精确重放 Fields:id: string(uuid) order_id: string(uuid) tenant_scope_id: string(uuid) kind: string: refund / void amount_minor: integer(int64) currency: string expected_order_revision: integer(int64) reason: string state: string: pending / approved / rejected / expired revision: integer: 1 / 2 proposed_by_scope_id: string(uuid) proposed_by_user_id: string(uuid) proposed_at: string(date-time) expires_at: string(date-time) decided_by_scope_id?: string(uuid) decided_by_user_id?: string(uuid) decided_at?: string(date-time) replayed: boolean |
|---|
400 | 稳定错误码 |
|---|
401 | 稳定错误码 |
|---|
403 | 稳定错误码 |
|---|
409 | 稳定错误码 |
|---|
What to do on failure
400 Fix the parameters or body per the field list; do not retry unchanged.401 Check the credential format and whether it expired or was rotated.403 Check the key scopes, the owner’s current permissions and the tenant scope; never switch to a more privileged account.409 Read the current state first; a retry of the same operation keeps the original Idempotency-Key and body.
↑ Back to list