Webhooks

Webhooks notify your systems when events happen in FyVault.

Events

EventFires when
SECRET_CREATEDNew secret added
SECRET_UPDATEDSecret value changed
SECRET_ROTATEDSecret rotated
SECRET_DELETEDSecret removed
DEVICE_REGISTEREDNew device registered
DEVICE_REVOKEDDevice access removed
DEVICE_BOOTDevice fetches secrets
POLICY_VIOLATIONA policy rule is broken

Payload Format

Webhook Payloadjson
{
  "event": "SECRET_CREATED",
  "timestamp": "2026-04-02T12:00:00.000Z",
  "org_id": "cmnh...",
  "data": {
    "secret_id": "cm12...",
    "name": "OPENAI_API_KEY",
    "secret_type": "API_KEY"
  }
}

Verifying Signatures

Every webhook includes an X-FyVault-Signature header (HMAC-SHA256):

verify-webhook.jsjavascript
const crypto = require('crypto');

const expected = crypto
  .createHmac('sha256', process.env.WEBHOOK_SECRET)
  .update(rawBody)
  .digest('hex');

const valid = req.headers['x-fyvault-signature'] === expected;

Retry Policy

Failed deliveries retry 3 times with exponential backoff:

1st retry

1 min

2nd retry

5 min

3rd retry

30 min