CRM

Webhook

Receba leads de sistemas externos direto no CRM do eKyte via URL de integração, criando ou atualizando contato e negociação automaticamente.

Objetivo da Rotina de Webhook de Leads

Receber leads de sistemas externos diretamente no CRM do eKyte por meio de uma URL de integração. A cada requisição, o eKyte cria ou atualiza o contato/pessoa e a negociação (tarefa) correspondente, sem cadastro manual, usando os dados enviados no corpo da requisição e os padrões configurados no CRM.

Como iniciar a utilização em 3 passos

Gere e copie a URL do webhook

Na tela de Configurações de Vendas do CRM, no bloco de integração de leads, gere e copie a URL.

Defina os padrões de destino

Ainda em Configurações de Vendas, configure o workspace, o fluxo de trabalho e o tipo de tarefa padrão. Eles serão usados sempre que a requisição não informar esses campos (ver "Regras de processamento").

Configure o sistema externo

No sistema que enviará os leads, faça uma requisição para a URL copiada, enviando o corpo em JSON com os dados do lead e o token de autenticação da integração (ver "Corpo da requisição").

Corpo da requisição

O webhook recebe um objeto JSON com a seguinte estrutura:

{
  "token": "string",
  "name": "string",
  "email": "string",
  "phone": "string",
  "company_name": "string",
  "document": "string",
  "address": "string",
  "address_number": "string",
  "district": "string",
  "complement": "string",
  "zip_code": "string",
  "city": "string",
  "state": "string",
  "workflow": 0,
  "workspace": 0,
  "task_type": 0,
  "mode": "create",
  "lead_source": null
}

Campos

A tabela abaixo lista os campos aceitos no corpo da requisição, indicando o comportamento esperado de cada um.

Apenas token e email são obrigatórios. Os demais são opcionais e, quando não informados, são ignorados ou assumem o valor padrão definido no CRM.

CampoTipoObservações
tokenstringToken de autenticação da integração.
namestringNome do lead.
emailstringE-mail do lead. É a chave utilizada para verificar se o contato já existe na base.
phonestringTelefone do lead.
company_namestringNome da empresa associada ao lead.
documentstringDocumento (CPF/CNPJ).
addressstringLogradouro.
address_numberstringNúmero do endereço.
districtstringBairro.
complementstringComplemento do endereço.
zip_codestringCEP.
citystringCidade.
statestringEstado.
workflowintID do fluxo de negociação. Não é obrigatório. Ver "Fluxo de trabalho e tipo de tarefa".
workspaceintID do workspace. Não é obrigatório. Ver "Workspace".
task_typeintID do tipo de tarefa. Não é obrigatório. Ver "Fluxo de trabalho e tipo de tarefa".
modestringModo de operação: create ou update. Valor padrão: create. Ver "Modo (create ou update)".
lead_sourcestringOrigem do lead.

Além dos campos acima, é possível enviar campos adicionais no mesmo objeto. Esses campos são tratados como campos personalizados (ver "Campos personalizados").

Regras de processamento

Workspace

Informe o ID do workspace. O campo não é obrigatório.

  • Se o workspace for informado e o ID for válido, será considerado o workspace informado na integração.
  • Caso contrário, será considerado o workspace padrão definido nas Configurações de Vendas do CRM.

Fluxo de trabalho e tipo de tarefa

Ambos os campos recebem o ID do respectivo registro e não são obrigatórios. A resolução segue a ordem abaixo:

  • Se o fluxo (workflow) for informado, o ID for válido e existir um tipo de tarefa padrão para esse fluxo, serão considerados esse fluxo e esse tipo de tarefa.
  • Se o fluxo não existir ou não houver tipo de tarefa padrão para ele, e o tipo de tarefa (task_type) for informado com um ID válido, será utilizado esse tipo de tarefa e o fluxo associado a ele.
  • Se nenhuma das condições anteriores for atendida, será utilizado o tipo de tarefa padrão definido nas Configurações de Vendas do CRM.
Ordem de resolução do fluxo de trabalho e do tipo de tarefa

Campos personalizados

Qualquer campo enviado além dos campos previstos no corpo da requisição é considerado um campo personalizado. A identificação do campo segue esta ordem:

  1. ID do campo personalizado no eKyte;
  2. Identificador interno, caso o ID não seja encontrado;
  3. Nome de exibição (label), caso o identificador interno não seja encontrado.

A regra vale tanto para campos personalizados de Lead/Pessoa quanto para campos personalizados de Negociação. Se houver um campo personalizado de Lead e outro de Negociação com o mesmo identificador interno ou o mesmo nome de exibição, a informação será gravada em ambos quando esse campo for informado.

Exemplo de identificação de campos personalizados

Modo (create ou update)

O campo mode define se a negociação será criada ou atualizada. Valores possíveis: create e update. Quando não informado, o padrão é create.

A regra de processamento é a seguinte:

  • Se o lead (pessoa/contato) não existir na base, independentemente do modo, serão criados um contato/pessoa e uma tarefa.
  • Se o contato já existir — a verificação é feita apenas pelo e-mail — ele será atualizado caso haja informações diferentes das que já estão na base. Em seguida, é buscada a tarefa mais recente, ativa e em negociação daquele contato/lead:
    • Se essa tarefa existir e o modo for create, uma nova tarefa é criada.
    • Se essa tarefa existir e o modo for update, a tarefa existente é atualizada (apenas os campos personalizados).
    • Se não houver tarefa na base, uma nova tarefa é criada.

Leia Também

Esta página foi útil?