Webhooks
Outbound webhooks you receive, and inbound webhooks we receive.
Outbound — you receive these
A workspace integration posts JSON to an HTTPS endpoint you own when something happens in a project. Configure them through the integrations reference.
| Requirement | Detail |
|---|---|
| Scheme | HTTPS only. HTTP URLs are rejected when the integration is created. |
| Reachability | The URL is validated against SSRF rules, so private and link-local addresses are refused. |
| Response | Return 2xx promptly. Do your work asynchronously. |
Testing one before you rely on it
POST /v1/projects/{projectId}/lead-alert-webhook/test sends a synthetic lead alert to the project's configured endpoint and reports what happened, so you can confirm delivery without waiting for a real lead.
curl -X POST 'https://api.dev.oprag.ai/v1/projects/proj_abc123/lead-alert-webhook/test' \
-H 'Authorization: Bearer <JWT>' Inbound — we receive these
| Endpoint | From | Verified by |
|---|---|---|
POST /v1/billing/webhook | The billing provider | Provider signature |
POST /v1/slack/events | Slack Events API | Slack signing secret |
GET/POST /v1/webhooks/whatsapp | Verify token and signature |
These are called by the provider, not by you. They are documented in platform, integrations, and channels.
Ready to ship?
Get started free