- Modelos oficiais: criados na conta do WhatsApp Business (WABA) do número escolhido e analisados pela Meta. Servem para iniciar conversas e para campanhas.
- Modelos internos: ficam só no Spark e não passam pela Meta.
sk_ no cabeçalho X-API-Key. URL base: https://gateway.crmspark.com.br. Veja a Introdução à API.
Endpoints
A lista traz, para cada modelo, status, categoria, idioma, nome na Meta e motivo de rejeição. O detalhe traz também
header, body, footer, buttons, variables, items e commonVariables, a lista de variáveis manuais que você informa ao enviar o modelo ou iniciar uma campanha.
Modelo oficial
EnvieisOfficial: true e estes campos:
Nome na Meta, idioma e categoria não podem ser alterados depois da criação.
Cabeçalho de mídia
Useformat IMAGE, VIDEO ou DOCUMENT e o mediaId de um arquivo enviado antes por POST /v1/messaging/media. Esse arquivo vai para a Meta como exemplo e é o mesmo usado nos envios.
Variáveis
Numere as variáveis como{{1}}, {{2}}, … no modelo inteiro (cabeçalho, corpo e URL dos botões). O Spark converte para a numeração que a Meta espera em cada parte.
Valores de
source:
As variáveis
common aparecem em commonVariables no detalhe do modelo, com as chaves var1, var2, … que você usa no envio e nas campanhas.
Editar um modelo oficial
- O conteúdo (texto, botões e exemplos) só pode ser editado quando o status é
APPROVEDouREJECTED. A resposta volta com statusPENDINGaté a Meta concluir a análise. - Nos demais status, inclusive
PENDING, você pode mudar o rótulo e o título e o tipo das variáveis. Mudanças de texto, botão ou exemplo são recusadas comMESSAGE_TEMPLATE_NOT_EDITABLE. - A Meta limita quantas vezes um modelo aprovado pode ser editado. Quando o limite é atingido, a API devolve
MESSAGE_TEMPLATE_META_ERRORcom a mensagem da Meta. - Depois de excluir um modelo oficial, a Meta não permite criar outro com o mesmo nome por cerca de 30 dias.
Modelo interno
EnvieisOfficial: false, name e items. A Meta não é chamada.
Cada item tem order (posição, a partir de 0), type (text, image, audio, video ou document) e text ou mediaId, conforme o tipo.
Erros
Se já existir um modelo com o mesmo rótulo (
name) na organização, a API responde 409 com a mensagem “Já existe um template com esse nome.”.
