Integración Zulip n8nAutomatiza Zulip con n8n.
Todo aviso que alguien copia y pega cada mañana en Zulip puede salir solo. La integración Zulip n8n reúne 16 operaciones sobre 3 recursos: mensajes, streams y usuarios. No hay trigger de Zulip, así que el flujo arranca en otro sitio. Pensada para equipos que alojan su propio Zulip.
Reseñas verificadas en Trustpilot · Agencia de IA, automatización y growth
¿Qué resuelve de verdad la integración Zulip n8n?
El nodo Zulip viene incluido en n8n y habla con la API de Zulip a partir de tres datos: la dirección de tu organización, un email de acceso y una clave API. Cubre tres recursos: mensajes, streams y usuarios. Todo lo que un flujo publica, lee, edita o borra en Zulip pasa por alguna de sus 16 operaciones, y el credential, esa ficha de conexión que se guarda una sola vez en n8n, sirve para todos los flujos.
El caso más inmediato es el aviso operativo. Un flujo de control detecta una incidencia, arma una línea de texto y message.sendStream la publica en el stream y el tema correctos. La misma estructura vale para el resumen diario que sale de un Google Sheets, o para repetir el aviso en Discord cuando parte del equipo vive fuera de Zulip.
El segundo caso son las cuentas. Cuando entra alguien nuevo, user.create abre la cuenta con su email, su nombre completo y una contraseña, stream.create lo suscribe a los streams de su equipo y user.update le asigna el rol. El día de la salida, user.deactivate cierra el acceso desde el mismo flujo, sin entrar al panel de administración.
El tercero es mantener el orden. stream.getAll saca la lista, stream.update renombra y cierra lo que ya no toca tener abierto, y message.update corrige una cifra publicada con prisa. Quien replica los anuncios fuera encadena Telegram justo después del nodo Zulip.
El nodo se queda en esas 16 operaciones. Lo que se sale de esos tres recursos pasa por el nodo HTTP Request, que llama a cualquier endpoint de la API de Zulip reutilizando el mismo credential mediante la autenticación predefinida.
Dos límites conviene tenerlos claros antes de montar nada. No existe nodo trigger de Zulip, así que nada reacciona por su cuenta cuando llega un mensaje: arranca un Schedule Trigger, que se activa cada cierto intervalo, o un Webhook de n8n, es decir una URL a la que llama otro servicio. Y las operaciones que apuntan a un stream, un mensaje o una cuenta ya existentes piden un identificador, no un nombre, de ahí el paso de búsqueda previo. El encaje de la herramienta está detallado en la Reseña n8n, y las expresiones se practican en el Curso n8n.
¿Cómo se conecta Zulip con n8n?
- 01
Saca la clave API en Zulip
Entra en tu organización de Zulip y ve al engranaje (Gear cog), luego Personal Settings, luego Account & privacy y por último API Key. La clave pertenece a la cuenta con la que has entrado, así que decide antes si la automatización debe publicar con el nombre de una persona o con una cuenta dedicada: esa elección se ve en cada mensaje enviado y marca lo que el flujo puede hacer.
- 02
Crea el credential en n8n
En n8n, abre el menú Credentials y añade un credential de Zulip. Pide tres valores: URL, la dirección de tu dominio de Zulip, Email, la dirección con la que entras a Zulip, y API Key, el valor copiado en el paso anterior. Con guardarlo una vez basta: el credential queda disponible en todos los flujos de la instancia.
- 03
Selecciónalo en el nodo y prueba
Coloca un nodo Zulip en el flujo y elige el credential en su desplegable. No hay selector de autenticación que ajustar, así que pasas directo al recurso, Message, Stream o User, y después a la operación. Get subscribed streams funciona bien como primera prueba: no pide ningún parámetro y devuelve una lista, lo que confirma de una vez la URL, el email y la clave.
Las 16 operaciones del nodo Zulip , una a una
El nodo Zulip expone 16 operaciones en 3 recursos. Para cada una: el nodo tal como lo configuras en n8n, los campos obligatorios y nuestras notas de campo.
| Recurso | Create | Get | Get Many | Update | Delete | Deactivate | Get Subscribed | Send Private | Send to Stream | Upload a File |
|---|---|---|---|---|---|---|---|---|---|---|
| Message | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ||||
| Stream | ✓ | ✓ | ✓ | ✓ | ✓ | |||||
| User | ✓ | ✓ | ✓ | ✓ | ✓ |
Índice de operaciones
Message
6 operacionesDelete a message
message.deleteLo que ves en n8n
Notas y casos de uso
Borra un mensaje de Zulip de forma definitiva, tanto en un stream como en una conversación privada. Zulip trabaja con el identificador numérico del mensaje, nunca con su texto.
Parámetros clave
- Message ID: el identificador único del mensaje, heredado de un paso Get a message o del nodo que lo publicó, con una expresión del tipo
{{ $json.id }}.
Get a message
message.getLo que ves en n8n
Notas y casos de uso
Trae un mensaje concreto al flujo, con su contenido, para que el resto de la rama trabaje sobre el texto real y no sobre suposiciones.
Parámetros clave
- Message ID: el identificador único del mensaje, que llega desde una columna de hoja de cálculo, un campo de formulario o un nodo anterior con
{{ $json.messageId }}.
Send a private message
message.sendPrivateLo que ves en n8n
Notas y casos de uso
Manda un mensaje directo a una persona o a un grupo pequeño, sin publicar nada en un stream.
Parámetros clave
- To: los destinatarios, elegidos en la lista del nodo o pasados como lista de nombres de usuario (emails) separados por comas; una expresión sirve cuando la dirección viene de un paso anterior.
- Content: el cuerpo del mensaje, escrito tal como debe verse en Zulip.
Send a message to a stream
message.sendStreamLo que ves en n8n
Notas y casos de uso
Publica un mensaje en un stream, bajo un tema. Es la operación con la que termina la mayoría de flujos de Zulip.
Parámetros clave
- Stream Name or ID: el stream de destino, elegido en la lista del nodo o indicado como identificador mediante una expresión.
- Topic Name or ID: el tema bajo el que se guarda el mensaje, que Zulip solo usa en los mensajes de stream.
- Content: el texto, montado muchas veces en un nodo Set justo antes.
Update a message
message.updateLo que ves en n8n
Notas y casos de uso
Edita un mensaje ya publicado: su texto, su tema o ambos, sin borrarlo ni volver a publicarlo.
Parámetros clave
- Message ID: el mensaje que se va a editar.
- Content: el texto de sustitución, dentro de Update Fields.
- Topic: el tema nuevo, que Zulip solo acepta en mensajes de stream.
- Propagate Mode:
changeOnetoca solo ese mensaje,changeLatermueve además los enviados después en el mismo tema ychangeAllse lleva el tema entero.
Upload a file
message.updateFileLo que ves en n8n
Notas y casos de uso
Sube a Zulip un archivo que lleva el propio flujo. Llega en formato binario desde el nodo anterior: una descarga, una exportación o un documento generado.
Parámetros clave
- Put Output File in Field: el nombre del campo binario que lleva el archivo, el mismo que use el nodo anterior para su salida binaria.
Stream
5 operacionesCreate a stream
stream.createLo que ves en n8n
Notas y casos de uso
Abre uno o varios streams y suscribe cuentas a ellos en una sola llamada. Por eso el nodo pide una lista y no un nombre suelto.
Parámetros clave
- Subscriptions: los streams a los que suscribirse, cada uno con su Name y su Description; si un stream todavía no existe, se crea.
- Invite Only: deja el stream en privado, mientras que History Public to Subscribers decide si los recién suscritos pueden leer lo que se dijo antes.
- Principals: las direcciones de email que se van a suscribir; si lo dejas vacío, solo se suscribe la cuenta del credential.
Delete a stream
stream.deleteLo que ves en n8n
Notas y casos de uso
Saca un stream de la organización, junto con los temas que contenía.
Parámetros clave
- Stream ID: el identificador del stream que se elimina, un número y no su nombre, que entrega un paso Get many streams mediante una expresión.
Get many streams
stream.getAllLo que ves en n8n
Notas y casos de uso
Lista los streams de la organización. Los Additional Fields marcan hasta dónde llega esa lista, así que la misma operación responde a dos preguntas muy distintas.
Parámetros clave
- Include Public: añade todos los streams públicos de la organización.
- Include Subscribed: añade los streams que sigue la cuenta.
- Include Default: añade los streams por defecto de la organización; Include All Active añade todos los activos y exige privilegios de administración.
- Include Owner Subscribed: en una cuenta de bot, añade los streams que sigue su propietario.
Get subscribed streams
stream.getSubscribedLo que ves en n8n
Notas y casos de uso
Devuelve solo los streams que sigue la cuenta conectada. Lista más corta, y la que de verdad necesitan casi todos los flujos.
Parámetros clave
- Include Subscribers: añade a cada stream devuelto un campo subscribers con los identificadores de los usuarios suscritos.
Update a stream
stream.updateLo que ves en n8n
Notas y casos de uso
Cambia los ajustes de un stream existente: su nombre, su descripción, su privacidad y quién puede publicar en él.
Parámetros clave
- Stream ID: el stream que se modifica.
- New Name y Description: la etiqueta nueva y la línea que aparece debajo.
- Is Private y History Public to Subscribers: cierran el stream y deciden qué pueden leer sus nuevos suscritos.
- Stream Post Policy:
1deja publicar a cualquier usuario,2solo a administradores,3solo a miembros nuevos. Announcement Only limita el stream a anuncios.
User
5 operacionesCreate a user
user.createLo que ves en n8n
Notas y casos de uso
Abre una cuenta en la organización de Zulip. Los cuatro campos son obligatorios, así que el flujo debe tenerlos resueltos antes de ejecutar el nodo.
Parámetros clave
- Email: la dirección del nuevo usuario, con el formato
name@email.com. - Full Name: el nombre que ve el resto de la organización.
- Short Name: un nombre corto que no ven los demás usuarios.
- Password: la contraseña de la cuenta nueva, mejor pasada por una expresión que escrita dentro del nodo.
Deactivate a user
user.deactivateLo que ves en n8n
Notas y casos de uso
Desactiva una cuenta: la persona deja de poder entrar en la organización.
Parámetros clave
- User ID: el identificador del usuario que se desactiva, un número que entrega un paso Get many users mediante una expresión.
Get a user
user.getLo que ves en n8n
Notas y casos de uso
Lee una cuenta y devuelve su perfil. Es la forma de convertir un identificador en un nombre o un email que el flujo pueda usar.
Parámetros clave
- User ID: el identificador de la cuenta que se lee.
- Custom Profile Fields: incluye en la respuesta los campos de perfil personalizados, por ejemplo el equipo o el puesto que añadió tu administrador.
- Client Gravatar: activado, la URL del avatar solo vuelve si hay un avatar de Zulip y queda nula en las cuentas que usan gravatar.
Get many users
user.getAllLo que ves en n8n
Notas y casos de uso
Trae de una vez la lista de miembros de la organización, cada cuenta con su perfil.
Parámetros clave
- Custom Profile Fields: añade los campos de perfil personalizados a cada cuenta devuelta, útil cuando el equipo o el departamento viven ahí.
- Client Gravatar: misma regla que en la lectura individual, la URL del avatar llega solo para avatares de Zulip.
Update a user
user.updateLo que ves en n8n
Notas y casos de uso
Modifica una cuenta ya creada: su nombre, sus permisos o los campos personalizados de su perfil.
Parámetros clave
- User ID: la cuenta que se modifica.
- Full Name: el nombre que se muestra en Zulip.
- Role:
100propietario,200administrador de la organización,300moderador,400miembro,600invitado. - Is Admin y Is Guest: los dos interruptores que marcan la cuenta como administradora o como invitada.
- Profile Data: los campos de perfil personalizados que se actualizan.
¿Necesitas ayuda para automatizar Zulip con n8n?
El equipo te responde directamente.
Cada mensaje lo lee una persona.


