Generic webhook
Use a generic webhook when you want Qodex run results to flow into your own system. Common uses include sending results to Microsoft Teams, Discord, PagerDuty, a CI service, an internal dashboard, or a small relay that creates tickets.Webhook options
Qodex can send outbound webhooks in two places:| Option | When it fires | Best for |
|---|---|---|
| Schedule webhook | After a scheduled run finishes. | Team notifications and recurring checks. |
callback_url on a trigger request | After a webhook-triggered run finishes. | CI jobs that need a completion callback. |
Schedule webhook
Add a webhook URL to a schedule in Schedules > Notifications. If the URL is not a Slack webhook URL, Qodex sends a generic JSON payload:null or empty arrays, so consumers can rely on a stable shape.
Trigger callback URL
When you trigger a run from CI, includecallback_url in the request body.
Securing your endpoint
Outbound payload signing is not currently implemented. Protect the endpoint with one or more of these controls:- A long random path token.
- A network allowlist.
- A relay that validates the request before forwarding it.
- Idempotency keyed by
testRunId.
Troubleshooting
If your endpoint does not receive a payload:- Confirm the URL is reachable from the Qodex deployment.
- Confirm the endpoint returns a 2xx response.
- Check whether the schedule’s notification rule allows sending for that run.
- Check server logs for webhook delivery failures.
Next steps
Run tests via webhook
Trigger a run and pass a completion callback.
Run tests on a schedule
Add a webhook URL to a recurring policy.
Slack
Use the Slack-formatted version of the same dispatcher.
Integrations
Return to all integrations.