Understanding Inbound Webhook Retries in Postmark
This article explains how Postmark handles failed webhook posts for inbound messages and what to expect from our retry system.
💥 What is it?
Postmark’s Inbound Webhook system automatically retries failed webhook posts when your server doesn’t return a 200 OK response.
If all retries fail, the message will appear as an Inbound Error on your Inbound page.
📖 Learn more
👋🏽 How retries work
If Postmark doesn’t receive a 200 OK response from your server, we’ll automatically retry sending the webhook.
If we receive a 403 Forbidden response, retries stop immediately.
A total of 10 retries are attempted over roughly 10.5 hours, with increasing intervals between each attempt:
| Retry Interval | Time After Initial Attempt |
|---|---|
| 1st retry | 1 minute |
| 2nd retry | 5 minutes |
| 3rd–5th retries | every 10 minutes |
| 6th retry | 15 minutes |
| 7th retry | 30 minutes |
| 8th retry | 1 hour |
| 9th retry | 2 hours |
| 10th retry | 6 hours |
After all retries are exhausted, the message will be marked as Inbound Error.
❗️Important notes
The retry schedule cannot currently be customized.
If your webhook endpoint is down for more than ~10.5 hours, those messages may be missed.
You can manually retry a failed inbound message anytime from your Postmark account.