What are Webhooks?
Webhooks allow you to receive real-time notifications when email events occur, such as:email.sent- Email was sentemail.delivered- Email was delivered to recipientemail.opened- Recipient opened the emailemail.clicked- Recipient clicked a linkemail.bounced- Email bouncedemail.complained- Recipient marked as spam
Setting Up Webhooks
1
Create an Endpoint
Create an HTTPS endpoint on your server to receive webhook events
2
Add Webhook in Dashboard
Go to Settings → Webhooks → Add Webhook
3
Enter URL and Select Events
Enter your endpoint URL and choose which events to receive
4
Test Your Webhook
Use the test button to send a sample payload
Webhook Payload
Example webhook payload:Handling Webhooks
Verifying Webhooks
Transmit signs all webhook requests. Verify the signature to ensure authenticity:Retries
Transmit will retry failed webhooks:- Initial retry: after 1 minute
- Second retry: after 5 minutes
- Third retry: after 30 minutes
- Final retry: after 2 hours
Your endpoint must return a
2xx status code within 30 seconds to be considered successful.Best Practices
Return 200 Quickly
Process webhooks asynchronously. Return 200 immediately, then process in background.
Verify Signatures
Always verify webhook signatures to prevent spoofing
Handle Duplicates
Webhooks may be delivered more than once. Use idempotency keys.
Log Everything
Log all webhook events for debugging and auditing