---
title: "Document eSign completion webhook"
method: POST
path: "documentsESignCompleted"
tags: ["Docs Webhooks"]
---

# Document eSign completion webhook

`POST documentsESignCompleted` (webhook)

Webhook sent when a document e-signing process is completed. The event will be sent at the end of the signing process. If the request has two signers and only one has signed, the event will not be sent until the second signer completes signing.

In the right panel, open **Examples** and select **Payload Example** to see a real payload.

## Headers

- `bob-signature` string, required

## Payload

- DocumentsESignCompletedEvent: Base webhook event structure
  - `companyId` integer, required: The company ID
  - `type` 'documents.eSign.completed', required: This event is sent at the end of the document e-signing process. If the request has two signers and only one has signed, the event will not be sent until the second signer completes their signing.
  - `triggeredBy` string, required: Indicates who/what triggered the event. When set to "system", it means the event was triggered by an automated background process. Could also be an employee ID if triggered directly by a user action.
  - `triggeredAt` string, date-time, required: The timestamp when the event occurred
  - `version` string, required: The webhook version
  - `data` object, required: Event payload. Schema is defined by the webhook-integrations service (ESignCompletedEventData).
    - `documentId` integer, required: The backend ID of the document that was signed.
    - `employeeId` string, required: The document owner — the employee whose document folder contains the signed document. Represents the person the document was requested for (the target/recipient of the eSign request).
    - `downloadUrl` string, required: The download URL for the signed document.
    - `signedBy` string, required: The last signer who completed the document — the person who added the final signature that triggered the completed event. May be the employee, a manager, HR representative, or any other required signer.

## Acknowledgement `200`

Webhook received successfully

## Other responses

- `400`: Invalid webhook payload

---

[API](https://skmtc.dev/hibob/apis/docs-api.md) - [All operations](https://skmtc.dev/hibob/apis/docs-api/llms.txt) - [OpenAPI document](https://skmtc.dev/hibob/apis/docs-api/revisions/993e1722de78?raw)
