# Enviar avisos de leads a Slack > Un canal se entera de cada lead nuevo, con un botón que lo abre. Source: https://welcomeai.dev/es/docs/slack Category: Destinos Updated: 2026-09-08 --- Slack es el único destino que no crea un registro. Publica un mensaje: quién llegó, qué dejó escrito y un botón que abre el lead en WelcomeAI. Sirve cuando alguien tiene que responder un lead en minutos, no al final del día. Es por espacio de trabajo. Cada espacio de WelcomeAI conecta su propia app de Slack y elige su propio canal, de modo que dos clientes nunca ven los leads del otro. ## Qué necesitas Un **Bot User OAuth Token**, que empieza por `xoxb-`. Sale de una app de Slack instalada en tu espacio de Slack, y crearla lleva unos dos minutos: 1. Entra en `api.slack.com/apps` y pulsa **Create New App**, y luego **From scratch**. Ponle el nombre que quieras que se vea cuando llegue el aviso: "WelcomeAI" es lo evidente. 2. Elige el espacio de Slack al que pertenece. 3. Abre **OAuth & Permissions** y añade estos **Bot Token Scopes**: - `chat:write` para publicar el aviso. - `chat:write.public` para publicar en un canal público sin que le inviten antes. - `channels:read` para listar tus canales públicos y que puedas elegir uno. - `groups:read` solo si el aviso va a un canal privado. 4. Sube arriba, pulsa **Install to Workspace** y luego **Allow**. 5. Copia el **Bot User OAuth Token**. Es el que empieza por `xoxb-`. No el User OAuth Token (`xoxp-`) ni el Signing Secret. Un token de usuario publica como tú y deja de funcionar el día que te vas del espacio de Slack. ## Conectar y crear la ruta 1. En **Destinos**, conecta Slack con el token. Llamamos a Slack para verificarlo antes de guardarlo, de modo que una errata falla aquí y no en tu primer lead. 2. Crea una ruta y elige el canal. Los canales públicos salen primero; uno privado también sale, pero solo si añadiste `groups:read`. 3. Elige de qué widget toma los leads. Déjalo en todos los widgets y toma todos. Mira **Una ruta por widget** más abajo: es como dos formularios llegan a dos canales distintos, y decide qué preguntas ofrece el mapeo. 4. Mapea qué debe mostrar el mensaje. Slack no tiene campos propios, de modo que lo que estás mapeando son las líneas del aviso: **Nombre**, **Email**, **Teléfono**, **Empresa**, **Mensaje**, **Página** y una **Nota extra** para la pregunta que a ti te importa y no está en esa lista. ## Una ruta por widget, y por tanto una por formulario El alcance de una ruta es un widget. Déjalo en todos los widgets y la ruta toma todos los leads; átalo a uno y toma solo los de ese widget. Así es también como dos formularios llegan a dos sitios, porque un widget usa un formulario: su captura de leads nombra el formulario que pregunta, así que elegir el widget elige el formulario. Un formulario de contacto en un widget y una solicitud de demo en otro son dos rutas, cada una a su destino. Dos formularios en el mismo widget no es algo que se pueda montar: si cambias el formulario del widget, has cambiado qué formulario pregunta. Elegir un widget hace algo más: la columna izquierda del mapeo muestra las preguntas de **ese** formulario, en vez de todas las preguntas de todos los formularios del espacio de trabajo. Así una ruta hecha para la demo no se mapea contra los campos del formulario de contacto, y las preguntas en pantalla son las que de verdad se le van a hacer a un visitante. Si dejas la ruta en todos los widgets las tienes todas, que es lo correcto: la ruta toma leads de todos. Una consecuencia que conviene saber: un lead que el asistente capta en la conversación lleva el widget del que vino, así que una ruta atada a un widget lo toma como cualquier otro. Un lead empujado por la API sin widget lo toma solo una ruta sin widget. ## Cómo se ve el mensaje Una primera línea en negrita ("New lead"), el nombre de la persona debajo, las líneas que mapeaste en dos columnas y un botón principal, **Open the lead**, que va directo a ese lead en tu espacio. Debajo, una línea gris con el espacio de trabajo y el widget del que vino. Las líneas vacías no se envían. Un lead que no dejó teléfono no genera una fila "Phone" que no dice nada. ## Más de un bot Puedes conectar Slack tantas veces como quieras. **Conectar otra** en la tarjeta de Slack añade una segunda cuenta, y cada ruta elige con cuál publica. Hay dos motivos. Uno son dos espacios de Slack: el interno y el de un cliente. El otro, más habitual, son dos apps en el mismo espacio, para que el aviso llegue con el nombre que le toca: una app "WelcomeAI Sales" publicando en #sales y una "WelcomeAI Support" en #support. Slack muestra el nombre y el icono de la app en cada mensaje, así que esto es lo que hace que los avisos de un canal parezcan suyos. Las cuentas conectadas se llaman `Slack · (@)`, porque dos apps del mismo espacio comparten el nombre del espacio y solo el handle las distingue. Puedes renombrar una conexión como quieras al conectarla. ## Canales privados `chat:write.public` cubre solo los canales públicos. Para un canal privado, ábrelo en Slack y ejecuta `/invite @` seguido del nombre de tu app. Hasta que lo hagas, Slack responde `not_in_channel` y no llega nada, y el selector de canales lo advierte al lado del canal, antes de que lo elijas. ## Compruébalo antes de que lo haga un visitante - **Comprobar conexión** vuelve a preguntar a Slack si el token sigue funcionando, y guarda la respuesta con la fecha de hoy. - **Enviar lead de prueba** publica un lead inventado por esta ruta, para que veas exactamente qué llega al canal. Va marcado como `[Sample]` en el mensaje, no se guarda como lead y no cuenta contra tu plan. ## En qué se diferencia de un CRM Dos reglas cambian aquí, a propósito: - **Un lead sin email y sin teléfono sí se envía.** Un registro de CRM sin forma de contactar a la persona no merece crearse; un canal sí quiere saber que alguien preguntó por precios y no dejó dirección. - **No se deduplica nada.** La misma persona respondiendo dos veces actualiza un contacto de HubSpot, y genera dos mensajes de Slack. Son dos eventos, y un canal es un registro de eventos. ## Cuando falla El registro de envíos muestra la respuesta de Slack. Las tres que vas a ver: - `not_in_channel`: la app no está en ese canal. Invítala, o elige uno público. - `channel_not_found`: el canal se borró, se renombró a uno que este token no ve, o es privado y al token le falta `groups:read`. - `invalid_auth`: el token se revocó, o la app se quitó del espacio de Slack. Reinstala la app y pega el token nuevo. Un mensaje fallido se reintenta cinco veces a lo largo de unas dos horas. Un permiso mal puesto no se reintenta: seguiría mal cinco minutos más tarde, así que el registro lo dice al momento y la conexión queda marcada.