Criipto
  1. Webhooks
  2. Events

Webhooks will be executed as POST requests against the URL you have defined on your signature order. The URL will be used as-is, no parameters will be stripped.

The POST request will contain a JSON body similar to the events shown below.

You can use the values included in the webhook body to query the GraphQL API for more details.

SIGNATORY_SIGNED

Triggered when a signatory successfully signs the order.

{
  "event" = "SIGNATORY_SIGNED",
  "signatureOrderId" = "[GraphQL ID]",
  "signatoryId" = "[GraphQL ID]"
}

SIGNATORY_REJECTED

Triggered when a signatory rejects the signature order via the UI.

{
  "event" = "SIGNATORY_REJECTED",
  "signatureOrderId" = "[GraphQL ID]",
  "signatoryId" = "[GraphQL ID]",
  "reason" = "[REASON]" | null
}

SIGNATORY_SIGN_ERROR

Triggered when a signatory experiences an error as part of signing.

{
  "event" = "SIGNATORY_SIGN_ERROR",
  "error" = "[ERROR MESSAGE]",
  "signatureOrderId" = "[GraphQL ID]",
  "signatoryId" = "[GraphQL ID]"
}

SIGNATORY_SIGN_LINK_OPENED

Triggered when a signatory opens the sign link href

{
  "event" = "SIGNATORY_SIGN_LINK_OPENED",
  "signatureOrderId" = "[GraphQL ID]",
  "signatoryId" = "[GraphQL ID]"
}

SIGNATORY_DOWNLOAD_LINK_OPENED

Triggered when a signatory opens the download link downloadHref

{
  "event" = "SIGNATORY_DOWNLOAD_LINK_OPENED",
  "signatureOrderId" = "[GraphQL ID]",
  "signatoryId" = "[GraphQL ID]"
}

SIGNATORY_DOCUMENT_STATUS_CHANGED

Triggered when a signatory opens, approves or rejects a document.

{
  "event" = "SIGNATORY_DOWNLOAD_LINK_OPENED",
  "signatureOrderId" = "[GraphQL ID]",
  "signatoryId" = "[GraphQL ID]",
  "documentId" = "[GraphQL ID]",
  "status" = "OPENED|APPROVED|REJECTED|%future%"
}

SIGNATURE_ORDER_EXPIRED

Triggered when a signature order has expired and is cleaned up.

{
  "event" = "SIGNATURE_ORDER_EXPIRED",
  "signatureOrderId" = "[GraphQL ID]"
}

WEBHOOK_VALIDATION

Triggered when a signature order is created with webhook validation.

Make sure to respond with 200/OK our your signature order will not be created.

{
  "event" = "WEBHOOK_VALIDATION"
}

Query example

query SignatoryWebhook($signatoryId: ID!) {
  signatory(id: $signatoryId) {
    status

    signatureOrder {
      id
    }
  }
}