Ressources · Intégration n8n

Intégration Zulip n8nAutomatiser Zulip avec n8n.

Les messages Zulip que quelqu'un recopie encore à la main peuvent partir tout seuls. L'intégration Zulip n8n réunit 16 opérations sur 3 ressources : messages, streams et utilisateurs. Aucun trigger Zulip n'existe, donc le workflow démarre ailleurs. Pour les équipes qui hébergent leur Zulip.

Avis vérifiés sur Trustpilot · Agence IA, automatisation & growth

Pourquoi automatiser

À quoi sert vraiment l'intégration Zulip n8n ?

Le nœud Zulip est livré avec n8n et dialogue avec l'API de Zulip à partir de trois informations : l'adresse de ton organisation, un email de connexion et une clé API. Il couvre trois ressources, les messages, les streams et les utilisateurs. Tout ce qu'un workflow publie, lit, modifie ou supprime dans Zulip passe par l'une de ses 16 opérations, et le credential, cette fiche de connexion enregistrée une fois dans n8n, ressert partout.

Le premier usage, c'est le message d'astreinte. Un workflow de supervision détecte un incident, met en forme une ligne, et message.sendStream la publie dans le bon stream sous le bon sujet. Même mécanique pour le récapitulatif de la veille construit à partir d'un Google Sheets, ou pour une alerte doublée sur mobile avec Pushover quand personne ne lit le stream à 3 h du matin.

Deuxième usage : la gestion des comptes. L'arrivée d'un salarié déclenche user.create avec son email, son nom complet et un mot de passe, puis stream.create l'abonne aux streams de son équipe et user.update fixe son rôle. Le jour du départ, user.deactivate ferme l'accès depuis le même workflow, sans passer par le panneau d'administration.

Troisième usage : tenir les streams propres. stream.getAll sort la liste, stream.update renomme et referme ce qui n'a plus lieu d'être ouvert, message.update corrige un chiffre publié trop vite. Les équipes qui annoncent la même chose ailleurs enchaînent sur Slack juste après le nœud Zulip.

Le nœud s'arrête à ces 16 opérations. Tout ce qui sort de ces trois ressources passe par le nœud HTTP Request, qui appelle n'importe quel endpoint de l'API Zulip en réutilisant le même credential grâce à l'authentification prédéfinie.

Deux limites à connaître avant de construire. Il n'existe pas de nœud trigger Zulip, donc rien ne réagit tout seul à l'arrivée d'un message : c'est un Schedule Trigger, qui se réveille à intervalle fixe, ou un Webhook n8n, c'est-à-dire une URL qu'un autre service appelle, qui lance le workflow. Et les opérations qui visent un stream, un message ou un compte existant attendent un identifiant, pas un nom, d'où une étape de recherche placée avant. Le positionnement de l'outil est détaillé dans l'Avis n8n, et la prise en main des expressions dans la Formation n8n.

Connexion

Comment connecter Zulip à n8n ?

  1. 01

    Récupérer la clé API dans Zulip

    Dans ton organisation Zulip, va dans la roue crantée (Gear cog), puis Personal Settings, puis Account & privacy, puis API Key. La clé appartient au compte connecté. Décide donc dès maintenant si l'automatisation doit publier sous le nom d'une personne ou sous un compte dédié : ce choix apparaît sur chaque message envoyé et détermine ce que le workflow a le droit de faire.

  2. 02

    Créer le credential dans n8n

    Côté n8n, ouvre le menu Credentials et ajoute un credential Zulip. Trois champs sont demandés : URL, l'adresse de ton domaine Zulip, Email, l'adresse utilisée pour te connecter à Zulip, et API Key, la valeur copiée à l'étape précédente. Un seul enregistrement suffit : le credential devient disponible dans tous les workflows de l'instance.

  3. 03

    Choisir le credential et tester

    Pose un nœud Zulip dans le workflow et sélectionne le credential dans sa liste déroulante. Il n'y a pas de sélecteur d'authentification à régler : tu passes directement à la ressource, Message, Stream ou User, puis à l'opération. Get subscribed streams fait un bon premier essai, elle ne demande aucun paramètre et renvoie une liste, ce qui valide l'URL, l'email et la clé d'un coup.

Actions

Les 16 opérations du nœud Zulip , une par une

Le nœud Zulip expose 16 opérations sur 3 ressources. Pour chacune : le nœud tel que tu le configures dans n8n, les champs obligatoires, et nos notes de terrain.

Matrice ressources × opérations
RessourceCreateGetGet ManyUpdateDeleteDeactivateGet SubscribedSend PrivateSend to StreamUpload a File
Message✓✓✓✓✓✓
Stream✓✓✓✓✓
User✓✓✓✓✓

Message

6 opérations
01

Delete a message

message.delete

Ce que tu vois dans n8n

Notes & cas d'usage

Supprime définitivement un message de Zulip, dans un stream comme dans une conversation privée. Zulip travaille sur l'identifiant numérique du message, jamais sur son texte.

Paramètres clés

  • Message ID : l'identifiant unique du message, récupéré d'une étape Get a message ou du nœud qui l'avait publié, via une expression du type {{ $json.id }}.
Cas d'usage
un bot de statut publie l'état du serveur à chaque passage, et l'annonce précédente est effacée juste avant la nouvelle pour que le sujet reste lisible.
02

Get a message

message.get

Ce que tu vois dans n8n

Notes & cas d'usage

Ramène un message précis dans le workflow, contenu compris, pour que la suite du traitement travaille sur le texte réel.

Paramètres clés

  • Message ID : l'identifiant unique du message, transmis depuis une colonne de tableur, un champ de formulaire ou un nœud précédent avec {{ $json.messageId }}.
Cas d'usage
le support conserve l'identifiant du message qui a ouvert une discussion, puis le relit plus tard pour reprendre la formulation d'origine dans le ticket créé.
03

Send a private message

message.sendPrivate

Ce que tu vois dans n8n

Notes & cas d'usage

Envoie un message direct à une personne ou à un petit groupe, sans rien publier dans un stream.

Paramètres clés

  • To : les destinataires, choisis dans la liste du nœud ou passés sous forme de liste d'identifiants (emails) séparés par des virgules ; une expression fait l'affaire quand l'adresse vient d'une étape précédente.
  • Content : le corps du message, écrit tel qu'il doit apparaître dans Zulip.
Cas d'usage
le responsable d'astreinte reçoit une alerte privée quand une commande dépasse le seuil de validation, au lieu d'un message public que toute l'équipe lirait.
04

Send a message to a stream

message.sendStream

Ce que tu vois dans n8n

Notes & cas d'usage

Publie un message dans un stream, sous un sujet. C'est l'opération sur laquelle se termine la plupart des workflows Zulip.

Paramètres clés

  • Stream Name or ID : le stream de destination, sélectionné dans la liste du nœud ou fourni comme identifiant via une expression.
  • Topic Name or ID : le sujet sous lequel le message se range, utilisé par Zulip uniquement pour les messages de stream.
  • Content : le texte, souvent assemblé dans un nœud Set juste avant.
Cas d'usage
chaque nouvelle inscription écrit une ligne dans le stream commercial, sous un sujet au nom du mois, pour garder un historique groupé.
05

Update a message

message.update

Ce que tu vois dans n8n

Notes & cas d'usage

Modifie un message déjà publié : son texte, son sujet, ou les deux, sans le supprimer ni le republier.

Paramètres clés

  • Message ID : le message à modifier.
  • Content : le texte de remplacement, renseigné dans Update Fields.
  • Topic : le nouveau sujet, que Zulip n'accepte que sur les messages de stream.
  • Propagate Mode : changeOne ne touche que ce message, changeLater déplace aussi ceux envoyés après lui dans le même sujet, changeAll prend tout le sujet.
Cas d'usage
un message de suivi de stock est réécrit à chaque passage, pour que le stream affiche un chiffre à jour plutôt qu'une pile de valeurs périmées.
06

Upload a file

message.updateFile

Ce que tu vois dans n8n

Notes & cas d'usage

Envoie vers Zulip un fichier porté par le workflow. Il arrive sous forme binaire depuis le nœud précédent : un téléchargement, un export ou un document généré.

Paramètres clés

  • Put Output File in Field : le nom du champ binaire qui porte le fichier, à faire correspondre à celui utilisé par le nœud précédent pour sa sortie binaire.
Cas d'usage
l'export hebdomadaire est fabriqué dans le workflow puis déposé dans Zulip au même passage, plutôt que glissé à la main dans l'application le lundi matin.

Stream

5 opérations
07

Create a stream

stream.create

Ce que tu vois dans n8n

Notes & cas d'usage

Ouvre un ou plusieurs streams et y abonne des comptes en un seul appel. D'où un champ qui attend une liste et non un simple nom.

Paramètres clés

  • Subscriptions : les streams auxquels s'abonner, chacun avec un Name et une Description ; un stream qui n'existe pas encore est créé.
  • Invite Only : rend le stream privé, tandis que History Public to Subscribers décide si les nouveaux abonnés peuvent lire ce qui s'est dit avant eux.
  • Principals : les adresses email à abonner ; laissé vide, seul le compte du credential est abonné.
Cas d'usage
chaque nouveau dossier client ouvre son stream privé avec les chargés de compte déjà dedans.
08

Delete a stream

stream.delete

Ce que tu vois dans n8n

Notes & cas d'usage

Retire un stream de l'organisation, avec les sujets qu'il contenait.

Paramètres clés

  • Stream ID : l'identifiant du stream à supprimer, un nombre et non son nom, fourni par une étape Get many streams via une expression.
Cas d'usage
un workflow de ménage tourne en fin de trimestre et ferme les streams ouverts pour des événements terminés, après avoir publié un dernier message dans chacun.
09

Get many streams

stream.getAll

Ce que tu vois dans n8n

Notes & cas d'usage

Liste les streams de l'organisation. Ce sont les Additional Fields qui fixent l'étendue de cette liste, si bien que la même opération répond à deux questions très différentes.

Paramètres clés

  • Include Public : ajoute tous les streams publics de l'organisation.
  • Include Subscribed : ajoute les streams suivis par le compte.
  • Include Default : ajoute les streams par défaut de l'organisation ; Include All Active ajoute tous les streams actifs et demande des droits d'administration.
  • Include Owner Subscribed : pour un compte bot, ajoute les streams suivis par son propriétaire.
Cas d'usage
un inventaire mensuel écrit la liste dans un tableur pour repérer les streams où plus personne ne publie.
10

Get subscribed streams

stream.getSubscribed

Ce que tu vois dans n8n

Notes & cas d'usage

Ne renvoie que les streams suivis par le compte connecté. Liste plus courte, et celle dont la plupart des workflows ont réellement besoin.

Paramètres clés

  • Include Subscribers : ajoute à chaque stream un champ subscribers contenant les identifiants des utilisateurs abonnés.
Cas d'usage
avant une annonce générale, le workflow vérifie que le compte est bien abonné là où il doit publier, et envoie une alerte privée si un stream manque à l'appel.
11

Update a stream

stream.update

Ce que tu vois dans n8n

Notes & cas d'usage

Change les réglages d'un stream existant : son nom, sa description, sa confidentialité et le droit d'y publier.

Paramètres clés

  • Stream ID : le stream à modifier.
  • New Name et Description : le nouveau libellé et la ligne affichée en dessous.
  • Is Private et History Public to Subscribers : referment le stream et décident de ce que ses nouveaux abonnés peuvent lire.
  • Stream Post Policy : 1 laisse publier tout le monde, 2 les seuls administrateurs, 3 les seuls nouveaux membres. Announcement Only limite le stream aux annonces.
Cas d'usage
à la clôture d'un projet, son stream est renommé avec un préfixe d'archive et basculé en annonces.

User

5 opérations
12

Create a user

user.create

Ce que tu vois dans n8n

Notes & cas d'usage

Ouvre un compte dans l'organisation Zulip. Les quatre champs sont obligatoires, le workflow doit donc les avoir sous la main avant d'exécuter le nœud.

Paramètres clés

  • Email : l'adresse du nouvel utilisateur, au format name@email.com.
  • Full Name : le nom affiché au reste de l'organisation.
  • Short Name : un nom court, invisible pour les autres utilisateurs.
  • Password : le mot de passe du nouveau compte, à faire passer par une expression plutôt qu'à taper dans le nœud.
Cas d'usage
le workflow RH qui crée la boîte mail ouvre le compte Zulip sur la même ligne du tableur.
13

Deactivate a user

user.deactivate

Ce que tu vois dans n8n

Notes & cas d'usage

Désactive un compte : la personne ne peut plus se connecter à l'organisation.

Paramètres clés

  • User ID : l'identifiant de l'utilisateur à désactiver, un nombre que transmet une étape Get many users via une expression.
Cas d'usage
le workflow de départ ferme l'accès Zulip le jour du retour du matériel, déclenché par un changement de statut dans l'outil RH, sans que personne ait à y penser.
14

Get a user

user.get

Ce que tu vois dans n8n

Notes & cas d'usage

Lit un compte et renvoie son profil. C'est la façon de transformer un identifiant en nom ou en email exploitable dans la suite du workflow.

Paramètres clés

  • User ID : l'identifiant du compte à lire.
  • Custom Profile Fields : inclut dans la réponse les champs de profil personnalisés, par exemple l'équipe ou la fonction ajoutées par l'administrateur.
  • Client Gravatar : activé, l'URL d'avatar n'est renvoyée que pour un vrai avatar Zulip et reste nulle pour les comptes qui utilisent gravatar.
Cas d'usage
une demande de validation lit le profil du demandeur avant de choisir le stream où la publier.
15

Get many users

user.getAll

Ce que tu vois dans n8n

Notes & cas d'usage

Rapporte en un passage la liste des membres de l'organisation, chaque compte avec son profil.

Paramètres clés

  • Custom Profile Fields : ajoute les champs de profil personnalisés à chaque compte renvoyé, utile quand l'équipe ou le service y sont stockés.
  • Client Gravatar : même règle que sur la lecture unitaire, l'URL d'avatar n'arrive que pour les avatars Zulip.
Cas d'usage
la revue d'accès trimestrielle exporte la liste complète et la compare au registre RH pour repérer les comptes qui auraient dû être fermés.
16

Update a user

user.update

Ce que tu vois dans n8n

Notes & cas d'usage

Modifie un compte déjà créé : son nom, ses permissions ou les champs personnalisés de son profil.

Paramètres clés

  • User ID : le compte à modifier.
  • Full Name : le nom affiché dans Zulip.
  • Role : 100 propriétaire, 200 administrateur de l'organisation, 300 modérateur, 400 membre, 600 invité.
  • Is Admin et Is Guest : les deux interrupteurs qui marquent le compte comme administrateur ou comme invité.
  • Profile Data : les champs de profil personnalisés à mettre à jour.
Cas d'usage
une promotion enregistrée dans l'outil RH fait passer le compte de membre à modérateur sans intervention manuelle.
Besoin d'aide

Besoin d'aide pour automatiser Zulip avec n8n ?

L'équipe te répond directement.

Chaque message est lu par une personne.

FAQ

Zulip et n8n, les questions qui suivent

01L'intégration Zulip n8n est-elle gratuite ?
Oui côté n8n. Le nœud Zulip est livré avec n8n : rien à installer, rien à payer en plus pour l'utiliser, que le workflow tourne sur n8n Cloud ou sur une instance auto-hébergée en Community Edition, sous licence Sustainable Use. Un workflow se comporte de la même façon dans les deux cas, passer de l'un à l'autre ne change rien au nœud. Le credential se crée une seule fois dans le menu Credentials et ressert dans tous les workflows qui parlent à Zulip, donc une deuxième ou une troisième automatisation ne demande aucune configuration supplémentaire. Ce que Zulip coûte à ton organisation est une autre question, que cette page ne traite pas.
02Quels identifiants faut-il pour connecter Zulip à n8n ?
Un seul credential par clé API, avec trois valeurs. L'URL est l'adresse de ton domaine Zulip, l'Email est l'adresse avec laquelle tu te connectes à Zulip, et l'API Key se récupère dans la roue crantée, puis Personal Settings, puis Account & privacy, puis API Key. n8n garde les trois ensemble dans Credentials, et le nœud Zulip propose ensuite ce credential dans sa liste déroulante, ici comme dans les autres workflows. Le nœud n'a pas de sélecteur d'authentification, la clé API est donc la seule voie. C'est le compte associé à la clé qui fixe ce que le workflow a le droit de faire, ce qui compte pour les opérations réservées aux administrateurs.
03Quelles sont les limites du nœud Zulip dans n8n ?
Trois comptent en pratique. Le nœud couvre 16 opérations réparties sur 3 ressources, messages, streams et utilisateurs : le reste de l'API Zulip lui échappe. Le nœud HTTP Request comble ce manque, il appelle n'importe quel endpoint de Zulip en réutilisant le même credential par authentification prédéfinie. Deuxième limite, les opérations qui visent un stream, un message ou un compte existant attendent un identifiant et non un nom, ce qui impose souvent une étape de recherche avant. Troisième limite, les droits suivent le compte de la clé API, et une option comme Include All Active ne renvoie rien sans privilèges d'administration.
04Peut-on réagir en temps réel à un message Zulip avec n8n ?
Non. Zulip n'a pas de nœud trigger dans n8n, rien ne démarre un workflow tout seul quand un message arrive dans un stream. Un workflow Zulip commence donc ailleurs : un Schedule Trigger qui se réveille à intervalle fixe, un Webhook n8n, c'est-à-dire une URL qu'un autre service appelle, ou le trigger d'un autre outil placé dans le même workflow. Dans les faits, la plupart des automatisations Zulip vont dans l'autre sens : l'événement intéressant se produit dans le CRM, l'outil de supervision ou le tableur, et Zulip sert à l'annoncer. Si surveiller Zulip lui-même reste l'objectif, une exécution planifiée qui lit puis compare est la réponse honnête.
05n8n ou Make pour Zulip ?
Ça dépend de l'endroit où tes données doivent rester. Make est hébergé par Make, sans option d'auto-hébergement, et facturé à l'opération : un workflow qui publie beaucoup de messages Zulip voit son coût grimper avec le volume. n8n tourne sur n8n Cloud ou sur ton propre serveur, ce qui garde le contenu des messages et la clé API dans ton infrastructure, un point qui parle aux équipes ayant choisi Zulip pour la même raison. L'éditeur visuel de Make reste plus accueillant pour une première automatisation. n8n laisse plus de marge dès qu'un workflow se ramifie, boucle sur une liste de membres ou bascule sur le nœud HTTP Request pour un endpoint absent du nœud Zulip.