Receive webhook events from any external service. Process SMS, email, payment notifications, and custom events in real-time with our universal webhook receiver.
Webhooks are automated messages sent from one application to another when a specific event occurs. Unlike traditional APIs where you poll for updates, webhooks push data to your application instantly when something happens.
Get notified instantly when events occur
Eliminates the need for constant API checks
Trigger automated processes and integrations
Receive any webhook events from external services
/api/webhooksReceive incoming SMS messages in real-time
/api/webhooksReceive incoming emails instantly
/api/webhooksCreate an endpoint in your application that can receive HTTP POST requests. This endpoint should:
app.post('/webhooks/sms', (req, res) => {
// Process webhook data
console.log('SMS received:', req.body);
// Return success response
res.status(200).json({ received: true });
});Set up the webhook URLs in your service provider's dashboard:
In your Twilio Console, go to Phone Numbers → Manage → Active Numbers
https://yourdomain.com/api/webhooksIn Mailcow admin panel, configure webhook settings
https://yourdomain.com/api/webhooksSend a test message to verify your webhook is working correctly.
curl -X POST https://yourdomain.com/api/webhooks \
-H "x-tenant-id: YOUR_TENANT_ID" \
-H "x-customer-id: YOUR_CUSTOMER_ID" \
-H "x-webhook-event: test" \
-H "Content-Type: application/json" \
-d '{
"message": "Test webhook payload",
"timestamp": "'$(date -u +%Y-%m-%dT%H:%M:%SZ)'"
}'Received when an SMS message arrives at your Twilio number.
{
"From": "+1234567890",
"To": "+0987654321",
"Body": "Hello, this is a test message!",
"MessageSid": "SM1234567890abcdef",
"AccountSid": "AC1234567890abcdef",
"FromCity": "New York",
"FromState": "NY",
"FromZip": "10001",
"FromCountry": "US",
"ToCity": "Los Angeles",
"ToState": "CA",
"ToZip": "90210",
"ToCountry": "US",
"SmsMessageSid": "SM1234567890abcdef",
"NumMedia": "0",
"NumSegments": "1"
}Received when an email arrives in your Mailcow mailbox.
{
"from": "sender@example.com",
"to": ["recipient@yourdomain.com"],
"cc": [],
"bcc": [],
"subject": "Important Update",
"text": "This is the plain text version of the email.",
"html": "<p>This is the <strong>HTML</strong> version of the email.</p>",
"messageId": "msg_1234567890@example.com",
"date": "2024-01-15T10:30:00Z",
"attachments": [],
"mailbox": "inbox",
"size": 1024,
"priority": "normal"
}Verify that webhooks are genuinely from Ringslack using signature validation.
Always use HTTPS URLs for webhook endpoints to encrypt data in transit.
Keep logs of webhook deliveries for debugging and audit purposes.
Return HTTP 200 within 5 seconds to avoid timeout issues.
Design your endpoint to handle duplicate webhook deliveries gracefully.
Process webhook data in background jobs to avoid blocking responses.
Start receiving real-time notifications from any service and build powerful automated workflows with Ringslack webhooks. Process events instantly and scale your integrations.