Webhook subscription event

Sent to each subscription registered with POST /v1/webhooks for the events it chose (v1.12.0). Same headers, HMAC signatures and 72-hour retry as signingEvent, under the same webhook secret. eventId equals the X-Tvarka-Idempotency-Key header: use it to process each event once. signing is the signing at the moment of the event, as GET /v1/signings/{signingId} shows it, without ceremony links. Answer 410 Gone to remove the subscription.

postWebhooksubscriptionEvent

Payload

event'signing.signer_signed' | 'signing.signer_declined' | 'signing.signer_failed' | 'signing.completed' | 'signing.declined' | 'signing.cancelled' | 'signing.expired' | 'signing.failed' | 'form_request.opened' | 'form_request.submitted' | 'form_request.completed' | 'form_request.cancelled' | 'form_request.expired' | 'form_request.failed' required
eventIdstring required
webhookIdstring uuid required
signingIdstring uuid required
status'pending' | 'completed' | 'declined' | 'cancelled' | 'expired' | 'failed' required

pending - at least one signer can still sign. completed - every signer signed. declined - somebody declined and nobody else can still sign. expired - the window closed first. cancelled - you retracted it. failed - the signing could not be prepared.

externalIdstring
occurredAtstring date-time required
completionMode'qes_ceremony' | 'esign_ceremony' | 'sandbox_simulation'
level'esign'

Response

Acknowledged. Any 2xx stops redelivery.

Changes

Webhooks have no change history: a webhook is keyed by its event name rather than a path and method, so no recorded change can name it.