Twilio Webhooks
How to Test Twilio Webhooks Locally (2026)
Twilio webhooks notify your application about SMS, voice call, and messaging events. Twilio uses a request validation signature based on your Auth Token and the full URL of your webhook endpoint.
Signature Header
X-Twilio-Signature
Algorithm
HMAC-SHA1
Setup Guide
- 1Create a free HookSense endpoint at hooksense.com
- 2Copy your unique webhook URL
- 3In Twilio Console → Phone Numbers → Configure the webhook URL
- 4For SMS: set the 'A message comes in' webhook to your HookSense URL
- 5For Voice: set the 'A call comes in' webhook to your HookSense URL
- 6Send a test SMS or make a test call to trigger the webhook
- 7View headers, body, and query params in HookSense in real-time
Common Twilio Webhook Events
SMS status callbackVoice status callbackIncoming SMSIncoming voice callRecording completedTranscription completedMessage delivery statusConversation eventsForward to Localhost
Use HookSense CLI to forward Twilio webhooks directly to your local development server:
npx hooksense listen -p 3000 --path /api/integrations/twilioNo ngrok or tunnel setup required. Install with npm i -g hooksense or use npx.
Tips & Best Practices
- Twilio sends webhooks as application/x-www-form-urlencoded, not JSON
- Twilio's signature validation includes the full URL — make sure it matches exactly
- Use HookSense replay to re-test your handler without sending another SMS
- Set custom responses in HookSense to return TwiML during testing
Related
Start Testing Twilio Webhooks
Create a free endpoint and receive your first Twilio webhook in seconds.
Get Started Free