Skip to main content
Inviolet posts webhook events to your HTTP endpoint when something worth knowing happens out-of-band — most commonly when a human approver grants or denies a pending intent request. Every event is HMAC-signed; verify the signature before trusting the payload.

Configure a destination

App dashboard → Settings → Webhooks → Add endpoint.
  • URL — your HTTPS endpoint
  • Signing secret — copy this; you cannot view it again
  • Events — pick approval.granted, approval.denied, audit.export.completed, etc.

Payload shape

Headers

Verify with the Node SDK

The Node SDK ships a constant-time signature verifier:

Verify by hand

signature = sha256=hex(HMAC-SHA256(secret, timestamp + "." + body)). Compare with constant-time equality. The SDK verifyWebhookSignature function exposes this primitive directly if you need to verify without constructing the full event object.

Retries

Inviolet retries 4xx and 5xx responses with exponential backoff for 24 hours. After that, the event is moved to a dead-letter queue visible in the dashboard.