Webhook - Integrate with external apps
Webhooks enable powerful automation by connecting Distill to external applications and services. When a monitored page changes, Distill can automatically trigger actions in your other tools, creating seamless workflows that respond to web changes in real-time.
What are Webhooks?
Webhooks are user-defined HTTP callbacks that trigger automatically when specific events occur. In Distill’s context, webhooks fire when a monitored website changes, sending data about that change to any external service you specify.
Common use cases:
- Send change notifications to project management tools (Asana, Jira, Trello)
- Log changes to databases or spreadsheets
- Trigger custom automation workflows via Zapier, Make, or n8n
- Update CRM records when competitor pages change
- Notify team channels beyond standard integrations
- Feed data into analytics or reporting systems
When you configure a webhook action in Distill, the system sends POST requests containing monitor data to your specified webhook URL whenever a change is detected.
Setting Up Webhook Actions in Distill
Webhook actions are available to paid subscribers only and can be configured for any monitor in your Watchlist.
Step-by-Step Configuration
1. Access the monitor options
Navigate to the Options page by clicking the down caret icon (▼) on your monitor and selecting Options from the context menu.

2. Add webhook action
In the Actions section, select Webhook call from the available actions list. Paste your webhook URL into the designated field.
3. Configure webhook parameters
Click Show Options below the webhook URL field to expand the parameter configuration panel. Here you can define what data to send with each POST request.

4. Configure custom headers (optional)
Click on Header under the webhook section to add custom HTTP headers if required by your receiving endpoint. This is useful for authentication tokens or API keys.
5. Save your configuration
Click Save to activate the webhook action. Distill will now send POST requests to your webhook URL each time this monitor detects a change.
Available Webhook Parameters
Distill provides dynamic variables that populate with monitor data when changes are detected. Use these parameters to customize the information sent to your webhook endpoint.
Core Parameters
| Parameter | Description | Example Output |
|---|---|---|
{{sieve.id}} |
Unique identifier of the monitor | m_abc123xyz |
{{sieve.name}} |
Display name of the monitor | Product Price Tracker |
{{sieve.tags}} |
Labels assigned to the monitor | Pricing, Competitor |
{{sieve.uri}} |
URL being monitored | https://example.com/product |
{{sieve_data.text}} |
Current text content of monitored element | $49.99 |
{{sieve_data.ts}} |
Timestamp when change was detected | 2024-08-23T14:30:00Z |
{{sieve_data.data}} |
Raw HTML data of the monitored section | <div class="price">$49.99</div> |
Note: The
{{sieve.tags}}parameter only works with cloud-based monitors, not local browser extension monitors.
Combining Parameters
You can combine multiple parameters in a single field to create formatted messages:
Example parameter combination:
{{sieve.name}} - {{sieve.uri}} - {{sieve_data.text}}
Resulting output:
Product Price Tracker - https://example.com/product - $49.99
Default Webhook Configuration
When you first add a webhook, Distill provides default parameter fields. You can customize these or add additional parameters by clicking Add Query Param.

Testing Your Webhook
Before relying on webhooks for critical workflows, verify they’re working correctly with this testing process.
Quick Test Procedure
1. Create a test monitor
Set up a monitor for a page that changes frequently, such as https://www.timeanddate.com/ (select the current time element using Visual Selector).
2. Add a webhook testing URL
Use a webhook testing service like webhook.site to get a temporary webhook URL. This service displays incoming POST requests in real-time, letting you inspect the data Distill sends.
Configure the webhook action on your test monitor using this testing URL.
3. Trigger a manual check
In your Watchlist, locate the test monitor and click the Run button to force an immediate check.

4. Verify the POST data
Open your webhook testing page (webhook.site URL) to view the incoming POST request. The URL format is https://webhook.site/#!/[your-unique-id].
Review the payload to confirm all expected parameters are present and formatted correctly.

Troubleshooting Webhook Issues
If your webhooks aren’t triggering or working as expected, check these common issues:
1. Webhook URL Accessibility
Problem: The webhook URL cannot be reached by Distill’s servers.
Solution: Ensure your webhook endpoint is publicly accessible on the internet. Localhost URLs or private network addresses won’t work with cloud monitors. If you’re using local monitors, ensure your firewall isn’t blocking the requests.
2. Subscription Status
Problem: Webhooks are not available on your plan.
Solution: Webhook actions require a paid subscription. Verify your plan status at https://accounts.distill.io/account/#/plans/.
3. Usage Quota Exceeded
Problem: You’ve reached your monthly webhook limit.
Solution: Check your current usage at https://monitor.distill.io/#/usage/monthly. Consider upgrading your plan if you regularly hit this limit, or optimize by reducing webhook calls on high-frequency monitors.
4. Authentication Requirements
Problem: Your webhook endpoint requires authentication that isn’t configured.
Solution: Use the Header section in webhook settings to add authentication tokens, API keys, or other required headers.
5. Testing with External Tools
For advanced troubleshooting, use tools like Postman to manually send test POST requests to your webhook URL. This helps isolate whether the issue is with Distill’s configuration or your receiving endpoint.