Overview
Configure webhook endpoints to receive real-time notifications about job status changes. This endpoint returns a portal link where you can manage your webhook configurations.Webhook event delivery is currently under development. The configuration portal is fully functional, but events are not yet being sent.
How It Works
1
Request Portal Link
Call this endpoint to get your unique portal URL
2
Visit Portal
Open the portal link in your browser
3
Add Endpoints
Configure one or more webhook URLs to receive events
4
Test & Save
Test your endpoints and save the configuration
Portal Features
The webhook configuration portal allows you to:- Add Multiple Endpoints - Configure different URLs for different event types
- Set Authentication - Add headers or basic auth to your webhooks
- Filter Events - Choose which events to receive at each endpoint
- Test Endpoints - Send test events to verify your setup
- View Logs - See delivery attempts and debug failed webhooks
Webhook Security
Each webhook request includes security headers for verification:Verifying Webhook Signatures
Webhook Events (Coming Soon)
Once enabled, you’ll receive events for:Job Status Events
Event Types
Event | Description |
---|---|
job.created | New async job created |
job.processing | Job started processing |
job.completed | Job completed successfully |
job.failed | Job failed with error |
job.cancelled | Job was cancelled |
Example Implementation
Express.js Webhook Handler
Python Flask Handler
Best Practices
Endpoint Security
Endpoint Security
- Use HTTPS endpoints only
- Implement signature verification
- Add IP allowlisting if possible
- Use authentication headers
Error Handling
Error Handling
- Return 2xx status for successful receipt
- Implement idempotency to handle retries
- Log all received events
- Handle timeouts gracefully
Performance
Performance
- Process webhooks asynchronously
- Respond quickly (< 5 seconds)
- Queue events for processing
- Implement proper concurrency controls
Troubleshooting
Common Issues
Issue | Solution |
---|---|
Not receiving webhooks | Check endpoint URL is publicly accessible |
Signature verification fails | Ensure you’re using the correct secret |
Timeouts | Process webhooks async and respond quickly |
Duplicate events | Implement idempotency using webhook-id |
Testing Your Endpoint
Before going live:- Use webhook testing tools like ngrok for local development
- Send test events from the portal
- Verify signature validation works
- Test error handling and retries
- Monitor initial production events closely
Next Steps
Authorizations
API key for authentication
Response
Portal link generated
Portal URL for webhook configuration
Example:
"https://app.svix.com/app-portal/..."