Este passo a passo vai do nada até uma mensagem entregue no WhatsApp do seu cliente. São quatro chamadas, escritas em curl. Traduza para a linguagem que você usa.

Antes de começar

Você precisa de duas informações, as duas descritas em Autenticação:
  • o número da conta, algo como 12345
  • a chave de API, em Minha conta › Integrações
Guarde as duas em variáveis para não repeti-las:

1. Confirme que a chave funciona

O endpoint de etiquetas é o teste mais barato. Ele lê pouco e existe em toda conta.
Resposta esperada:
Se vier 401 com corpo vazio, o problema está nos cabeçalhos. O checklist de 401 resolve os casos mais comuns.

2. Descubra o ID do canal

Mensagem sempre sai por um canal. Liste os canais da conta para achar o ID do canal de WhatsApp:
Guarde o Id do canal que você vai usar. Ele é fixo, então descubra uma vez, salve na sua configuração e não repita esta chamada em produção.

3. Crie um contato

Telefone é o único campo obrigatório. Use o formato internacional, só dígitos: 55 mais DDD mais número.
A resposta é 201 Created com o contato criado, já com o Id gerado.
Já tem esse contato na base? Use PUT /v1/contatodechat, que localiza o contato pelo telefone e atualiza, sem precisar do Id. Se o telefone não existir, ele devolve 404. Essa é a base do laço de sincronização: tenta o PUT, e cria com POST só quando vier 404.

4. Envie a mensagem

O canal vai no caminho. O destinatário e o texto, no corpo.
A mensagem entra na conversa do contato e aparece na caixa de entrada do time, como qualquer outra.
Enviar mensagem por WhatsApp tem regras da própria Meta. Fora da janela de 24 horas desde a última mensagem do cliente, só passa template aprovado, por POST /v1/message/SendTemplate/{idCanal}. O guia do canal WhatsApp oficial explica a janela.

Variações úteis

Próximos passos

Recursos

Os 28 recursos da API e o que cada um cobre.

Paginação e filtros

Como percorrer listas grandes sem perder ou repetir registros.

Erros

O que cada código de resposta significa e como tratar.

Enumerações

O significado de cada valor numérico dos campos de enumeração.