Events to subscribe to
At minimum, subscribe to the terminal verification events:| Event | Meaning |
|---|---|
verification.successful | The verification completed successfully. |
verification.rejected | The contact rejected the verification. |
verification.failed | ezyshield could not verify the supplied details. |
verification.cancelled | The verification was cancelled or superseded. |
verification.expired | The contact did not complete the flow in time. |
verification.error | An unexpected error occurred. |
| Event | Meaning |
|---|---|
verification.pending | The verification is in progress. |
verification.confirmation_ready | The contact confirmation step is ready. |
verification.confirmation_notification_sent | ezyshield sent the contact notification. |
Recommended handler behavior
Verify the signature
Verify the webhook signature before processing the body. ezyshield signs outbound webhooks with the subscription secret returned when the subscription is created.
Record the event ID
Store processed event IDs. If ezyshield retries a delivery, your app can safely ignore the duplicate side effects.
Update local verification state
Use the verification ID in the event data to update the record in your system. Store the latest status and event timestamp.
Signature verification
By default, ezyshield sends the HMAC-SHA256 signature in theSignature header. Verify the signature against the raw request body before parsing or mutating the payload.
Store the webhook subscription secret when the subscription is created. The secret is only returned in the create response.
Idempotency pattern
Webhook delivery can be retried. Your handler should be safe to run more than once for the same event.Managing subscriptions
Create and manage webhook subscriptions from the Dashboard or through the API. API management requireswebhook_subscription:read and webhook_subscription:write; receiving webhook deliveries does not require those abilities on the key that created the verification.
For subscription fields and event types, see Webhooks.