What this endpoint does#
Read the chronological status changes for one redemption order.Redemption ID → status history → final detail
Quick start#
Use the environment selected by Try it. The example values are synthetic.Authentication and permission#
| Send | Permission | Community scope |
|---|
Authorization: Bearer <apiKey> | readRedemptionTransactions | Community scope is derived from the key; do not send a community identifier. |
Complete examples#
{
"transactionId": "ORD202607220001"
}
Success and readback#
Branch on: top-level code = REDEMPTION_TRANSACTION_STATUS_HISTORY_RETRIEVED{
"status": "success",
"code": "REDEMPTION_TRANSACTION_STATUS_HISTORY_RETRIEVED",
"message": "Get redemption order status history successfully",
"data": {
"transactionId": "ORD202607220001",
"changes": [
{
"oldStatus": "new_purchase",
"oldStatusName": "New Purchase",
"newStatus": "refunded",
"newStatusName": "Refunded",
"remark": "Refunded by API hardening proof",
"updatedAt": "2026-07-22T02:10:00.000Z"
}
]
}
}
This is the readback. Changes are chronological and the last status matches v2 transaction detail.
Errors and recovery#
Branch on top-level code, never message text.| HTTP | Machine code | What the caller should do | Retry? |
|---|
| 400 | VALIDATION_FAILED | Use a valid public ORD identifier. | No, fix first |
| 401 | AUTHENTICATION_REQUIRED | Add the Authorization header. | No, fix first |
| 401 | AUTHENTICATION_FAILED | Authentication could not be completed. | Retry once |
| 403 | API_KEY_PERMISSION_DENIED | Request the readRedemptionTransactions permission; no resource data is returned. | No, fix first |
| 404 | REDEMPTION_TRANSACTION_NOT_FOUND | Refresh the order list. | After refreshing the ID |
| 500 | INTERNAL_ERROR | Retry with exponential backoff and the same request context, then escalate. | Yes, with backoff |
Retry safety#
This read is safe to retry with exponential backoff.
Gotchas#
Next steps#
Read redemption transaction
Read v2 detail and balance for final proof.