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 umdouble 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 ostatus
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.
Updated over 1 year ago