Setting Up Webhooks
1
Go to Channels
Navigate to Channels in the sidebar.
2
Add Webhook Channel
Click Add Channel and select Webhook.
3
Enter Webhook URL
Enter the URL that should receive notifications.
4
Configure Settings
- Set a name for the webhook
- Add custom headers if needed
- Choose notification types
5
Save
Click Add Channel to complete setup.
Webhook Payload
CertWatch sends a JSON payload to your endpoint:Event Types
| Event | Description |
|---|---|
certificate.expiring | Certificate is within alert threshold |
certificate.expired | Certificate has expired |
certificate.renewed | New certificate detected |
certificate.error | Error checking certificate |
HTTP Details
Request Method
All webhooks usePOST requests.
Headers
Custom Headers
You can add custom headers for authentication:Response Handling
CertWatch expects:| Response Code | Meaning |
|---|---|
| 2xx | Success - notification delivered |
| 4xx | Client error - check configuration |
| 5xx | Server error - will retry |
Retries
If your endpoint returns an error, CertWatch will retry:- 1st retry: 1 minute
- 2nd retry: 5 minutes
- 3rd retry: 30 minutes
- Final retry: 2 hours
Use Cases
PagerDuty Integration
Zapier Integration
Connect to Zapier’s webhook trigger to automate workflows:- Create tickets in Jira
- Send SMS via Twilio
- Update spreadsheets
- Trigger custom automations
Custom Monitoring
Post to your own systems:- Update internal dashboards
- Trigger renewal automation
- Log to custom systems
- Integrate with ITSM tools
Security
Best practices:- Use HTTPS - Always use secure endpoints
- Verify source - Check the
User-Agentheader - Use secrets - Require authentication headers
- Validate payload - Verify the JSON structure
Testing Webhooks
Send Test
- Go to Channels
- Find your webhook
- Click Send Test
- Verify your endpoint receives the test payload
Local Development
For testing locally, use a tunnel service:Troubleshooting
Webhook Not Receiving Data
- Verify the URL is publicly accessible
- Check your server logs for incoming requests
- Ensure your firewall allows CertWatch IPs
- Test with a service like webhook.site
Invalid Payload
- Verify you’re parsing JSON correctly
- Check the Content-Type header handling
- Log the raw request body for debugging

