Webhook de envio
ÚLTIMA ATUALIZAÇÃO: 14 DE OUTUBRO DE 2026O webhook de envio manda os dados de um lead do DestCRM para o seu sistema: quando uma automação chega ao bloco Webhook, o DestCRM faz um POST em JSON no endereço que você cadastrou, com os campos que você escolheu. Funciona com qualquer sistema que receba chamadas HTTPS, como n8n, Make, Zapier ou uma API própria.
Como configurar
O envio é um bloco de ação da automação: o gatilho decide quando os dados saem, e o bloco decide para onde e quais campos.
- Em Automações, crie uma automação ou abra uma existente e escolha o gatilho (por exemplo, Lead entra em etapa ou Lead criado).
- No construtor, em Ações, adicione o bloco Webhook e ligue-o ao passo anterior.
- Em URL do webhook, cole o endereço do seu sistema, começando com https://.
- Em Dados do lead a enviar, marque os campos. Sem nenhum marcado, vão os padrões: nome, telefone, e-mail, origem e valor.
- Clique em Testar webhook: o DestCRM envia um lead de exemplo e mostra a resposta do seu sistema.
- Salve e ative a automação.
Para configurar e testar, o usuário precisa da permissão Editar em Automações. O mesmo bloco pode aparecer em várias automações, cada uma com o seu endereço e os seus campos.
Requisição
Cada envio é um POST com corpo JSON, que espera uma resposta 2xx em até 10 segundos.
| ITEM | COMO É |
|---|---|
| Método | POST |
| Cabeçalhos | Content-Type: application/json (texto em UTF-8) e User-Agent começando com DestCRM-Webhook/1 |
| Endereço | O cadastrado no bloco, exatamente como está, inclusive o que vier depois do ? |
| Quando sai | Assim que a automação chega ao bloco: segundos depois do gatilho, ou depois das esperas que vierem antes dele |
| Tempo limite | 10 segundos para o seu sistema responder |
| Resposta esperada | Qualquer código 2xx (200, 201, 202 ou 204); o corpo da resposta é ignorado |
| Redirecionamento | Não é seguido: uma resposta 301 ou 302 conta como falha |
| Endereços recusados | Rede interna (localhost, IPs privados) e endereços que não existem |
Cadastre o endereço final: se o seu servidor redireciona de http:// para https:// ou acrescenta uma barra no fim, o envio falha.
Corpo da mensagem
O corpo tem sempre as mesmas cinco chaves; dentro de lead vão só os campos marcados no bloco.
| CHAVE | O QUE É |
|---|---|
evento | Texto: automacao.webhook no envio real; automacao.webhook.teste no botão Testar. |
automacao | Objeto com id e nome da automação que enviou. |
lead | Objeto com os campos marcados (tabela abaixo). |
lead_id | Identificador do lead no DestCRM (texto), ou null quando a automação começou numa conversa sem lead. |
enviado_em | Data e hora do envio em UTC, formato ISO 8601 (texto). |
Campos do lead
Cada linha mostra a chave no JSON e, embaixo, o nome do campo na tela do bloco.
| CHAVE NO JSON | TIPO E FORMATO |
|---|---|
nameNome completo | Texto. |
phoneTelefone | Texto, só dígitos, com o código do país e o DDD: 5571999998888. |
phone2Telefone secundário | Texto ou null, no mesmo formato. |
emailE-mail | Texto ou null. |
deal_valueValor do negócio | Número em reais, com ponto decimal (1997.5), ou null. |
deal_statusStatus do negócio | open (em aberto), won (ganho) ou lost (perdido). |
lead_sourceOrigem do lead | Texto com o nome da origem cadastrada, ou null. |
sale_paymentForma de pagamento | Texto ou null. |
loss_reasonMotivo da perda | Texto ou null. |
lead_scorePontuação (scoring) | Número ou null. |
score_bandFaixa de pontuação | Texto com o nome da faixa, ou null. |
tagsTags | Lista de textos. |
assigned_userVendedor responsável | Texto com o nome do vendedor, ou null. |
funnelsFunil e etapa | Lista de até 5 itens {"funil": …, "etapa": …}, um por funil em que o lead está. A chave é no plural. |
meetingPróxima reunião | Objeto (tabela abaixo) ou null. |
created_atCriado em | Data de criação do lead em UTC, ISO 8601 (texto). |
| nome do campoCampo personalizado | A chave é o nome do campo como está cadastrado, por exemplo Cidade. Valor em texto; vazio ("") quando não preenchido. |
Status, valor, forma de pagamento e motivo da perda são os do lead no funil do gatilho da automação. Sem funil no gatilho, vem o resumo do lead: ganho se ele comprou em algum funil.
Reunião (meeting)
É a reunião do agendamento que iniciou a automação; nas outras automações, a última reunião marcada pelo lead.
| CHAVE | TIPO E FORMATO |
|---|---|
status | agendada, realizada, não compareceu ou cancelada. |
reagendada | true quando a reunião nasceu de uma remarcação. |
data | Data no formato 2026-10-20. |
hora | 14:00:00, horário de Brasília. |
duracao_minutos | Número. |
tipo_evento | Nome do evento de agendamento. |
responsavel | Nome de quem atende. |
observacoes | Texto ou null. |
Exemplo completo
{
"evento": "automacao.webhook",
"automacao": {
"id": "3c9d2f1e-8a47-4b6e-9f21-5d7a0c4e8b13",
"nome": "Enviar lead para o meu sistema"
},
"lead": {
"name": "Maria Souza",
"phone": "5571999998888",
"email": "maria.souza@exemplo.com",
"lead_source": "Instagram",
"deal_value": 1997,
"deal_status": "open",
"tags": ["evento-outubro"],
"assigned_user": "Ana Lima",
"funnels": [{ "funil": "Funil de vendas", "etapa": "Novo lead" }],
"meeting": {
"status": "agendada",
"reagendada": false,
"data": "2026-10-20",
"hora": "14:00:00",
"duracao_minutos": 30,
"tipo_evento": "Reunião de apresentação",
"responsavel": "Ana Lima",
"observacoes": null
},
"Cidade": "Salvador",
"created_at": "2026-10-14T13:05:22.123456+00:00"
},
"lead_id": "b8e41a7c-2d95-4f3a-a6c0-71e9d3f5b204",
"enviado_em": "2026-10-14T13:05:24.511Z"
}
Com os campos padrão, lead traz só name, phone, email, lead_source e deal_value. Quando a automação começou numa conversa sem lead no CRM, vão o nome e o telefone da conversa, os outros campos vêm vazios e lead_id vem null.
Respostas e erros
Uma resposta 2xx em até 10 segundos libera a automação para o próximo bloco; qualquer outra coisa conta como falha, e o DestCRM não tenta de novo.
| O QUE O SEU SISTEMA FAZ | RESULTADO NO DESTCRM |
|---|---|
| Responde 2xx em até 10 s | Envio concluído; a automação segue. |
| Responde 4xx ou 5xx | Falha: "O destino respondeu 500" (com o código recebido). |
| Não responde em 10 s | Falha: "O destino não respondeu em 10s". |
| Redireciona ou recusa a conexão | Falha: "Não foi possível conectar", com o motivo. |
- Na falha, a automação para naquele lead: os blocos depois do Webhook não rodam.
- A falha fica no histórico do lead, com o motivo, e conta nas métricas da automação.
- Responda primeiro e processe depois: devolva 200 assim que receber e trate os dados em segundo plano.
- Quando muitos leads passam pelo bloco de uma vez, como numa importação, os envios chegam em sequência rápida, alguns ao mesmo tempo.
- Cada passagem do lead pelo bloco gera um envio; se o lead passar de novo pela automação, chega outro. Em casos raros, como uma queda do servidor no meio do envio, a mesma passagem pode chegar duas vezes: use
lead_ideautomacao.idpara reconhecer repetições.
Segurança
O DestCRM não assina a chamada nem envia um token próprio: a proteção fica no endereço que você cadastra.
- Segredo no endereço: inclua um código longo e difícil de adivinhar, por exemplo
https://api.suaempresa.com/destcrm?token=8f3k2q9x7m4p1z6w, e recuse as chamadas que chegarem sem ele. O endereço vai inteiro em cada envio. - Cabeçalhos: não dá para acrescentar cabeçalhos, como Authorization. Se o seu sistema exige um, receba o envio no n8n ou no Make e repasse de lá.
- HTTPS: use um endereço com https:// para os dados viajarem criptografados.
- IP de origem: as chamadas não saem de um IP fixo; não dá para liberar o acesso por IP.
- Dados pessoais: o corpo leva nome, telefone e e-mail do lead; guarde-os com o mesmo cuidado que o CRM, conforme a LGPD.
Teste
O botão Testar webhook envia na hora um lead de exemplo, com os mesmos campos marcados e valores fictícios, sem dados reais. O resultado aparece embaixo do botão: "200 OK · lead de exemplo entregue" ou o motivo da falha.
O teste chega com evento igual a automacao.webhook.teste, automacao.id e lead_id nulos, e o seu sistema pode reconhecê-lo e descartá-lo. Com os campos padrão, ele é assim:
{
"evento": "automacao.webhook.teste",
"automacao": { "id": null, "nome": "Teste de configuração" },
"lead": {
"name": "Lead de Teste",
"phone": "5581999999999",
"email": "lead.teste@exemplo.com",
"lead_source": "Teste de webhook",
"deal_value": 1500
},
"lead_id": null,
"enviado_em": "2026-10-14T13:00:00.000Z"
}
Para ver o que chega antes de o seu sistema ficar pronto, cole no bloco um endereço de teste, como o do webhook.site ou o endereço de teste do nó Webhook do n8n.
Suporte
Dúvidas e problemas: suporte@destcrm.app.