Resend a specific order
Use this Tango API endpoint to resend an existing reward to the original recipient. This is helpful when a reward email or text message has been deleted, lost, marked as spam, or the recipient no longer has access to the inbox or phone number originally used.
The resend operation does not create a new order— it simply re-delivers the same reward associated with the specified referenceOrderID. There are no additional fees for resending, and you can resend a reward at any time.
Use case
Acme Health uses this endpoint to support members who report that they never received their reward or can no longer access the email or phone number originally used. For example, if a member earned a wellness incentive but accidentally deleted the reward email—or it was filtered into spam—Acme Health’s support team retrieves the order’s referenceOrderID and triggers a resend. This re-delivers the same reward, with no additional fees, ensuring members can still access their earned incentives without creating duplicate orders.
Endpoint
Use the following endpoint to resend a specific order:
| Endpoint | Purpose |
|---|---|
POST {URI}/orders/{referenceOrderID}/resends | Resend a specific Order. |
Note:
- You can resend an order to a different email address or phone number, but it must still belong to the same recipient.
- You must have the original order number to resend an order. You can locate it using the Tango order history endpoint, as the order number appears in the original order response.
- You can only resend an order once every 30 seconds. If you attempt to resend it sooner, the system will return an error message that includes the timestamp of the most recent resend.
Best practice:If you need to verify reward information for a given order, consider
GET {URI}/ordersto retrieve a list of past orders.
Resending an email does not guarantee successful delivery. If a recipient is unable to receive the message due to spam filters, corporate firewall rules, or other email security restrictions, simply resending the reward may not resolve the issue. In these cases, the underlying delivery problem must be identified and addressed before the recipient can receive the reward.
Parameters
The path parameter for this endpoint identifies the specific order you want to resend. It's required to show exactly which existing reward order should be re-delivered. Think of referenceOrderID as the order’s unique tracking number:
| Path params | Data type | Requirement | Description |
|---|---|---|---|
referenceOrderID | string | required | Reference Order ID (returned in the Order response payload) is required to resend a reward. |
Body parameters allow you to override or update details from the original order when resending a reward. They give you flexibility to send the reward again The following body parameters are available for resending orders with this endpoint:
Body params | Data type | Description |
|---|---|---|
| string | A new email address to resend the Order to. If not provided, the original order email will be used when original |
| string | A new mobile number to resend the order to. If missing, use the original order mobile number when the original
|
| string | A new Template ID (ETID) to resend the order. If missing, use the original order ETID. ETID is a unique identifier for each reward digital template saved to your Tango platform. The default Template ID is E000000. |
| enum | Specify the delivery method to determine how the reward will be resent to the recipient. If
|
Resend rules
The following rules apply when you are using this endpoint to resend rewards:
- If both
newEmailandnewMobileare submitted, you can update both email and mobile number but resend your reward based onnewDeliveryMethod. - If
deliveryMethod=NONE, you can update the existing email and phone number, but the system will not resend the message. - If
deliveryMethodis missing or null, the system will use the original order’sdeliveryMethodvalue. - If
deliveryMethod=NONEand the original order has not used Tango for delivery , you can have Tango resend the order by using a new delivery method. - If you’ve delivered the reward credentials directly to your recipients—or prefer not to have Tango handle delivery—you can retrieve the reward details using
GET {URI}/orders/{referenceOrderId}.
Examples
The following payload example shows an order being resent using POST {URI}/orders/{referenceOrderID}/resends.
{
"id": 0,
"legacyId": "string",
"createdAt": "2025-11-06T15:23:34.898Z",
"email": "string",
"mobileNumber": "string"
}Response body
On a successful request (200 OK), the response body includes several important fields. Below are key notes and considerations to help you understand field behaviors and best practices:
idis a required, system‑generated unique identifier for the resend request. This value is useful for logging, auditing, and tracking resend activity in your system.legacyIdis returned for compatibility with older systems. Modern integrations should rely onid, butlegacyIdis included to support customers who still reference older resend identifiers.createdAtis a timestamp (UTC) indicating when the resend request was created. This is useful for troubleshooting and enforcing the 30‑second resend rate limit, since the API returns an error if you attempt another resend too soon.emailshows the email address the reward was resent to. It's present only if the resend was delivered via EMAIL and is helpful for verifying whether a new or original email address was used.mobileNumbershows the phone number used for SMS reward delivery and is returned only when the resend uses PHONE delivery.mobileNumberallows confirmation that the correct phone number (original or updated) was used.
Response codes
The possible response codes for this endpoint are as follows. For details, see i18nkey codes and their error messages:
| Response code | Meaning |
|---|---|
| 201 | New resource has been successfully created as a result of the request. |
| 400 | The server could not understand the request due to invalid syntax. |
| 401 | Authentication is required and has either not been provided or failed. |
| 403 | The server understood the request but refuses to authorize it. |
Updated 3 days ago
