This guide explains how Sqala handles failed webhook deliveries and retry attempts.
Default Retry Behavior
When a webhook delivery fails (response status code is not in the 2xx range), Sqala automatically retries the delivery up to 5 times. Each retry attempt occurs 300 seconds after the previous attempt.
sequenceDiagram
participant S as Sqala
participant C as Client Server
S->>C: Initial webhook delivery
C-->>S: Failed response (non-2xx)
Note over S: Wait 300s
S->>C: First retry
C-->>S: Failed response
Note over S: Wait 300s
S->>C: Second retry
C-->>S: Failed response
Note over S: Wait 300s
S->>C: Third retry
C-->>S: Failed response
Note over S: Wait 300s
S->>C: Fourth retry
C-->>S: Failed response
Note over S: Wait 300s
S->>C: Fifth retry
C-->>S: Failed response
Note over S: Maximum retries reached
Configurable Parameters
You can customize the following retry parameters:
- Maximum retry attempts: 5
- Initial delay: 300 seconds
- Delay multiplier: 1 (used for exponential backoff)
Exponential Backoff
The system uses exponential backoff to space out retry attempts. This means each subsequent retry waits longer than the previous one. For example, with a base delay of 300s and a multiplier of 2, the retry schedule would be:
graph LR
A[Initial Failure] -->|300s| B[First Retry]
B -->|600s| C[Second Retry]
C -->|1200s| D[Third Retry]
D -->|2400s| E[Fourth Retry]
E -->|4800s| F[Fifth Retry]
style A fill:#ff9999,color:black
style F fill:#99ff99,color:black
- First retry: 600s after initial failure
- Second retry: 1200 seconds after first retry
- Third retry: 2400 seconds after second retry
- Fourth retry: 4800 seconds after third retry
Customizing Retry Settings
To adjust the retry parameters for your integration, contact our support team at [email protected]. Include the following information in your request:
- Maximum number of retry attempts
- Initial delay duration
- Retry delay multiplier