Aller au contenu

Webhook payloads

Ce contenu n’est pas encore disponible dans votre langue.

Webhook requests are HTTP POST with a JSON or form-encoded body. Structure depends on content type and event.

With content type application/json, the body looks like:

payload.json
{
"eventUuid": "0f29a0a2-3a6f-44a4-b2a2-5d7b3f1b1f9b",
"eventType": "ENVELOPE_SIGNED",
"eventTime": 1704067200000,
"webhookUuid": "webhook-uuid",
"teamUuid": "team-uuid",
"data": {
"workspaceUuid": "workspace-uuid",
"envelopeUuid": "envelope-uuid",
"recipientEmail": "[email protected]",
"recipientName": "John Doe"
}
}

Top-level fields are always present. data varies by event (see below).

EventWhen it firesTypical data fields
ENVELOPE_CREATEDNew envelope createdworkspaceUuid, envelopeUuid
ENVELOPE_SENTEnvelope sent to recipientsworkspaceUuid, envelopeUuid, optional recipients
ENVELOPE_OPENEDRecipient opens envelope (first view)workspaceUuid, envelopeUuid, optional recipient
ENVELOPE_SIGNEDA recipient signsworkspaceUuid, envelopeUuid, recipientEmail, recipientName
ENVELOPE_COMPLETEDAll required signatures collectedworkspaceUuid, envelopeUuid, documentUuid, finalRevisionVersion
ENVELOPE_DECLINEDRecipient declinesworkspaceUuid, envelopeUuid, optional reason, decliner
ENVELOPE_CANCELEDSender cancels envelopeworkspaceUuid, envelopeUuid, optional reason

Use this event to download the signed document and proof when an envelope is done:

ENVELOPE_COMPLETED
{
"eventType": "ENVELOPE_COMPLETED",
"eventTime": 1704067200000,
"data": {
"workspaceUuid": "workspace-uuid",
"envelopeUuid": "envelope-uuid",
"documentUuid": "document-uuid",
"finalRevisionVersion": 1
}
}

With application/x-www-form-urlencoded, the payload is in a single form field payload (JSON string):

form field
payload={"eventUuid":"...","eventType":"ENVELOPE_SIGNED",...}

When verifying signatures, use the raw form value (e.g. payload=...) as the signed body, not the parsed JSON.

Subnoto detects Discord and Slack webhook URLs and adapts the payload to their APIs. The structure above applies to custom endpoints with JSON or form content type.