Getting Started with WebhookBox
WebhookBox makes it incredibly easy to test and debug webhooks. Follow this guide to get started in minutes.
In this guide:
Quick Start
Step 1: Create a Webhook Endpoint
Visit the homepage and click the "Create Free Webhook" button. You'll instantly get a unique URL that's ready to receive webhooks.
Your webhook URL will look like:
https://webhookbox.io/w/abc123xyz
Step 2: View Your Webhook Dashboard
After creating your webhook, you'll be redirected to a real-time dashboard where you can:
- See incoming requests in real-time
- Inspect request headers, body, and query parameters
- Configure custom responses
- Export requests as cURL or code
Sending Your First Webhook
Now that you have your webhook URL, let's send a test request. You can use any HTTP client or programming language.
Using cURL
curl -X POST https://webhookbox.io/w/your-webhook-id \
-H "Content-Type: application/json" \
-d '{
"event": "test.webhook",
"data": {
"message": "Hello WebhookBox!",
"timestamp": "2024-01-01T12:00:00Z"
}
}'
Using JavaScript (Fetch API)
fetch('https://webhookbox.io/w/your-webhook-id', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify({
event: 'test.webhook',
data: {
message: 'Hello WebhookBox!',
timestamp: new Date().toISOString()
}
})
})
.then(response => response.json())
.then(data => console.log('Success:', data))
.catch(error => console.error('Error:', error));
Using Python
import requests
import json
from datetime import datetime
webhook_url = 'https://webhookbox.io/w/your-webhook-id'
data = {
'event': 'test.webhook',
'data': {
'message': 'Hello WebhookBox!',
'timestamp': datetime.now().isoformat()
}
}
response = requests.post(
webhook_url,
headers={'Content-Type': 'application/json'},
data=json.dumps(data)
)
print(f"Status: {response.status_code}")
print(f"Response: {response.text}")
Understanding Request Data
When a webhook is received, WebhookBox captures and displays comprehensive information about the request:
Headers
All HTTP headers sent with the request, including:
- Content-Type
- User-Agent
- Custom headers (X-Webhook-Signature, etc.)
- Authorization headers
Body
The request payload with automatic formatting for:
- JSON with syntax highlighting
- Form data (application/x-www-form-urlencoded)
- XML
- Plain text
- Raw binary data
Query Parameters
Any query string parameters included in the URL
Metadata
Additional information about the request:
- Timestamp
- HTTP method (GET, POST, PUT, DELETE, etc.)
- IP address
- Response status code
Configuring Responses
By default, webhooks return a 200 OK response. You can customize this behavior to test different scenarios:
Custom Status Codes
Set any HTTP status code (200, 201, 400, 401, 404, 500, etc.) to test error handling in your application.
Custom Response Body
Return JSON, XML, or plain text responses. Perfect for simulating API responses or testing webhook acknowledgments.
{
"status": "success",
"message": "Webhook processed successfully",
"id": "wh_123456789"
}
Custom Headers
Add custom response headers for testing authentication flows or CORS configurations.
Authentication & Persistent Webhooks
Create a free account to unlock additional features:
Benefits of Creating an Account
- Persistent webhook URLs that don't expire
- Request history (up to 30 days)
- Custom webhook names and slugs
- API access for programmatic webhook management
- Team collaboration features (Pro plan)