Criar lead via JavaScript
Use esta página quando o envio do lead é controlado pelo seu próprio código — por exemplo, um funil em React/Vue, um formulário de múltiplos passos ou qualquer fluxo em que você não usa os atributos data-cx-*.
cxs('lead', ...) só funciona se o loader do Browser SDK estiver instalado no <head> da página. É ele que define o cxs global. Sem o loader, window.cxs fica indefinido e a chamada não faz nada. Veja a Introdução para instalar o script.
Com o loader presente, você chama a criação do lead diretamente com cxs('lead', ...).
Exemplo mínimo
Campos
O objeto de dados aceita:
email— e-mail do lead. Obrigatório.name— nome do lead.telephone— telefone do lead. Envie apenas os dígitos (ex.:11999999999ou5511999999999).utmSource,utmMedium,utmCampaign,utmTerm,utmContent— atribuição de tráfego.customFields— objeto com valores para os campos customizados do lead. Veja abaixo.
Os UTM presentes na URL da página são incluídos automaticamente. Você só precisa passar os campos utm* no payload se quiser sobrescrever os valores da URL — o valor que você passa tem precedência.
Campos customizados
Passe um objeto customFields para preencher campos customizados do lead no CRM. Cada chave identifica um campo existente — pode ser o id, o nome interno (fieldName) ou o rótulo (displayName) do campo, resolvidos nessa ordem:
Regras:
- O campo customizado precisa já existir no CRM. Chaves que não correspondem a nenhum campo são ignoradas silenciosamente — este endpoint não cria campos.
- A correspondência é case-insensitive para
fieldNameedisplayName.
Em formulários HTML comuns, o mesmo é feito de forma declarativa marcando o input com data-cx-field. Veja Formulários simples → Campos customizados.
Callback
O segundo argumento é opcional e recebe um erro quando a criação falha:
Sem callback, a chamada continua funcionando; você só não recebe o resultado.
Tracking automático
Quando o lead é criado com sucesso, o SDK dispara automaticamente o evento contact_captured. Você não precisa disparar esse evento manualmente. Veja Tracking.
Quando usar
Use cxs('lead', ...) quando:
- o envio do formulário é feito pelo seu próprio JavaScript
- a página é uma aplicação (React, Vue, etc.) sem um
<form>tradicional para marcar - você coleta os dados em etapas e decide o momento exato de criar o lead
Para formulários HTML comuns, prefira a abordagem declarativa com data-cx-ingest-form.