API
Iniciar sesión
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"
}