Webhooks
Trigger Agent tasks from external systems via HTTP, or push Agent results to external services.Inbound Triggers
External systems (Zapier, n8n, custom scripts) can trigger Agent tasks by sending HTTP requests to the Cron trigger endpoints.Webhook Trigger
Event Trigger
System Event Trigger
Outbound Webhooks
Configure outbound webhooks in Settings > Channels using the Webhook Channel. Agent results are automatically pushed as structured JSON POST requests to your configured URL.Security
Inbound
Inbound webhook triggers require anx-webhook-secret header that must match the secret configured in the Cron job. Requests without a valid secret are rejected with 401.
Outbound
All outbound webhook requests are protected by multiple security layers:- SSRF Protection: Every outbound HTTP request passes through
secure_request()with DNS pinning and private network blocking. Webhook URLs pointing to internal IPs (127.0.0.1, 10.x, 192.168.x, etc.) are automatically rejected. - HMAC-SHA256 Signatures: Outbound webhook payloads include an
X-Webhook-Signatureheader (sha256=...) for receivers to verify request authenticity. Configure a secret per webhook for strongest verification. - Redirect Validation: Outbound requests follow redirects with per-hop SSRF validation — a redirect to an internal address is blocked even if the original URL is public.
- Exponential Backoff Retry: Transient failures (5xx, timeouts) are retried with exponential backoff; permanent errors (4xx) fail immediately.
GitHub Integration
The built-in GitHub Channel provides native webhook integration for PR reviews, issue management, and push event handling.- Navigate to Settings > Integrations > GitHub
- Enter your Personal Access Token (PAT)
- Configure the Webhook Secret
- GitHub events (PR opened, issues, push) automatically trigger Agent responses with full context
Setup via GUI
- Navigate to Settings > Automation (Cron)
- Create a new scheduled task
- Select “Webhook” as the trigger type
- Configure the webhook path and secret
- Bind an Agent to execute when triggered
Natural Language Setup
You can also configure webhook triggers via conversation:“Help me create a webhook trigger that processes incoming data from our payment system”The Agent will automatically set up the trigger, generate the webhook URL and secret, and guide you through the external system configuration.