Docublock
Referencia de la API

Webhooks

Docublock notifica a tu sistema cuando cambian tus documentos. La URL y el secreto se configuran por organización desde el panel.

Configuración: registra la URL de tu webhook y su secreto en app.docublock.co/organizacion.

Eventos

EventoCuándo se dispara
document.sent_for_signatureEl documento se envió a los firmantes.
document.fully_signedTodos los firmantes firmaron.
document.cancelledEl documento fue cancelado.
document.rejectedUn firmante rechazó la firma.

Payload

Docublock hace un POST a tu URL con este cuerpo:

json
{
  "event": "document.fully_signed",
  "timestamp": "2026-04-24T14:22:03Z",
  "document_id": "665f1a2b3c4d5e6f7a8b9c0d",
  "envelope_id": "RAD-20260424-1a2b3c4d",
  "source": "nuwwe",
  "contract_type": "contrato_arrendamiento",
  "signer": {
    "email": "maria@ejemplo.com",
    "identification": "1019234567",
    "cellphone": "+573001112233"
  },
  "signing_url": "https://app.docublock.co/validar-identidad/..."
}

Verificación de firma (HMAC)

Cada entrega incluye encabezados de verificación:

HeaderDescripción
X-Docublock-SignatureHMAC-SHA256 del cuerpo, en hexadecimal, firmado con tu secreto.
X-Docublock-EventNombre del evento.
Content-Typeapplication/json

Recalcula el HMAC del cuerpo crudo con tu secreto y compáralo con el header (Node.js):

js
const crypto = require("crypto");

const expected = crypto
  .createHmac("sha256", WEBHOOK_SECRET)
  .update(rawBody)            // cuerpo crudo, sin parsear
  .digest("hex");

const valid = crypto.timingSafeEqual(
  Buffer.from(expected),
  Buffer.from(req.headers["x-docublock-signature"]),
);

Entrega y reintentos

Tu endpoint debe responder 2xx. Si falla, Docublock reintenta hasta 3 veces con backoff exponencial (1s, 2s, 4s) y un timeout de 10s por intento. El webhook solo se entrega si está habilitado y tiene URL y secreto configurados.

Trusted by companies around the world

Docublock

© 2025 docublock. All rights reserved.

FacebookLinkedInX
Docublock