Recursos · Integración n8n

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

Por qué automatizar

¿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.

Conexión

¿Cómo se conecta Zulip con n8n?

  1. 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.

  2. 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.

  3. 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.

Acciones

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.

Matriz recursos × operaciones
RecursoCreateGetGet ManyUpdateDeleteDeactivateGet SubscribedSend PrivateSend to StreamUpload a File
Message✓✓✓✓✓✓
Stream✓✓✓✓✓
User✓✓✓✓✓

Message

6 operaciones
01

Delete a message

message.delete

Lo 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 }}.
Casos de uso
un bot de estado publica el resultado del servidor en cada vuelta y borra el aviso anterior antes de soltar el nuevo, para que el tema siga legible.
02

Get a message

message.get

Lo 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 }}.
Casos de uso
soporte guarda el identificador del mensaje que abrió una conversación y lo relee más tarde para copiar la redacción original en el ticket que crea.
03

Send a private message

message.sendPrivate

Lo 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.
Casos de uso
quien está de guardia recibe un aviso privado cuando entra un pedido por encima del umbral de aprobación, en lugar de un mensaje público que leería todo el equipo.
04

Send a message to a stream

message.sendStream

Lo 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.
Casos de uso
cada alta nueva escribe una línea en el stream comercial, bajo un tema con el nombre del mes, y el histórico queda agrupado.
05

Update a message

message.update

Lo 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: changeOne toca solo ese mensaje, changeLater mueve además los enviados después en el mismo tema y changeAll se lleva el tema entero.
Casos de uso
un mensaje de seguimiento de stock se reescribe en cada vuelta, y el stream muestra una cifra vigente en vez de un montón de valores caducados.
06

Upload a file

message.updateFile

Lo 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.
Casos de uso
la exportación semanal se genera dentro del flujo y se sube a Zulip en la misma vuelta, en lugar de arrastrarla a mano en la aplicación el lunes por la mañana.

Stream

5 operaciones
07

Create a stream

stream.create

Lo 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.
Casos de uso
cada proyecto nuevo abre su stream privado con los responsables de cuenta ya dentro.
08

Delete a stream

stream.delete

Lo 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.
Casos de uso
un flujo de limpieza se ejecuta al cierre del trimestre y cierra los streams abiertos para eventos ya pasados, después de publicar un último mensaje en cada uno.
09

Get many streams

stream.getAll

Lo 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.
Casos de uso
un inventario mensual vuelca la lista en una hoja para detectar los streams donde ya no publica nadie.
10

Get subscribed streams

stream.getSubscribed

Lo 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.
Casos de uso
antes de un anuncio general, el flujo comprueba que la cuenta está suscrita donde tiene que publicar y manda un aviso privado si falta algún stream en la lista.
11

Update a stream

stream.update

Lo 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: 1 deja publicar a cualquier usuario, 2 solo a administradores, 3 solo a miembros nuevos. Announcement Only limita el stream a anuncios.
Casos de uso
al cerrar un proyecto, su stream se renombra con un prefijo de archivo y se pasa a anuncios.

User

5 operaciones
12

Create a user

user.create

Lo 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.
Casos de uso
el flujo de recursos humanos que crea el buzón de correo abre la cuenta de Zulip en la misma fila de la hoja.
13

Deactivate a user

user.deactivate

Lo 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.
Casos de uso
el flujo de baja cierra el acceso a Zulip el día en que se devuelve el equipo, disparado por un cambio de estado en la herramienta de personal, sin que nadie tenga que acordarse.
14

Get a user

user.get

Lo 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.
Casos de uso
una solicitud de aprobación lee el perfil de quien la pide antes de decidir en qué stream publicarla.
15

Get many users

user.getAll

Lo 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.
Casos de uso
la revisión trimestral de accesos exporta la lista completa y la compara con el registro de personal para sacar las cuentas que deberían estar cerradas.
16

Update a user

user.update

Lo 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: 100 propietario, 200 administrador de la organización, 300 moderador, 400 miembro, 600 invitado.
  • 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.
Casos de uso
un ascenso registrado en la herramienta de personal pasa la cuenta de miembro a moderador sin edición manual.
Necesitas ayuda

¿Necesitas ayuda para automatizar Zulip con n8n?

El equipo te responde directamente.

Cada mensaje lo lee una persona.

FAQ

Zulip y n8n, las dudas que vienen después

01¿La integración Zulip n8n es gratuita?
Sí por el lado de n8n. El nodo Zulip viene incluido en n8n: no hay nada que instalar ni nada extra que pagar por usarlo, tanto si el flujo corre en n8n Cloud como en una instancia autoalojada en Community Edition, con licencia Sustainable Use. Un flujo se comporta igual en los dos sitios, así que cambiar de uno a otro no altera el nodo. El credential se crea una sola vez en el menú Credentials y se reutiliza en todos los flujos que hablan con Zulip, de modo que una segunda o una tercera automatización no añade configuración. Lo que Zulip cueste a tu organización es otra pregunta, y esta página no la trata.
02¿Qué credenciales hacen falta para conectar Zulip con n8n?
Un credential de clave API con tres valores. La URL es la dirección de tu dominio de Zulip, el Email es la dirección con la que entras a Zulip y la API Key se saca en el engranaje, luego Personal Settings, luego Account & privacy y por último API Key. n8n guarda los tres juntos en Credentials, y el nodo Zulip ofrece después ese credential en su desplegable, en este flujo y en cualquier otro. El nodo no tiene selector de autenticación, así que la clave API es el único camino. La cuenta asociada a la clave define lo que el flujo puede hacer, algo que pesa en las operaciones reservadas a la administración.
03¿Qué límites tiene el nodo Zulip en n8n?
Tres importan en el día a día. El nodo cubre 16 operaciones repartidas en 3 recursos, mensajes, streams y usuarios, con lo que el resto de la API de Zulip queda fuera de su alcance. El nodo HTTP Request tapa ese hueco: llama a cualquier endpoint de Zulip reutilizando el mismo credential por autenticación predefinida. El segundo límite es que las operaciones dirigidas a un stream, un mensaje o una cuenta existentes esperan un identificador y no un nombre, lo que obliga a un paso de búsqueda previo. El tercero, los permisos siguen a la cuenta de la clave API, y una opción como Include All Active no devuelve nada sin privilegios de administración.
04¿Puede n8n reaccionar en tiempo real a un mensaje de Zulip?
No. Zulip no tiene nodo trigger en n8n, así que nada arranca un flujo por su cuenta cuando llega un mensaje a un stream. Un flujo de Zulip empieza en otro punto: un Schedule Trigger que se activa cada cierto intervalo, un Webhook de n8n, es decir una URL a la que llama otro servicio, o el trigger de otra herramienta dentro del mismo flujo. En la práctica casi todas las automatizaciones de Zulip van en sentido contrario, porque el hecho interesante ocurre en el CRM, en la herramienta de monitorización o en la hoja de cálculo, y Zulip es donde se anuncia el resultado. Si el objetivo es vigilar Zulip, una ejecución programada que lea y compare es la respuesta sincera.
05¿n8n o Make para Zulip?
Depende de dónde deban quedarse tus datos. Make lo aloja Make, sin opción de autoalojamiento, y se factura por operación, así que un flujo que publica muchos mensajes en Zulip tiene un coste que sube con el volumen. n8n funciona en n8n Cloud o en tu propio servidor, lo que mantiene el contenido de los mensajes y la clave API dentro de tu infraestructura, un punto que suele importar a los equipos que eligieron Zulip por ese mismo motivo. El editor visual de Make resulta más amable para una primera automatización. n8n deja más margen cuando el flujo se ramifica, recorre una lista de miembros o se apoya en el nodo HTTP Request para un endpoint que el nodo Zulip no expone.