Notification Send Retries

Retry Conditions

Courier will attempt to resend a notification under the following circumstances:

  • No response from the integration (e.g., network connection lost)
  • Integration response indicates a temporary issue (e.g., server overload, rate limit exceeded)
  • Uncaught exception in Courier’s pipeline

Retry Strategy

Our retry strategy employs an exponential backoff approach:

  1. Initial retries with increasing delays: 5, 10, 20, 40, 60, 120, 240, 480, 720, 900 seconds
  2. After the 10th retry, a consistent 15-minute delay is used for subsequent attempts
  3. Up to 104 retry attempts are made, spanning a maximum of 24 hours

Delivery Status Check Retries

Retry Conditions

Courier will retry delivery status checks under these conditions:

  • No response from the integration (e.g., network connection lost)
  • Integration response indicates a temporary issue (e.g., server overload)
  • Temporary failure in resolving the delivery status
  • Uncaught exception in Courier’s pipeline

Retry Strategy

We employ the following exponential backoff strategy for status checks:

  1. Immediate retry for the first 10 attempts
  2. 1-hour delay before the 11th attempt
  3. 2-hour delay before the 12th attempt
  4. 3-hour delay for attempts 13 through 25

This approach ensures thorough tracking of delivery statuses over a 72-hour period.

Outbound Webhook Delivery Retries

Retry Conditions

Courier will attempt to retry outbound webhook delivery under the following circumstances:

  • Internal Courier errors occur
  • Network errors are encountered
  • Certain retryable HTTP errors are received

Retry Strategy

Our outbound webhook retry strategy employs an exponential backoff approach:

  1. Initial retries with increasing delays: 5, 10, 20, 40, 60, 120, 240, 480, 720, 900 seconds
  2. After the 10th retry, a consistent 15-minute delay is used for subsequent attempts
  3. Up to 104 retry attempts are made, spanning a maximum of 24 hours

Courier Status Page

You can track Courier’s services status here