Volver a articulos How-to

Como enviar alertas de Discord desde una API REST

Julio Andres 26 de marzo, 2026 6 min de lectura Discord · Backend · API

Discord ya no es solo para gaming. Muchos equipos de desarrollo lo usan como su herramienta principal de comunicacion — y resulta que es un gran lugar para recibir alertas de tus servidores tambien. Ocurrio un error? Mensaje en Discord. Se hizo un deploy? Mensaje en Discord. Llego un pago? Ya te haces la idea.

La pregunta es como conectarlo. Discord tiene webhooks, que funcionan, pero vienen con algunas desventajas que se vuelven molestas rapidamente. Dejame mostrarte ambos enfoques para que puedas elegir el que tenga mas sentido para tu configuracion.

Opcion 1: Webhooks de Discord (La forma nativa)

Discord te permite crear URLs de webhook para cualquier canal. Vas a la configuracion de tu servidor, eliges un canal, creas un webhook y obtienes una URL. Luego haces un POST:

Discord Webhook
curl -s -X POST \
  https://discord.com/api/webhooks/<WEBHOOK_ID>/<WEBHOOK_TOKEN> \
  -H "Content-Type: application/json" \
  -d '{
    "content": "Deploy finished: v2.4.1 is live on production."
  }'

Bastante simple. Pero esto es lo que te encontraras una vez que empieces a usarlo de verdad:

Para un proyecto personal o un hack rapido, los webhooks estan bien. Pero una vez que tienes un equipo o multiples servicios enviando alertas, se vuelve desordenado.

Opcion 2: Una API de notificaciones (La forma flexible)

En lugar de hablar con Discord directamente, envias tus alertas a una API de notificaciones que se encarga de la entrega por ti. Con NotificationsBot, la misma llamada a la API puede llegar a Discord, Telegram, Slack o Email — dependiendo de quien este suscrito al canal.

cURL
curl -s -X POST https://api.notificationsbot.com/event \
  -H "Authorization: Bearer $NOTIFICATIONSBOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "channel": "server-alerts",
    "title": "Deploy finished",
    "message": "v2.4.1 deployed to production successfully."
  }'

Eso es todo. Si tienes un suscriptor de Discord en ese canal, recibe el mensaje en Discord. Si tambien tienes a alguien en Telegram y alguien en Slack, todos lo reciben. Una llamada a la API, multiples plataformas, cero codigo extra.

La diferencia clave

Con webhooks de Discord, tu codigo esta fuertemente acoplado a Discord. Con una API de notificaciones, tu codigo solo dice "algo paso" y el enrutamiento se maneja por separado. Puedes cambiar quien recibe notificaciones y donde sin tocar una sola linea de codigo.

Configurando alertas de Discord con NotificationsBot

Si aun no tienes cuenta, aqui esta la configuracion rapida:

A partir de aqui, cada evento que envies a ese canal aparece en Discord. Toda la configuracion toma unos 5 minutos.

Ejemplos reales

Aqui hay patrones que uso en produccion. Todos funcionan de la misma manera — haz un HTTP POST, y el mensaje aparece en Discord (y donde sea que hayas configurado).

Alertas de errores desde tu backend

Python
import os
import requests

API_KEY = os.environ["NOTIFICATIONSBOT_API_KEY"]

def alert(title: str, message: str, channel: str = "errors"):
    requests.post(
        "https://api.notificationsbot.com/event",
        headers={"Authorization": f"Bearer {API_KEY}"},
        json={"channel": channel, "title": title, "message": message},
        timeout=5,
    )

# In your exception handler:
try:
    charge_customer(order)
except Exception as e:
    alert("Payment failed", f"Order #{order.id} — {e}")

Notificaciones de despliegue desde CI/CD

GitHub Actions step
# Add as the last step in your workflow
- name: Notify team
  run: |
    curl -s -X POST https://api.notificationsbot.com/event \
      -H "Authorization: Bearer ${{ secrets.NOTIFICATIONSBOT_API_KEY }}" \
      -H "Content-Type: application/json" \
      -d "{
        \"channel\": \"deployments\",
        \"title\": \"Deployed to production\",
        \"message\": \"${{ github.repository }} deployed by ${{ github.actor }}\"
      }"

Alertas de monitoreo del servidor

Node.js
// Check disk space and alert if it's getting full
const { execSync } = require("child_process");

const usage = parseInt(
  execSync("df / --output=pcent | tail -1").toString().trim()
);

if (usage > 85) {
  await fetch("https://api.notificationsbot.com/event", {
    method: "POST",
    headers: {
      "Authorization": `Bearer ${process.env.NOTIFICATIONSBOT_API_KEY}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      channel: "monitoring",
      title: "Disk space warning",
      message: `Server disk usage is at ${usage}%. Time to clean up.`,
    }),
  });
}

Discord Webhooks vs NotificationsBot

Aqui tienes una comparacion lado a lado para ayudarte a decidir:

Si Discord es la unica plataforma que usaras y tienes un solo canal que notificar, los webhooks son la opcion mas simple. Pero en el momento en que agregues una segunda plataforma, un segundo equipo, o necesites cualquier tipo de visibilidad sobre lo que se envio y cuando — una API de notificaciones te ahorra muchos dolores de cabeza.

Bonus: Combina Discord con Telegram

Una de las configuraciones mas utiles que he visto es tener el mismo canal notificando tanto a Discord (para el chat del equipo) como a Telegram (para el telefono de la persona de guardia). El equipo ve la alerta en Discord durante horas de trabajo, y el ingeniero de guardia recibe un ping en Telegram a las 3 AM.

Con NotificationsBot, esto es solo agregar dos suscriptores al mismo canal — uno de Discord, uno de Telegram. Sin cambios de codigo, sin llamadas API duplicadas. El enrutamiento esta completamente separado de la logica de tu aplicacion.

Mantenlo accionable

No inundes tu Discord con ruido. Configura canales separados para diferentes niveles de severidad — critical para cosas que necesitan accion inmediata, info para cosas que es bueno saber. Tu equipo te lo agradecera.

Envia tu primera alerta de Discord en 5 minutos

Crea una cuenta gratuita, agrega un suscriptor de Discord y empieza a recibir alertas de tu servidor. Sin tarjeta de credito, sin configuracion de bot.

Comenzar gratis