Webhook Email Forwarder
A simple, elegant solution for debugging webhooks by forwarding them directly to your email
Version 1.0 | Made with ❤️ by Andy Dixon
Overview
This webhook service captures incoming HTTP requests and forwards complete request details (headers, body, metadata) to your specified email address.
Email Delivery
Receive webhook data directly in your inbox
Secure
Email validation and XSS protection built-in
Instant
Real-time webhook processing and forwarding
How It Works
- You configure a third-party service to send webhooks to this URL with your email encoded in the path
- When a webhook request arrives, the service captures all request data
- The complete request details are formatted into a readable HTML email
- The email is sent to your specified address
- A confirmation response is returned to the webhook sender
Perfect for: Debugging webhooks, testing integrations, monitoring API callbacks, and understanding third-party service payloads.
Usage
Basic URL Format
The URL format is simple - just append your URL-encoded email address to the domain:
https://webhooks.dixon.rs/{email-address}
URL Encoding Your Email
The @ symbol must be URL-encoded as %40:
webhooks.dixon.rs/john%40example.com
Example Requests
cURL - POST Request with JSON
curl -X POST https://webhooks.dixon.rs/test%40example.com \
-H "Content-Type: application/json" \
-d '{"event": "user.created", "user_id": 12345}'
cURL - GET Request with Parameters
curl https://webhooks.dixon.rs/test%40example.com?event=test&id=123
JavaScript - Fetch API
fetch('https://webhooks.dixon.rs/test%40example.com', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
event: 'order.completed',
order_id: 'ORD-789',
total: 99.99
})
});
Python - Requests Library
import requests
response = requests.post(
'https://webhooks.dixon.rs/test%40example.com',
json={'event': 'payment.received', 'amount': 250.00},
headers={'X-Custom-Header': 'MyValue'}
)
print(response.text)
Important: Make sure to URL-encode your email address. Most programming languages and tools have built-in functions for this (e.g., encodeURIComponent() in JavaScript, urllib.parse.quote() in Python).
What to Expect
Immediate HTTP Response
When your webhook is successfully received, you'll get an immediate response:
Webhook received and forwarded to: test@example.com
Request data:
Array
(
[event] => test
[id] => 123
)
Email Contents
Within moments, you'll receive a styled HTML email containing:
Request Timestamp
Exact date and time when the webhook was received
Request Information
IP address, HTTP method (GET/POST/etc), and Content-Type
Request Headers
All HTTP headers sent with the request
Request Body
Complete raw body content (JSON, XML, form data, etc.)
PHP Variables
Parsed GET, POST, REQUEST, and FILES superglobals for easy access
Subject Line: Emails arrive with the subject "‼️ Webhook Request Received - [timestamp]" for easy filtering and identification.
Error Handling
Invalid Email Address
If the email address in the URL is invalid or missing, you'll receive:
Invalid email address provided in URL path.
Validation: The service validates email addresses using PHP's built-in FILTER_VALIDATE_EMAIL filter to ensure proper formatting.
Security Features
- Email Validation: Only valid email addresses are accepted
- XSS Protection: All output is sanitized using
htmlspecialchars()
- No Data Storage: Webhook data is forwarded immediately and not stored on the server
- Error Logging: Failed email attempts are logged for monitoring
Privacy Note: Anyone with your webhook URL can send data to your email address. Only use this service for testing and debugging purposes. Do not use for sensitive production data without additional authentication.
Supported Features
HTTP Methods
- GET
- POST
- PUT
- PATCH
- DELETE
- Any custom method
Content Types
- application/json
- application/x-www-form-urlencoded
- multipart/form-data
- text/plain
- text/xml
- Any custom content type
Common Use Cases
Debugging
See exactly what data third-party services are sending to your webhooks
Integration Testing
Test webhook integrations before implementing full handlers
Monitoring
Monitor webhook activity and payload changes over time
Documentation
Capture real examples for API documentation
Development
Quickly test webhook flows during development
Troubleshooting
Diagnose issues with webhook payloads and headers
Tips & Best Practices
Email Filtering
Create an email filter for the subject line "‼️ Webhook Request Received" to organize incoming webhooks in your inbox.
Use Plus Addressing
Use email plus addressing (e.g., yourname+github%40gmail.com) to track which services are sending webhooks.
Timestamp in Emails
Check the "Date Received" field in emails to verify webhook timing and debug delivery delays.
Parse the Body
The raw body section contains the exact payload - perfect for copying into your code for testing.
Quick Start
Get started in 3 simple steps:
1
Encode Your Email
Replace @ with %40 in your email address
2
Configure Webhook
Use webhooks.dixon.rs/{your-email} as the webhook URL
3
Check Your Inbox
Receive detailed webhook data instantly in your email
Try it now!
curl -X POST https://webhooks.dixon.rs/YOUR-EMAIL-HERE \
-d '{"test": "Hello World!"}'
Built with PHP and ADHD medication
© 2025-2026 Andy Dixon | webhooks.dixon.rs