Skip to content

Gupshup

The Gupshup webhook receives WhatsApp message delivery status updates from the Gupshup messaging platform.

POST /api/rpc/webhooks/gupshup

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.

Gupshup StatusPlatform EventDescription
sentwhatsapp_sentMessage sent
deliveredwhatsapp_deliveredMessage delivered
readwhatsapp_readRecipient read the message
failedwhatsapp_failedMessage failed
enqueuedSkipped (message queued)

Gupshup sends events with this structure:

{
"type": "message-event",
"payload": {
"type": "delivered",
"gsId": "gupshup-message-id",
"destination": "+1234567890",
"externalId": "your-message-id"
}
}
FieldDescription
typeAlways message-event for status updates
payload.typeDelivery status
payload.gsIdGupshup’s internal message ID
payload.destinationRecipient phone number
payload.externalIdYour external message reference
{
"success": true,
"processed": 1
}
  1. In your Gupshup dashboard, configure the callback URL for your WhatsApp app.
  2. Set the URL to your platform’s Gupshup webhook endpoint.
  3. Configure your network/firewall to only allow requests from Gupshup’s IP ranges.