Messaging events and webhook availability
Understand how to follow messaging events in your integration and which event interfaces are available today.
Connect your application
Open Developer > Webhooks, add your public HTTPS receiver and select events. Save the one-time signing secret on your server. Send a test and open Deliveries to check the HTTP result. Owners, admins and developers can manage up to 10 endpoints per workspace.
Verify every request
Verify HMAC SHA-256 over timestamp + a period + the exact raw JSON body using your endpoint secret. Reject timestamps more than five minutes old and use a constant-time comparison. Deduplicate event IDs and return HTTP 2xx promptly. The full receiver example is linked below.
Events and coverage
SMS: sent, delivered, failed, received. WhatsApp: sent, delivered, read, failed, received. Email: sent, failed and provider-reported delivered, soft_bounce, hard_bounce, spam_complaint, unsubscribe and held. Incoming messages use received, not replied. Email provider reporting must be configured for delivery or bounce events.
Timing and retries
Messaging history is polled, normally about once a minute but slower under load or provider outages. Only messages created after endpoint registration are eligible. Intermediate states and records outside provider history windows can be missed. Failures retry after 1 minute, 5 minutes, 30 minutes, 2 hours and 6 hours: six total attempts. Order is not guaranteed. Replays retain the event ID.
Endpoint requirements
HTTPS port 443 with public IPv4 DNS is required. Private networks, localhost, internal hostnames and redirects are not supported. Requests time out after 10 seconds. URLs are checked on every attempt. Secrets are encrypted at rest. Pausing stops dispatch; an in-flight request may finish.
API compatibility
Existing /v1 SMS and WhatsApp endpoints are unchanged. Subscription management uses authenticated customer-panel /api/webhooks routes with CSRF protection, not workspace API keys. This service is separate from PayPal webhooks. Events can contain recipients and up to 4096 characters of message text.
Receiver example / مثال الاستقبال
Payload, signature verification and integration reference (English)