Poll for delivery results
Use this method when webhooks are hard to set up in your environment, or to cover messages whose webhooks you failed to receive.
It fetches unreceived reports in batches so you can process them.
Webhook vs. polling
| Method | Behavior | Recommended when |
|---|---|---|
| Webhook (push) | Sent to your server as soon as the result occurs | The default recommendation |
| Polling (pull) | Calls the API periodically to receive results | Webhooks are hard to set up, or you want to cover webhook failures |
The polling sequence
TEXT
1. Look up unreceived reports (GET)
2. Store the reportId
3. Process the results (save to your database, and so on)
4. Acknowledge receipt (DELETE) ← always required
5. Repeat until an empty array comes back
If you do not acknowledge receipt, the next poll returns the same results again.
Key constraints
| Item | Limit |
|---|---|
| Maximum results per call | 1,000 |
| Retention period for unprocessed reports | 3 days (deleted automatically after that) |
| Acknowledging receipt | A DELETE is always required after the lookup |
Next steps
- Check the API specification → API reference — delivery result polling
- If you need real-time receipt → Set up webhooks