WebHook (POSTBack)
Webhooks (POSTBack)
Webhook é uma forma de recebimento de informações quando um evento acontece. O webhook na prática, é a forma de receber informações entre dois sistemas de uma forma passiva.
Na D4Sign, quando um documento for assinado por um signatário, finalizado ou cancelado, ou seja, atingir a fase FINALIZADO ou CANCELADO, iremos disparar um evento HTTP POST para a URL que foi informada no documento.
Além disso, quando um e-mail não for entregue ao signatário, iremos, também, disparar um evento HTTP POST para a URL que foi informada no documento.
O evento que dispara o WEBHOOK ocorre apenas quando o documento for assinado por uma das partes, for finalizado ou cancelado e, também, quando um e-mail não for entregue ao signatário cadastrado.
O disparo ocorre em FORM-DATA
Retornos enviados para a sua URL via POST (Webhook versão 1.0)
{
"uuid": "UUID-DOCUMENT",
"type_post": "1",
"message": "Finished document"
}{
"uuid": "UUID-DOCUMENT",
"type_post": "2",
"message": "E-mail not sent",
"email": "[email protected]"
}{
"uuid": "UUID-DOCUMENT",
"type_post": "3",
"message": "Cancelled document"
}{
"uuid": "UUID-DOCUMENT",
"type_post": "4",
"message": "Signed",
"email": "[email protected]"
}ATENÇÃO: IMPORTANT
Retornos enviados para a sua URL via POST (Webhook versão 2.0)
{
"uuid": "UUID-DOCUMENT",
"type_post": "1",
"message": "Finished document",
"event_datetime": "yyyy-mm-ddThh:mm:ssZ",
"document_name": "Document name",
"signers": [
{
"uuid": "signer uuid",
"email": "[email protected]",
"name": "John Doe",
"signed_at": "yyyy-mm-ddThh:mm:ssZ",
"identification_number": "Signer Identification Number"
}
]
}{
"uuid": "UUID-DOCUMENT",
"type_post": "2",
"message": "E-mail not sent",
"event_datetime": "yyyy-mm-ddThh:mm:ssZ",
"document_name": "Document name",
"signer": {
"uuid": "Signer uuid",
"email": "[email protected]"
},
"error_details": {
"category": "General error category",
"reason": "Delivery failure reason or subtype",
"smtp_code": "SMTP server response error code",
"diagnostic_message": "Complete diagnostic message returned by e-mail server"
}
}{
"uuid": "UUID-DOCUMENT",
"type_post": "3",
"message": "Cancelled document",
"event_datetime": "yyyy-mm-ddThh:mm:ssZ",
"document_name": "Document name",
"cancellation_message": "Cancel message sent by sender"
}{
"uuid": "UUID-DOCUMENT",
"type_post": "4",
"message": "Signed",
"event_datetime": "yyyy-mm-ddThh:mm:ssZ",
"signer": {
"uuid": "Signer UUID", // If signer doesn't have an account, value is 'Null' ,
"email": "[email protected]",
"identification_number": "Signer Identification Number" // If signer doesn't have an account, value is 'Null'
}
}ATENÇÃO: Sugerimos a utilização http://requestcatcher.com/ para os testes. Esses serviços fornecem uma URL que irá coletar as requisições HTTP para apresentá-las de forma fácil.
Tentativas de disparo
Se a URL cadastrada no documento estiver indisponível, tentaremos efetuar 6 novas requisições, conforme abaixo:
Tentativa 1: 0 min.
Tentativa 2: após 1 hora.
Tentativa 3: após 1 hora.
Tentativa 4: após 1 hora.
Tentativa 5: após 6 horas.
Tentativa 6: após 6 horas.
Tentativa 7: após 12 horas.
Portanto, o webhook será perdido somente se a URL cadastrada estiver indisponível por mais de 27 horas.
