Webhooks salientes
WhatsUY puede enviar eventos a tu servicio en tiempo real. Configurás el webhook por referencia y por modo.
Configurar webhook
POST /references/hookconf
Authorization: Bearer <jwt>
{
"reference": 12345,
"mode": "messages",
"url": "https://tu-servicio.com/webhooks/whatsuy",
"headers": { "Authorization": "Bearer <tu-secreto>" }
}
WhatsUY no firma criptográficamente los webhooks: dependé de tu propio secreto en headers.
Modos soportados
| Modo | Descripción |
|---|---|
messages | Mensajes entrantes y salientes. |
status | Cambios de estado de mensajes (delivered, read, failed). |
data | Valores guardados por bots y extractors. |
calls | Eventos de llamadas. |
config | Cambios de configuración de la referencia. |
suscripcion | Eventos de suscripción / pago. |
Payload típico (messages)
{
"type": "message.in",
"reference": 12345,
"chatId": "59891234567@s.whatsapp.net",
"message": {
"id": "BAE5...",
"type": "text",
"text": "Hola!",
"timestamp": 1729456789,
"fromMe": false
}
}
Payload típico (status)
{
"type": "message.status",
"reference": 12345,
"messageId": "BAE5...",
"status": "delivered",
"timestamp": 1729456790
}
Payload típico (data)
{
"type": "bot.value",
"reference": 12345,
"chatId": "59891234567@s.whatsapp.net",
"botId": "...",
"extractorId": "...",
"key": "nombre",
"value": "Juan",
"timestamp": 1729456791
}
Reintentos
Si tu endpoint responde 5xx o timeout, WhatsUY reintenta con backoff exponencial (1s, 5s, 30s, 5min, 30min). Después de 5 intentos, el evento se descarta y se loguea en el panel admin.
Detalle:
api-documentation/webhooks/.