Documentación ›
Webhook de estado › Webhook de estado — WhatsApp Meta
POST
Webhook de estado — WhatsApp Meta
POSThttps://app.sendapp.ai/api/whatsapp-meta/set_webhook
Registra (POST) una URL en tu servidor para recibir en tiempo real los eventos de estado de los mensajes de Meta (sent, delivered, read, failed) y los eventos entrantes. Cada evento de webhook de Meta se reenvía tal cual a tu URL mediante HTTP POST. Usa DELETE para eliminar el webhook registrado.
Tu servidor debe responder con HTTP 200 en un plazo de 5 segundos. Los errores en tu endpoint se ignoran silenciosamente.
Parámetros
apikey
obligatorio
Tu API Key.
token
obligatorio
Token de la cuenta.
url
opcional
La URL de tu servidor (HTTPS). No necesaria para DELETE.
Solicitud
# Registrar el webhook
curl -X POST 'https://app.sendapp.ai/api/whatsapp-meta/set_webhook' \
-H 'Content-Type: application/json' \
-d '{ "apikey": "YOUR_API_KEY", "token": "YOUR_ACCOUNT_TOKEN", "url": "https://your-server.com/webhook" }'
# Eliminar el webhook
curl -X DELETE 'https://app.sendapp.ai/api/whatsapp-meta/set_webhook' \
-H 'Content-Type: application/json' \
-d '{ "apikey": "YOUR_API_KEY", "token": "YOUR_ACCOUNT_TOKEN" }'<?php
// Registrar el webhook
$ch = curl_init('https://app.sendapp.ai/api/whatsapp-meta/set_webhook');
curl_setopt_array($ch, [
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => ['Content-Type: application/json'],
CURLOPT_POSTFIELDS => json_encode([
'apikey' => 'YOUR_API_KEY',
'token' => 'YOUR_ACCOUNT_TOKEN',
'url' => 'https://your-server.com/webhook',
]),
]);
echo curl_exec($ch);
curl_close($ch);// Registrar el webhook
const res = await fetch('https://app.sendapp.ai/api/whatsapp-meta/set_webhook', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
apikey: 'YOUR_API_KEY',
token: 'YOUR_ACCOUNT_TOKEN',
url: 'https://your-server.com/webhook'
})
});
console.log(await res.json());Respuesta (200 OK)
{
"status": "success",
"message": "Webhook URL saved successfully."
}Error
{
"status": "error",
"message": "Instance not found"
}