Unfreeze eligible line items in an async order
Coming soon: This feature will be coming soon.
This endpoint attempts to remove the frozen state from all eligible line items in an async order so those line items become redeemable again. It does not unfreeze the order itself. If the order contains no eligible line items, the request has no effect. Unfreezing applies only if all conditions are met below:
- The order is a fully unredeemed and frozen Choice product. See Manage Choice products.
- The order status is COMPLETE, SCHEDULED DELIVERY, or PARTIAL. Orders in FAILED or PENDING status cannot be unfrozen.
Note:You can use this endpoint only for async orders in COMPLETE, SCHEDULED DELIVERY, or PARTIAL status. Orders in FAILED or PENDING status cannot be unfrozen. See Order status. This applies to all sources of ordering: BE, RA, RG, and AA. See Order sources.
Send a POST request to /asyncOrders/{referenceOrderID}/unfreeze to attempt to unfreeze every eligible line item in the specified async order. Provide a valid reason code, such as DUPLICATE, etc., to explain why the line items are being unfrozen. If no manual action is taken, Tango may automatically unfreeze frozen line items after 48 hours. If the order contains no eligible line items, the request does not change any line items.
The overall outcome is then reported via the webhook event: OrderActionStatusSee Order action status for more information.
Use case
After ACME Health temporarily freezes certain rewards within a large async order, the investigation team determines that several flagged rewards are valid. ACME Health sends POST /asyncOrders/{referenceOrderID}/unfreeze to attempt to unfreeze all eligible line items in that order. Only line items that are eligible and currently frozen are affected. If none of the line items are eligible, the request completes without changing the order’s line items.
How it works?
When you call POST {URI}/asyncOrders/{referenceOrderID}/unfreeze, Tango:
- Looks up the async order by
referenceOrderID. - Checks each line item to see whether it is eligible to be unfrozen.
- Unfreezes only the eligible line items.
- Leaves all other line items unchanged.
- Reports the outcome through the
OrderActionStatuswebhook event. If the order contains no eligible line items, the request has no effect.
Endpoint
Use the following endpoint to unfreeze a qualified line item:
| Endpoint | Purpose |
|---|---|
POST {URI}/asyncOrders/{referenceOrderID}/unfreeze | Attempt to unfreeze all eligible line items in the specified async order. |
Parameters
Use the following path parameter to identify which line items you're unfreezing:
| Path params | Requirement | Data type | Description |
|---|---|---|---|
referenceOrderID | required | string | Reference order ID for the async order whose eligible line items you want to unfreeze. |
The following body parameters are used to provide the reason for unfreezing your line item. See Get all reason codes for descriptions:
| Body params | Data type | Requirement | Description |
|---|---|---|---|
| reasonCode | string | required | Enter one of the following reason codes to unfreeze the eligible line items in the async order: VERIFY_ORDER, DUPLICATE, FRAUD, OTHER. |
| otherReason | string | optional | This field is required if reasonCode=OTHER. Enter a description of why you unfreeze this line item only if the available reason code values don't meet your needs. |
Notes
- This endpoint applies only to Choice Products such as Reward Link®, Global Choice Link, Promo Link™, and Disbursement Link.
- This endpoint affects only eligible line items. It does not change the async order itself. If the order contains no eligible line items, the request has no effect.
- It can only be used for async orders in COMPLETE, SCHEDULED DELIVERY, or PARTIAL status. They must be fully unredeemed Choice Products that are currently frozen.
- Canceled and not frozen line items cannot be unfrozen.
- Freeze/unfreeze actions must occur within the valid window after reward issuance. Freeze/unfreeze may occur on different days as long as within permitted timing.
- If no manual action is taken, Tango automatically unfreezes frozen line items after 48 hours.
Response message
Here is the 202 Accepted response returned when the unfreeze request is accepted for processing. This response confirms that Tango accepted the request for processing. It does not guarantee that every line item in the order was eligible for unfreezing:
{
"referenceOrderId": "string",
"externalRefID": "string",
"status": "string",
"totalLineItems": 0,
"date": "2026-02-17T18:02:33.823Z"
}The 202 response body is giving you the following information:
| Field | What it tells you |
|---|---|
referenceOrderId | Tango’s system‑assigned order ID |
externalRefID | Your own order tracking ID (idempotency key) |
status | The current async processing status |
totalLineItems | How many rewards were in the order |
date | When this order event occurred |
Response codes
The possible response codes for this endpoint are as follows. For details, see i18nkey codes and their error messages:
| Response code | Meaning |
|---|---|
| 202 | The server received the request and accepted it for processing. Eligible line items may be unfrozen asynchronously. This response does not guarantee that any line items were eligible. |
| 400 | The server could not understand the request due to invalid syntax. |
| 404 | The server was unable to find the requested resource. In other words, the URL you're trying to access doesn't point to anything that exists on the server. |
| 422 | The server understands the request but cannot process it due to semantic errors. |
Updated 21 days ago
