/v1/whatsapp/*. O escopo é propositalmente restrito: ciclo de vida dos modelos mais o envio de mensagens de modelo. A conexão da WABA é feita apenas pelo navegador (OAuth) e continua no painel.
Todos os comandos aceitam, na posição
<account-id>, o UUID interno da conta social (obtido em accounts:list) ou o ID de provedor da WABA da Meta. O controller v1 resolve os UUIDs para IDs de provedor no servidor.whatsapp:templates
Lista todos os modelos registrados em uma conta do WhatsApp Business, incluindo status (APPROVED, PENDING, REJECTED), categoria, idioma e estrutura de componentes.
Exemplos
whatsapp:create-template
Envia um novo modelo à Meta para aprovação. A aprovação dos modelos pode levar de minutos a horas; consultewhatsapp:templates repetidamente para ver o status passar de PENDING para APPROVED.
Informe a definição do modelo com
--file ou --data (se as duas forem passadas, --file prevalece; se nenhuma for passada, o comando gera erro). O payload segue o esquema da WhatsApp Cloud API da Meta. Campos mínimos:
name: minúsculas, com sublinhadoslanguage: por exemplo,en_UScategory:MARKETING,UTILITYouAUTHENTICATIONcomponents[]:HEADER,BODY,FOOTER,BUTTONS
accountId (de --account) ao payload antes de enviar, portanto você não precisa incluí-lo no JSON.
Exemplos
whatsapp:delete-template
Exclui um modelo permanentemente. Depois de excluído, ele não pode ser restaurado; você precisa reenviá-lo com um novo nome.
Sem
-y, o comando pergunta Delete template "<name>" on account <id>? (y/N) e é cancelado, a menos que você responda y.
Exemplos
whatsapp:send
Envia uma mensagem de modelo aprovado para um destinatário. Esta é a principal forma de iniciar uma conversa no WhatsApp fora da janela de atendimento ao cliente de 24 horas.--components e --file são opcionais (um modelo sem variáveis não precisa de nenhuma das duas). Se as duas forem informadas, --file tem precedência.
Os parâmetros dos componentes preenchem as variáveis ({{1}}, {{2}} etc.) do modelo aprovado. O formato segue a Cloud API da Meta:
Exemplos
whatsapp:upload-media
Envia mídia de cabeçalho (imagem/vídeo/documento) para uso no componenteHEADER de um modelo. Retorna um identificador de mídia que você pode referenciar ao criar ou enviar modelos.
Informe exatamente uma entre
--url e --base64; o comando gera erro se você não informar nenhuma ou informar as duas.
Exemplos
Visão geral
- As mensagens de sessão (respostas em até 24 horas após uma mensagem recebida) passam por
inbox:reply, sem necessidade de modelo. - As mensagens de modelo (primeiro contato ou fora da janela de 24 horas) usam
whatsapp:sende exigem um modelo aprovado pela Meta. - Conectar uma conta do WhatsApp Business continua sendo feito apenas pelo navegador: conclua o OAuth no painel primeiro; depois, seus scripts da CLI poderão referenciar a conta conectada.