Skip to main content

Webhooks

Webhooks let you receive consent events as HTTP POST requests to your own endpoint. Use webhooks to sync consent state to your backend, CRM, or data warehouse.

Setting up a webhook

  1. Go to Dashboard → Property → Webhooks → Add Endpoint
  2. Enter your endpoint URL (must be HTTPS)
  3. Select which events to send
  4. Copy your webhook secret (used for signature verification)
  5. Save

Events

EventTrigger
consent.createdUser gives consent for the first time
consent.updatedUser changes their consent choices
consent.expiredStored consent reaches expiry date
consent.resetProperty-level consent reset applied

Payload format

{
"event": "consent.created",
"delivery_id": "del_abc123",
"timestamp": "2026-03-09T12:00:00Z",
"property_id": "prop_xyz",
"data": {
"receipt_id": "rec_def456",
"policy_id": "pol_ghi789",
"policy_version": 3,
"choices": {
"necessary": true,
"analytics": true,
"marketing": false,
"functional": true
},
"region": "DE",
"user_agent_hash": "sha256:abc...",
"ip_hash": "sha256:def..."
}
}

Verifying signatures

Always verify the X-ConsentForge-Signature header before processing. See Webhook Security for code examples.

Testing webhooks

Use the Test button in the Dashboard webhook settings to send a sample payload to your endpoint. You can also use webhook.site for local testing.

Viewing delivery history

Dashboard → Property → Webhooks → Delivery Log shows all delivery attempts with status codes and response bodies.