Ir para o conteúdo
Todos os artigos
Configuração

Webhooks de saída

Avise outro sistema no instante em que algo acontece no CRM. Você cadastra uma URL, marca os eventos que interessam e o SellioCRM envia um POST com JSON assinado sempre que um deles ocorre. Serve para integrar com ferramentas de automação, com um back-end próprio ou com o ERP da casa.

Integração por consulta periódica é lenta e cara: alguém pergunta de minuto em minuto se algo mudou. O webhook faz o contrário: o CRM avisa. Quando um registro é criado, quando uma aprovação é decidida ou quando alguém responde a uma cadência, o sistema envia uma requisição para o endereço que você indicou, com os dados do evento.

Como cadastrar

  1. Abra Configurações e vá ao grupo Canais e comunicação.
  2. Clique em Webhooks.
  3. Em URL de destino, informe o endereço que vai receber as chamadas, começando por https.
  4. Em Eventos, marque os que interessam. Vêm marcados record.created e record.updated.
  5. Clique em Criar webhook.
  6. Copie o segredo exibido no cartão Segredo do webhook. Ele aparece uma única vez.

Eventos disponíveis

  • Registros: record.created e record.updated, disparados na criação e na atualização de qualquer registro dos seus objetos.
  • Cadências e fluxos: flow.enrolled, flow.message_sent, flow.replied, flow.step_completed e flow.completed.
  • Aprovações: approval.requested, approval.approved e approval.rejected.

Como validar que a chamada veio do SellioCRM

Toda chamada leva dois cabeçalhos além do tipo de conteúdo: x-sellio-event, com o nome do evento, e x-sellio-signature, no formato sha256 seguido do código de autenticação calculado sobre o corpo exato da requisição com o seu segredo. No seu servidor, recalcule esse código a partir do corpo recebido e compare. Se não bater, descarte: a origem não é o seu CRM.

POST https://seu-sistema.com/webhook
x-sellio-event: record.created
x-sellio-signature: sha256=<código calculado com o seu segredo>
content-type: application/json

{
  "event": "record.created",
  "tenantId": "...",
  "objectApiName": "opportunity",
  "recordId": "...",
  "data": { "name": "Metalúrgica Andrade", "amount": 48000 },
  "timestamp": "2026-03-12T15:42:10.000Z"
}
Exemplo: Uma distribuidora quer abrir um pedido no ERP assim que a oportunidade é ganha. Ela cadastra a URL do integrador, marca record.updated, guarda o segredo e, no próprio integrador, confere a assinatura, olha o campo de etapa dentro de data e cria o pedido apenas quando a etapa é a de ganho.

Entregas recentes

Abaixo da lista de webhooks, a tabela Entregas recentes mostra as últimas tentativas de envio com o horário, o evento e o resultado: um selo verde com o código de resposta quando deu certo, um selo vermelho com o erro quando não deu. É por aí que se descobre um endereço fora do ar ou um servidor devolvendo erro.

Limites e comportamento

  • O envio é feito na hora, com tempo máximo de espera de quatro segundos, e não trava a operação de quem gravou o registro.
  • Não há nova tentativa automática. Se o seu servidor estiver fora do ar, o evento aparece como falha na tabela de entregas e não é reenviado. Projete o seu lado para tolerar isso.
  • Só são aceitos endereços http e https que apontem para a internet pública. Endereços internos, de rede local ou de serviços de metadados de nuvem são recusados por segurança.
  • A caixa Ativo e Pausado ao lado de cada webhook interrompe os envios sem apagar a configuração.
  • O segredo não pode ser reexibido. Se você o perdeu, exclua o webhook e crie outro.

Quem pode fazer

Criar, pausar e excluir webhooks exige permissão para administrar configurações, porque a operação envia dados dos seus registros para fora do CRM. A lista de entregas é restrita à sua própria organização.

Perguntas comuns

  • Recebo o evento mas o corpo parece incompleto: cada evento carrega o conjunto próprio de campos. Os de registro trazem objeto, identificador do registro e os dados; os de fluxo trazem o fluxo, a inscrição e o registro; os de aprovação trazem a solicitação, o assunto e o status.
  • Posso receber eventos de exclusão? A lista de eventos disponíveis é a que aparece na tela.
  • A assinatura nunca bate: calcule o código sobre o corpo bruto recebido, sem reserializar o JSON, porque qualquer mudança de espaço altera o resultado.

Abrir este artigo dentro do sistema

Leu e quer ver funcionando?

A conta é grátis e o manual inteiro está disponível dentro do sistema, com um assistente que responde pelo próprio conteúdo.

Criar conta grátis
Webhooks de saída · Sellio