Roboteka
Roboteka · Robôs · Webhook tolerante a falhas

Webhook tolerante a falhas

O robô «Webhook tolerante a falhas» envia uma solicitação HTTP a um endpoint externo com novas tentativas em processos de negócios e robôs do Bitrix24 (Alaio). Verifica o código de resposta conforme as faixas selecionadas (2xx, 3xx, 4xx, 5xx mais códigos adicionais), repete as tentativas que falharam em um intervalo definido e pode notificar os usuários escolhidos em caso de falha definitiva. Retorna um indicador de entrega Y/N, o código e o corpo da resposta da última tentativa e o número de tentativas realizadas. Não é executado no modo de demonstração.

O robô entrega de forma confiável uma solicitação HTTP (GET, POST, PUT, PATCH, DELETE) a um endpoint externo e, ao contrário de uma solicitação HTTP comum, assume a entrega: decide o que conta como sucesso e repete em caso de falha. Parâmetros: URL, método, corpo e cabeçalhos em formato JSON; o conjunto de códigos de sucesso é escolhido pelas faixas 2xx/3xx/4xx/5xx mais códigos adicionais separados por vírgula (padrão 2xx); o número de tentativas é 1–10 (padrão 3), o intervalo entre as tentativas é 1–3600 segundos (padrão 60) e o tempo limite por tentativa é 1–25 segundos (padrão 10). Em caso de falha definitiva, pode notificar os usuários escolhidos com uma mensagem no chat. Casos típicos de uso: enviar de forma confiável os dados de um negócio para um sistema externo ou CRM; disparar um webhook de integração com novas tentativas garantidas quando o serviço está temporariamente indisponível; alertar a pessoa responsável se a entrega nunca for concluída. Retorna um indicador de entrega Y/N, o código HTTP e o corpo da resposta da última tentativa e o número de tentativas realizadas — verifique o Y/N na condição da etapa seguinte. O robô não é executado enquanto o Bitrix24 (Alaio) estiver no modo de demonstração.

Quais parâmetros de entrada o robô aceita?

Parâmetro Tipo Obrigatório? Padrão
URL do webhook string sim
Método HTTP (padrão POST) select POST, GET, PUT, PATCH, DELETE — POST
Corpo da solicitação string —
Cabeçalhos em formato JSON: {"Authorization":"Bearer xxx","Content-Type":"application/json"} string —
Quais códigos considerar como sucesso (padrão 2xx) select 2xx — sucesso (200–299), 3xx — redirecionamentos (300–399), 4xx — erros do cliente (400–499), 5xx — erros do servidor (500–599) — 2xx
Códigos de sucesso adicionais, separados por vírgula (p. ex. 409, 422) string —
Número de tentativas (1–10, padrão 3) int — 3
Intervalo entre tentativas em segundos (1–3600, padrão 60) int — 60
Tempo limite por tentativa em segundos (1–25, padrão 10) int — 10
Quem notificar em caso de falha na entrega user —

O que o robô retorna?

Parâmetro Tipo
Entregue (Y/N) string
Código de status HTTP da última tentativa int
Corpo da resposta da última tentativa string
Tentativas realizadas int

Quais erros o robô pode retornar?

O robô grava essas mensagens no histórico do processo de negócios quando não consegue concluir uma etapa. O texto mostra o que corrigir nas configurações ou nos dados.

  • Erro: os cabeçalhos devem ser um objeto JSON
  • Erro: nome de cabeçalho inválido: {name}
  • Erro: caracteres de controle não são permitidos no cabeçalho {name}
  • Erro: o cabeçalho {name} é definido automaticamente
  • Erro de cURL: {error}
  • Este robô não é executado enquanto o Bitrix24 estiver no modo de demonstração ou se não for possível identificar o plano.

Cenário: enviar de forma confiável os dados de um negócio para um sistema externo

  1. Um negócio entra na etapa «Pago» e um processo de negócios inicia
  2. O robô envia uma solicitação POST para a URL do sistema externo; diante de uma resposta fora de 2xx repete até 3 vezes com um intervalo de 60 segundos
  3. Com sucesso o processo continua pelo ramo Y; diante de uma falha definitiva notifica a pessoa responsável e segue pelo ramo N

Robôs semelhantes

Artigos relacionados