Disparos de Mensagens
Endpoint External Notification Template
Documentação completa da API que permite o disparo de notificações personalizadas via WhatsApp usando templates pré-aprovados da Meta
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)