Webhooks

O que é ?

Pode-se classificar um webhook como uma forma passiva de recebimento de informações entre dois sistemas, ou seja, ele funcionará como um intermediário entre dois sistemas, onde sua função é enviar informações em tempo real sobre alguma mudança que ocorreu.

📘

E autenticação ?

Nosso webhook trabalha com o confrontamento de token, ou seja, previamente você vai receber um token que corresponde ao webhook e este será enviado em todas as requisições com objetivo de realizar um double check para garantir que os dados estão sendo enviados para organização correta.

Como funciona ?

O webhook é configurado totalmente pelo lado do cliente, aconselhamos que você cadastre o webhook somente no usuário da organização que será responsável pela criação dos relatórios , quando sua configuração estiver pronta basta ir na parte de integrações da nossa dashboard e adicionar a URL do mesmo e salvar.

Após esta configuração o usuário que possui o webhook cadastrado receberá notificações via POST, caso um relatório seja criado na conta de outro usuário que pertence a mesma organização e este não possui um webhook configurado o envio de dados não será realizado.

❗️

Cadastrar o mesmo webhook em diferentes usuários

Esta prática é totalmente desaconselhada, pois isso pode causar um overload no webhook fazendo com que ele pare de realizar a sua função.

Padrão de retorno

Abaixo é mostrado um exemplo de payload que é enviado para o webhook e os seus parâmetros.

{ 
    "dados": {
        "protocolo": "{report_number}",
        "status": "{report_status}"
    }, 
    "tipo": "protocolo_status" 
}
  • dados: Este objeto trás as informações do relatório atrelado a ele, sendo elas o número e o status em que ele se encontra.

  • tipo: Este parâmetro simboliza o tipo de dado que estamos enviado, ou seja, a mudança de estado do relatório.

Tentativas de envio

A nossa API realiza por padrão 5 tentativas de envio para todos os status possíveis que um relatório pode assumir, que são: PENDENTE, PRE-PROCESSANDO,PROCESSANDO, EM ANALISE e CONCLUIDO.

Após as 5 tentativas o nosso sistema para de realizar o envio de dados automaticamente, uma outra forma para isso ocorrer é se o time-out da requisição para o webhook demorar mais de 5 segundos.

📘

Tenho que esperar as 5 tentativas de cada status ?

Não, se por algum motivo você não quer receber um status em específico basta você configurar o seu servidor para enviar uma requisição com o código 400, 404 ou 504 para o nosso sistema que as tentativas de envio para aquele status irão parar automaticamente.

Vale lembrar que caso o código enviado para o sistema seja 200 as requisições do status em especifico irão parar , já que este código significa que o POST para o webhook foi realizado com sucesso.


What’s Next