Skip to content

Verifier

Verifier<T> = (payload, headers) => VerifyResult<T> | Promise<VerifyResult<T>>

Defined in: core/src/index.ts:65

Webhook verifier function type

A verifier is responsible for:

  1. Validating the webhook signature/authenticity
  2. Parsing the payload into a typed event object

T extends WebhookEvent = WebhookEvent

Raw request body (string or Buffer)

string | Buffer

Record<string, string | undefined>

Request headers for signature verification

VerifyResult<T> | Promise<VerifyResult<T>>

The verified event wrapped in a VerifyResult

Error if verification fails

// Stripe verifier
const verifier: Verifier = (payload, headers) => {
const signature = headers['stripe-signature'];
const event = stripe.webhooks.constructEvent(payload, signature, secret);
return { event };
};
// GitHub verifier
const verifier: Verifier = (payload, headers) => {
const signature = headers['x-hub-signature-256'];
// Verify HMAC signature...
return { event: JSON.parse(payload) };
};