Disparos de Mensagens
Mensagem Fixa com Template
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
 - 🔑 Autenticação
 - ⚙️ Parâmetros da Requisição
 - 📦 Estrutura da Resposta
 - 💡 Exemplos de Uso
 - ⚠️ Tratamento de Erros
 - ⏱️ Timeout
 - ✨ Boas Práticas
 - 🔄 Endpoints Relacionados
 
🎯 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
| Campo | Tipo | Obrigatório | Descrição | 
|---|---|---|---|
template | string | Sim | Nome do template pré-aprovado da Meta a ser utilizado | 
data | array | Sim | Array de objetos contendo informações de cada destinatário | 
externalCampaignId | string | Não | Identificador externo de campanha para rastreio | 
🔧 Estrutura do Objeto em data
| Campo | Tipo | Obrigatório | Descrição | 
|---|---|---|---|
phone | string | Sim | Número de telefone | 
templateParams | array(string) | Não | Lista de parâmetros para substituição no corpo do template, na ordem definida pelo template | 
| Campos adicionais | — | Não | Quaisquer 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)