Criar, obter ou atualizar contatos no banco de dados da empresa.
Nó Contact
O nó Contact (contact) cria, recupera ou atualiza um contato no banco de dados WhatsWave da empresa. As operações são selecionadas pelo seletor de operation template.
Encontre-o na paleta WhatsWave em Automações.
Figura 1: Nó Contact — operação create com telefone e custom fields
O que faz
| Aspecto | Comportamento |
|---|---|
| Node type | contact |
| Executor | http_request |
| Operations | Create, Get, Update |
| Outputs | contact |
Contatos são indexados por telefone dentro da empresa. Nós de CRM e mensagens frequentemente referenciam o mesmo número.
Operação: Create contact (contact_op_create)
Endpoint: POST /contacts/create
| Campo | Key | Obrigatório | Descrição |
|---|---|---|---|
| Company | company_id | Auto | Oculto |
| Phone | phone_number | Sim* | E.164 — identificador principal |
| Name | name | Não | Nome de exibição |
email | Não | Endereço de e-mail | |
| Tags | tags | Não | Array JSON de strings de tag |
| Custom fields | custom_fields | Não | Objeto JSON — campos definidos pela empresa |
*Telefone é a chave de busca usual no create.
Operação: Get contact (contact_op_get)
Endpoint: GET /contacts/get
| Campo | Key | Obrigatório | Descrição |
|---|---|---|---|
| Company | company_id | Auto | Oculto |
| Phone | phone_number | Sim | Contato a recuperar |
Operação: Update contact (contact_op_update)
Endpoint: PUT /contacts/update
| Campo | Key | Obrigatório | Descrição |
|---|---|---|---|
| Company | company_id | Auto | Oculto |
| Contact ID | id | Condicional | UUID — alternativa à busca por telefone |
| Phone | phone_number | Condicional | Atualizar ou identificar registro |
| Name | name | Não | |
email | Não | ||
| Tags | tags | Não | Array JSON |
| Custom fields | custom_fields | Não | Objeto JSON |
Forneça id ou phone_number para identificar o contato.
Dicas e boas práticas
- Normalize telefone para E.164 em um nó Variable antes de create/get — evita contatos duplicados.
- Use
custom_fieldspara IDs de integração (ID de cliente Shopify, chave CRM externa). - Get antes de update ao mesclar dados de webhook com tags existentes — a API pode substituir arrays inteiramente.
- Create cedo no fluxo — nós CRM e Send seguintes podem usar
{{contact_1.contact.phone_number}}. - Tags como array JSON — ex.:
["lead","webinar"], não strings separadas por vírgula (diferente das tags de conversa).
Exemplos de uso
Exemplo 1 — Captura de lead via webhook
Trigger: Webhook — envio de formulário.
Fluxo:
- Contact — Create
phone_number:{{trigger.body.phone}}name:{{trigger.body.name}}email:{{trigger.body.email}}tags:["website_form"]
- Send — mensagem de boas-vindas
- CRM — upsert do card
Exemplo 2 — Enriquecer a partir de webhook de pagamento
Trigger: Webhook — pagamento confirmado.
Fluxo:
- Contact — Get,
phone_number:{{trigger.body.payer_phone}} - Contact — Update
custom_fields:{ "last_payment_at": "{{trigger.body.paid_at}}" }
Exemplo 3 — Padrão upsert com Condition
Fluxo:
- Contact — Get
- Condition — se contato existe → Update; Senão → Create
FAQ
Create vs CRM upsert?
Contact gerencia a agenda de contatos. CRM gerencia cards do funil — frequentemente ambos no mesmo fluxo.
IDs legados contact_create, contact_get, contact_update?
Mapeados para template unificado contact.
Qual formato para tags?
Array JSON no Contact; nó Conversations usa strings separadas por vírgula para tags de chat — não confunda os dois.
Artigos relacionados
Este artigo foi útil?
Precisa de mais ajuda? Falar com suporte