- Inbound — a third-party system posts events to Causeloop. Causeloop verifies the HMAC signature and ingests the payload.
- Outbound — Causeloop posts events to your endpoint when something happens (sync completed, issue ingested, pattern detected). Your endpoint verifies the signature.
Inbound webhooks
Inbound webhooks let any system push events directly into Causeloop without polling. The endpoint authenticates callers via HMAC-SHA256 — there is no Bearer token. The endpoint fails closed: a missing or invalid signature always returns401.
Endpoint
connector_id identifies which connector’s signing secret to use for verification.
Required headers
Provide one of the two headers. If you use
x-hub-signature-256, prefix the digest with sha256=.
How signature verification works
1
Get the signing secret
When you configure an inbound webhook for a connector, Causeloop generates a
signing_secret (e.g. whsec_a1b2c3...). Store it securely in your source system.2
Sign the raw body
Before sending, compute
HMAC-SHA256(signing_secret, raw_body) and include the hex digest in the x-causeloop-signature header.3
Causeloop verifies
Causeloop buffers the raw request bytes (before any JSON parsing), recomputes the HMAC using the stored secret, and compares with a constant-time comparison. A mismatch, missing signature, or missing secret all return
401.Signing an outgoing payload (sender side)
Inbound webhook response
202 Accepted — payload received, signature valid, delivery recorded.Registering an inbound webhook
To enable inbound delivery for a connector, create an outbound webhook record that references the connector. Causeloop auto-generates the signing secret:signing_secret — copy it now. Causeloop does not show it again (use the rotate endpoint to retrieve a new one).
Outbound webhooks
Outbound webhooks let Causeloop notify your systems when events occur. Causeloop signs every delivery withx-causeloop-signature. You verify the signature on your end before processing.
Create an outbound webhook
Webhook event types
Leave
event_types empty or omit it to receive all events.
Verifying outbound webhook signatures
Every outbound delivery includesx-causeloop-signature: <hex> computed as HMAC-SHA256(signing_secret, raw_body).
Rotating the signing secret
Viewing delivery history
Managing webhooks
webhooks:read for GET endpoints, webhooks:admin for POST/PATCH/DELETE.