API de ingestión
Puedes enviar alertas a AlertHub desde cualquier sistema con nuestra API de ingestión universal. Es el mecanismo principal para enviar datos a AlertHub.
¿Prefieres email? También puedes enviar alertas por email — sin peticiones HTTP.
Endpoint
POST https://api.thealerthub.com/sendAlert
Parámetros
Puedes pasar parámetros en el cuerpo JSON o como parámetros de consulta (URL).
Parámetros principales
Estos son los campos reservados que usa la lógica de AlertHub:
ah_key: (Obligatorio) La Secret Key de tu proyecto.ah_title: (Obligatorio) Resumen breve del evento.ah_description: (Opcional) Contexto detallado.ah_level: Uno deinfo,warning,critical. Por defectoinfo.ah_source: (Opcional) Identificador de origen (p. ej. “Stripe”, “AWS”).
Prioridad de parámetros
Puedes combinar ambos métodos. Por ejemplo, pon el ah_key en la URL (más fácil de verificar) y el resto de datos en el cuerpo JSON.
Nota: Si un parámetro está en la URL y en el cuerpo, el valor del cuerpo (POST) tiene prioridad.
Variables personalizadas
Cualquier otro campo que envíes y que NO sea uno de los parámetros ah_* se trata como variable personalizada.
- Estas variables se pueden mostrar en el título o la descripción de la alerta con sintaxis mustache (p. ej.
{{user_id}}). - Son útiles para depurar (p. ej.
user_id,transaction_amount,error_code). - Puedes enviar objetos JSON anidados como variables personalizadas y se renderizan con mustache. Por ejemplo,
{{user.name}}.
Constructor de webhooks
Hemos creado una herramienta para generar y probar tus URLs de webhook con facilidad.
Abrir el personalizador y constructor de webhooks
Ejemplos
1. Uso mixto (clave en la URL, datos en el cuerpo)
Es un patrón habitual para dejar el cuerpo limpio o cuando el sistema configura los secretos más fácilmente en la URL.
curl -X POST 'https://api.thealerthub.com/sendAlert?ah_key=YOUR_PROJECT_KEY&ah_source=MyServer' \
-H 'Content-Type: application/json' \
-d '{
"ah_title": "Disk Space Low",
"ah_level": "warning",
"ah_description": "Disk usage is {{disk_usage}} on {{mount_point}}",
"disk_usage": "95%",
"mount_point": "/var/log"
}'
En este ejemplo:
ah_keyyah_sourcevienen de la URL.disk_usageymount_pointson variables personalizadas.
2. Petición JSON completa
curl -X POST 'https://api.thealerthub.com/sendAlert' \
-H 'Content-Type: application/json' \
-d '{
"ah_key": "YOUR_PROJECT_KEY",
"ah_title": "Payment Failed",
"ah_description": "Payment failed for customer {{customer.id}}",
"ah_level": "critical",
"ah_source": "Stripe",
"customer": {
"id": "cus_123",
"email": "[email protected]"
},
"amount": 4900,
"currency": "usd"
}'