Gupshup
The Gupshup webhook receives WhatsApp message delivery status updates from the Gupshup messaging platform.
Endpoint
Section titled “Endpoint”POST /api/rpc/webhooks/gupshup
Security
Section titled “Security”This endpoint uses IP whitelisting in production rather than signature validation. Ensure your infrastructure only allows requests from Gupshup’s IP ranges to reach this endpoint.
Supported statuses
Section titled “Supported statuses”| Gupshup Status | Platform Event | Description |
|---|---|---|
sent | whatsapp_sent | Message sent |
delivered | whatsapp_delivered | Message delivered |
read | whatsapp_read | Recipient read the message |
failed | whatsapp_failed | Message failed |
enqueued | — | Skipped (message queued) |
Payload structure
Section titled “Payload structure”Gupshup sends events with this structure:
{ "type": "message-event", "payload": { "type": "delivered", "gsId": "gupshup-message-id", "destination": "+1234567890", "externalId": "your-message-id" }}| Field | Description |
|---|---|
type | Always message-event for status updates |
payload.type | Delivery status |
payload.gsId | Gupshup’s internal message ID |
payload.destination | Recipient phone number |
payload.externalId | Your external message reference |
Response
Section titled “Response”{ "success": true, "processed": 1}- In your Gupshup dashboard, configure the callback URL for your WhatsApp app.
- Set the URL to your platform’s Gupshup webhook endpoint.
- Configure your network/firewall to only allow requests from Gupshup’s IP ranges.
Related pages
Section titled “Related pages”- Meta WhatsApp — alternative WhatsApp integration via Meta
- Twilio WhatsApp — alternative WhatsApp integration via Twilio
- Webhooks overview — how webhooks work