O endpoint External Notification Template permite o disparo de notificações personalizadas via WhatsApp utilizando templates pré-aprovados pela Meta, com parâmetros substituíveis conforme definidos em cada template.


📑 Índice


🎯 Visão Geral

O endpoint External Notification Template é responsável por:


🔑 Autenticação

Para utilizar o endpoint, inclua no cabeçalho da requisição:

Authorization: Bearer {seu-token-de-acesso}

⚙️ Parâmetros da Requisição

📋 Campos Principais

CampoTipoObrigatórioDescrição
templatestringSimNome do template pré-aprovado da Meta a ser utilizado
dataarraySimArray de objetos contendo informações de cada destinatário
externalCampaignIdstringNãoIdentificador externo de campanha para rastreio

🔧 Estrutura do Objeto em data

CampoTipoObrigatórioDescrição
phonestringSimNúmero de telefone
templateParamsarray(string)NãoLista de parâmetros para substituição no corpo do template, na ordem definida pelo template
Campos adicionaisNãoQuaisquer outras informações necessárias para negócios

📦 Estrutura da Resposta

A resposta segue o padrão de respostas Tolky:

{
  "code": 200,
  "data": {
    "trackingId": "abc123",
    "timestamp": "2025-07-06T12:34:56.789Z",
    "results": [
      {
        "status": "queued",
        "phone": "553199999999",
        "campaignId": "abc123",
        "message": "Mensagem enviada para processamento"
      }
    ],
    "summary": {
      "totalItems": 1,
      "validItems": 1,
      "skippedItems": 0,
      "queuedItems": 1,
      "failedItems": 0
    },
    "processedItems": [
      {
        "originalData": {
          "phone": "553199999999",
          "templateParams": ["param1","param2"],
        },
        "processedData": {
          "phone": "553199999999",
          "templateParams": ["param1","param2"],
        },
        "status": "queued",
        "phone": "553199999999",
        "campaignId": "abc123",
        "message": "Mensagem enviada para processamento"
      }
    ],
    "error": null,
    "time": 1234,
    "message": "1 mensagens foram enviadas para processamento em fila. O processamento ocorrerá em segundo plano e as notificações serão enviadas conforme forem processadas."
  },
  "message": "OK"
}

💡 Exemplos de Uso

  • Tab Title

  • Tab Title

curl --location '{base-url}/api/externalAPIs/public/externalNotificationTemplate' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer {User-Access-Token}' \
--data-raw '{
    "template": "order_confirmation",
    "externalCampaignId": "camp123",
    "data": [
      {
        "phone": "553199999999",
        "templateParams": ["João","Pedido #1234"],
      },
      {
        "phone": "553188888888",
        "templateParams": ["Maria","Pedido #5678"],
      }
    ]
  }'

⚠️ Tratamento de Erros

⏱️ Timeout

Todas as requisições têm timeout de 60 segundos. Se exceder, retorna 408 (Request Timeout).


✨ Boas Práticas

🔄 Endpoints Relacionados

  • POST /api/externalAPIs/public/externalNotificationAI (Envio com IA)

Ver documentação completa