Slack es el centro de comunicación para millones de equipos en todo el mundo, y conectarlo a tus flujos de trabajo de n8n desbloquea una poderosa capa de automatización. Ya sea que necesites enviar alertas de implementación, informes de resumen diarios o construir un bot de aprobación interactivo, la integración de n8n Slack lo hace sencillo una vez que comprendes la configuración.
En esta guía cubrimos todo, desde la configuración de credenciales hasta los mensajes avanzados de Block Kit, los activadores de Slack y los patrones de flujo de trabajo completos que puedes usar hoy.
¿No quieres construir el flujo de trabajo manualmente? Describe lo que necesitas en inglés sencillo en Scriflow y obtén un JSON de n8n listo para importar en segundos.
Configurando las Credenciales de Slack en n8n
Antes de enviar cualquier mensaje, necesitas una Slack App con los scopes de OAuth correctos. Aquí está la configuración mínima:
1. Crea una Slack App
- Ve a api.slack.com/apps y haz clic en Create New App → From Scratch.
- Dale un nombre (p. ej., n8n Bot) y selecciona tu espacio de trabajo.
- En OAuth & Permissions → Scopes → Bot Token Scopes, agrega los permisos que necesitas.
- Haz clic en Install to Workspace y autoriza.
- Copia el Bot User OAuth Token (comienza con
xoxb-).
Required OAuth Scopes
2. Agrega Credenciales en n8n
- En n8n, ve a Credentials → New → Slack OAuth2 API.
- Pega tu Bot User OAuth Token.
- Nómbralo algo reconocible (p. ej., Slack – n8n Bot) y guarda.
Para producción, crea una Slack App dedicada por espacio de trabajo para evitar publicar accidentalmente en el equipo equivocado. Almacena el token de forma segura utilizando el cifrado de credenciales integrado de n8n.
Descripción General del Nodo Slack
El nodo Slack de n8n expone todos los principales endpoints de la API de Slack como operaciones. Los más utilizados son:
| Resource | Operation | What It Does |
|---|---|---|
| Message | Send | Post a text or Block Kit message to a channel or user |
| Message | Update | Edit a previously sent message by its ts timestamp |
| Message | Delete | Remove a message from a channel |
| Message | Get Permalink | Get a permanent link to any message |
| Channel | Get Many | List all channels in the workspace |
| User | Get | Fetch user info by ID or email |
| Reaction | Add | React to a message with an emoji |
| File | Upload | Upload and share files in channels |
Enviando Mensajes a Canales
La operación más fundamental es enviar un mensaje. Aquí hay una configuración mínima del nodo Slack:
Puedes hacer referencia a cualquier campo de los datos entrantes utilizando expresiones n8n dentro de llaves dobles. Esto hace que los mensajes sean dinámicos y conscientes del contexto sin necesidad de codificación.
Enviando Mensajes Directos a Usuarios
Para enviar un DM, primero usa la operación User → Get para obtener el ID de Slack del usuario por su correo electrónico, luego usa ese ID como el canal:
Usando Block Kit para Mensajes Enriquecidos
Los mensajes de texto plano funcionan, pero Block Kit es donde la automatización de Slack se vuelve visualmente impresionante. Block Kit te permite construir mensajes con secciones, botones, divisores, imágenes y elementos interactivos.
En el nodo Slack, habilita JSON Parameters y cambia al campo Blocks para proporcionar un array JSON de Block Kit:
Usa el Slack Block Kit Builder oficial para diseñar visualmente el diseño de tu mensaje, luego pega el JSON directamente en el campo Blocks de n8n.
Activadores de Slack en n8n
Más allá de enviar mensajes, n8n puede escuchar los eventos de Slack y reaccionar a ellos. El nodo Slack Trigger se conecta a la API de eventos de Slack a través de webhooks.
Configurando el Activador de Slack
- Agrega un nodo Slack Trigger a tu flujo de trabajo.
- Copia la Webhook URL generada por n8n.
- En la configuración de tu Slack App, ve a Event Subscriptions, habilítala y pega la URL.
- Suscríbete a los eventos que necesitas (p. ej.,
message.channels,reaction_added). - Reinstala la aplicación en tu espacio de trabajo después de agregar nuevas suscripciones de eventos.
Available Trigger Events
| Event | Fires When | Use Case |
|---|---|---|
message | Any message posted to a channel | Commands, Q&A bots |
reaction_added | Someone reacts to a message | Approval workflows via emoji |
app_mention | Bot is @mentioned | Interactive chatbot |
channel_created | A new channel is created | Auto-invite members, set topic |
member_joined_channel | Someone joins a channel | Welcome message automation |
Construyendo un Sistema de Alerta de Monitoreo
Uno de los casos de uso más populares para n8n + Slack es el monitoreo operativo. Aquí hay un patrón de flujo de trabajo completo para enviar alertas de estado del servidor:
Workflow: CPU / Memory Alert → Slack
- Schedule Trigger — se ejecuta cada 5 minutos.
- HTTP Request — llama a tu API de monitoreo (p. ej., Prometheus, Datadog o un endpoint personalizado) para obtener las métricas actuales.
- IF Node — verifica si CPU > 80% o memoria > 90%.
- Slack Node (rama verdadera) — envía una alerta de Block Kit a
#ops-alerts. - Slack Node (rama falsa, opcional) — actualiza un mensaje de estado a "All systems normal".
Patrones de Flujo de Trabajo Comunes
Pattern 1: Error Notifications
Envuelve la ruta de error de cualquier flujo de trabajo con una notificación de Slack para que siempre estés al tanto de las fallas. Usa la configuración de Error Workflow de n8n (en la configuración del flujo de trabajo) para enrutar todos los errores a un flujo de trabajo dedicado de manejo de errores que envía un DM de Slack al ingeniero de guardia.
Pattern 2: Daily Reports
Usa un Schedule Trigger configurado para ejecutarse cada mañana a las 9 AM, consulta tu base de datos o herramienta de análisis, agrega los datos con un nodo Code y publica un resumen formateado en un canal #daily-metrics.
Pattern 3: Approval Workflows
Cuando una acción requiere la aprobación humana (p. ej., una solicitud de reembolso grande o una implementación de producción), publica un mensaje de Block Kit con botones de Approve y Reject en Slack. Usa el nodo Wait de n8n para pausar la ejecución hasta que se reciba una devolución de llamada de webhook cuando se haga clic en el botón.
- Llega el evento de activación (p. ej., solicitud de reembolso del webhook de Stripe).
- El nodo Slack envía un mensaje con botones interactivos a
#approvals. - El nodo Wait pausa el flujo de trabajo (hasta 24 horas).
- El gerente hace clic en Approve/Reject en Slack → webhook recibido.
- El flujo de trabajo se reanuda, procesa la decisión y envía una confirmación.
Para que las devoluciones de llamada de los botones interactivos funcionen, debes configurar una URL de solicitud de Interactivity & Shortcuts en la configuración de tu Slack App que apunte a un flujo de trabajo de webhook de n8n separado que reciba la acción del botón y active el endpoint de reanudación del flujo de trabajo principal.
Consejos y Mejores Prácticas
- Rate limits: Slack permite ~1 mensaje por segundo por canal. Usa un nodo Wait o procesa tus mensajes por lotes si los envías en masa.
- Thread replies: Usa el parámetro
thread_tspara responder en hilos y mantener los canales limpios. Pasa el valortsdel mensaje original. - Avoid message floods: Agrega un nodo IF para verificar si ya se envió una alerta en los últimos N minutos antes de volver a alertar.
- Use channel IDs, not names: Los nombres de los canales pueden cambiar; los ID nunca lo hacen. Encuentra el ID haciendo clic derecho en un canal en Slack → Copy Link.
- Test with Bolt: Durante el desarrollo, usa el patio de juegos del framework Bolt de Slack o el Block Kit Builder para obtener una vista previa de los mensajes sin enviar notificaciones reales.
Preguntas Frecuentes
/invite @YourBotName in the channel, then use the channel ID in your n8n Slack node.chat.scheduleMessage endpoint via the HTTP Request node. The native Slack node doesn't expose this operation directly, but a raw POST to the API works perfectly.xoxb-) post as the bot identity — recommended for automation. User tokens (xoxp-) post as a real user but require user-level OAuth and are harder to manage. Always prefer bot tokens.