Webhooks
Test your webhook endpoint to verify it can receive notifications from meter.Test webhook delivery
Send a sample webhook payload to verify your endpoint is configured correctly.Request body
Response
Example
Webhook payload formats
Meter sends webhooks for both successful and failed jobs. The payload structure differs based on the job status.Success payload
Sent when a job completes successfully:delivery_reason is only included in standard webhook payloads. The
slack, slack_workflow, and discord formatters cherry-pick fields for
human display and do not forward it.Failure payload
Sent when a job fails:Failure webhooks do not include
results, item_count, has_changes, or content_hash fields.Webhook types
Meter supports four webhook formats:Auto-detection rules
The webhook type is auto-detected from the URL when not explicitly set:
You can override auto-detection by setting
webhook_type explicitly when creating a schedule.
Discord and Slack Workflow types do not require a
webhook_secret. For standard and slack types, a secret is auto-generated if not provided.Webhook secrets
When a schedule has awebhook_url, Meter auto-generates a secret with a whsec_ prefix. The secret is sent in the X-Webhook-Secret header on every webhook delivery. Verify this header to ensure requests are from Meter.
See the Webhooks Guide for verification examples.
Retry behavior
Failed deliveries are retried up to 5 times with exponential backoff: 15 minutes, 30 minutes, 1 hour, 2 hours, 4 hours.- 2xx: Success, no retry
- 4xx: Permanent failure, no retry
- 5xx / timeout / connection error: Retries with backoff
Error responses
See REST API Errors for detailed error handling.
Next steps
Webhooks Guide
Learn how to handle webhook notifications
Schedules
Set up scheduled scraping with webhooks