Pourquoi choisir n8n comme outil d’automation ?
Depuis plusieurs années, on voit se développer dans les domaines de la Growth et du web en général une tendance à l’automatisation via des outils no-code ou low-code. Ces outils, dont les plus connus sont sans doute Zapier et Integromat, permettent de connecter entre eux des outils en ligne pour réaliser de puissants scénarios d’automatisation.
L’un d’entre eux commence à se populariser : n8n. Et ça n’a rien d’étonnant, car il est selon moi le plus complet et le plus intéressant du marché, pour plusieurs raisons.
À retrouver dans cet article :
- Qu’est-ce que n8n ?
- Les avantages de n8n
- Les limites de n8n
- En résumé
Qu’est-ce que n8n ?
n8n est un outil d’automatisation open-source, c'est-à-dire que l’ensemble de son code source est public. Cela implique que vous pouvez donc l’installer vous-même gratuitement, que ça soit sur votre ordinateur ou sur un serveur, mais nous y reviendrons.
n8n permet de connecter des nœuds entre eux (son nom complet est d’ailleurs à l’origine “nodemation”). Ces nœuds représentent des actions dans des outils donnés, permettant ainsi la création de scénarios complets appelés “workflows”.
Sur l’exemple de la capture suivante, on peut par exemple voir un scénario simple dont le premier nœud est un nœud Typeform, un outil de questionnaire en ligne. Cela implique donc qu’à chaque fois qu’un questionnaire Typeform en particulier sera rempli, le workflow se lancera : c’est ce que l’on appelle le “trigger” (le déclencheur).
Une fois le scénario lancé, on a un nœud de fonction qui permet, via un code en Javascript, de mettre en forme les réponses au questionnaire. Ces réponses sont alors ajoutées dans un Google Sheets via le nœud suivant. On a enfin un bloc de condition qui vérifie la réponse au questionnaire et, en fonction des cas, envoie soit un message sur Slack soit un email par Gmail.
n8n permet ainsi de tirer partie des API de tous les outils qu’il propose afin de les connecter entre eux. Une API est une interface qui permet de communiquer avec un outil donné, en lui envoyant des informations ou en lui en demandant. En proposant par exemple un noeud Gmail, n8n permet ainsi d’utiliser facilement l’API de Gmail sans avoir à rentrer dans les détails techniques, et d’ainsi facilement prévoir des scénarios incluant de l’envoi d’emails ou de la lecture d’informations d’une boite mail.
Jusqu’ici, rien de bien différent avec Zapier ou Integromat me direz-vous. Alors voyons maintenant les nombreux avantages qu’offre n8n par rapport à ses concurrents.
Les avantages de n8n
1. n8n est (presque) gratuit
Comme je l’évoquais dans la présentation, n8n est un outil open source. Il est donc très simple et gratuit de le télécharger sur son ordinateur et de le faire tourner “en local”. Bien sûr, si vous avez des scénarios devant tourner toutes les heures par exemple, ce ne sera pas la méthode la plus simple puisqu’il faudra que votre ordinateur soit connecté en permanence à Internet et allumé. Mais cela peut vous permettre d’au moins prendre en main le logiciel et d’expérimenter par vous-même s’il vous convient.
Le fait que n8n soit open source permet surtout de l’héberger soi-même sur un serveur. On a alors à notre disposition un outil en ligne, comme ses concurrents, mais pour aucune dépense autre que les frais d’hébergement. Il faut bien sûr pour cela avoir les compétences pour héberger un outil sur le cloud, mais si vous ou quelqu’un de votre entreprise peut le faire, la documentation de n8n permet d’y parvenir relativement rapidement.
Enfin, si vous souhaitez bénéficier de n8n hébergé mais que vous ne pouvez pas le faire vous-même, il existe une version plus “classique” de n8n appelée “n8n cloud”. Vous aurez alors accès à un outil en ligne en payant un abonnement mensuel. La solution ne sera donc pas gratuite, mais toujours plus avantageuse que la concurrence. En effet, n8n construit ses plans d’abonnement par rapport au nombre d’exécutions mensuelles de vos workflows complets, qu’ils aient 2 étapes ou 25. Là où les autres acteurs ont tendance à appliquer un modèle de prix à l’exécution d’une seule étape de n’importe lequel de vos scénarios.
2. n8n est entièrement personnalisable
n8n propose, au moment de la rédaction de cet article, des intégrations avec plus de 200 outils et protocoles. Mais il peut arriver d’avoir le besoin d’intégrer à un workflow un outil pour lequel ils ne proposent pas encore d’intégration native. Dans ce cas de figure, il sera quand même possible de réaliser un noeud personnalisé grâce au noeud “HTTP Call”.
Le noeud “HTTP Call” permet de réaliser un appel à une API. Ainsi, si un outil n’est pas proposé dans n8n et qu’il dispose d’une API, il suffira d’en lire la documentation pour comprendre comment l’utiliser, et ainsi l’interroger via ce noeud. Tout y est personnalisable, du type d’autorisation à donner, au type de méthode utilisée (GET, POST, …) en passant par les informations envoyées.
En plus de cela, n8n propose également un nœud appelé “Function” qui permet d’exécuter un code Javascript (plus précisément Node.js) et ainsi d’intégrer à ses workflows des opérations et manipulations complexes.
Et comme on le verra par la suite, il sera très facile de répliquer un nœud, ce qui vous garantira de pouvoir réutiliser le nœud complexe que vous aurez créé dans d’autres workflows.
3. n8n permet de créer des scénarios complexes
En plus de nœuds d’intégration à des outils, n8n propose un certain nombre de nœuds de gestion de la logique des workflows, permettant ainsi de définir des scénarios complexes à plusieurs branches. On trouve notamment :
- If : permet de diriger vers une branche ou l’autre en fonction d’une condition
- Switch : permet de diriger vers 3 ou 4 branches différentes en fonction de conditions
- Merge : permet de réunir deux branches en unifiant les données de différentes façons (ce qui permet notamment de garantir qu’on attend que les deux branches aient été exécutées pour continuer)
- Split in Batches : permet de séparer les exécutions multiples, comme on le verra par la suite
Cette capacité à rapidement pouvoir créer des workflows complexes distingue beaucoup n8n de ses concurrents, et notamment de Zapier dont les scénarios deviennent rapidement illisibles ou impossibles lorsque l’on cherche à mettre des conditions.
Et même si Integromat possède la plupart des fonctionnalités décrites ici, certains petits détails le placent tout de même derrière. C’est par exemple le cas sur le fait de pouvoir placer plusieurs déclencheurs pour un même scénario, chose possible avec n8n mais pas avec Integromat. Cela peut pourtant s’avérer très pratique, par exemple si l’on souhaite que les réponses à plusieurs formulaires Typeform différents déclenchent les mêmes actions.
4. n8n est copiable à l’infini
La structure même de n8n rend les noeuds et même les workflows complets entièrement copiables et réplicables. En effet, chaque élément de n8n est représenté au format JSON (une notation des objets propre à Javascript). Cela veut dire que si on sélectionne un nœud, qu’on le copie et qu’on le colle dans un éditeur de texte, on va en fait coller un texte représentant un objet Javascript. De la même manière, si on copie ce texte et qu’on le colle dans n8n, le nœud correspondant apparaît.
Cela rend très simple la possibilité de copier des nœuds ou des workflows, de les coller, de les communiquer et de les échanger, ou encore de les sauvegarder. Cela permet entre autres de créer des sauvegardes de ses workflows, par exemple dans Github, au cas où un problème survient. Et si ce problème survient, recréer tous ses workflows ne prendra que le temps d’un copier coller pour chaque scénario à rétablir. Et cela tombe bien, puisque l’on peut même créer un workflow pour sauvegarder automatiquement ses workflows sur Github toutes les nuits.
Et ce workflow n8n, ce n’est pas moi qui l’ai fait. Je l’ai trouvé dans la liste des workflows proposés par la communauté. C’est l’un des autres avantages de ce système de copie simple : couplé à une communauté active et ouverte, cela donne des dizaines et des dizaines d’idées de solutions à mettre en place.
5. n8n prend en compte les exécutions multiples
Lorsqu’un workflow n8n est exécuté, il est parfois possible que certains nœuds s’exécutent plusieurs fois afin de traiter plusieurs éléments, appelés des items. C’est par exemple le cas lorsqu’un nœud récupère des lignes dans un Google Sheets : il crée un item par ligne récupérée, et les nœuds suivants s'exécuteront pour chacun de ces items.
Par exemple, si l’on souhaite envoyer un email à des contacts présents dans un Google Sheets, le noeud Google Sheets crée plusieurs items, ce qui permet que le noeud Gmail situé juste après envoie un email à chacun des contacts, et ce sans besoin de réglages particuliers.
Comme évoqué précédemment, n8n propose également un nœud “Split in batches” permettant de n’exécuter tous les nœuds suivants que pour un item à la fois, ce qui peut s’avérer utile dans certains cas. Par exemple, pour le workflow de sauvegarde sur Github vu précédemment, cela permet de réaliser toute une suite d’actions complexes pour chaque workflow l’un après l’autre, ce qui n’aurait pas été possible (ou plus compliqué) en traitant tous les workflows à la fois.
6. n8n gère parfaitement les erreurs
n8n facilite énormément la détection des erreurs, leur gestion et leur correction. Tout d’abord, lors de chaque exécution, qu’elle soit manuelle (par exemple, lorsque l’on teste un scénario) ou automatique, il est possible de visualiser cette exécution sous la même forme que le workflow et de voir, si erreur il y a, où est-ce qu’elle se situe. Sur l’exemple suivant, on voit en effet que l’erreur dans cette exécution se situe au niveau du nœud Google Sheets.
Dans les réglages de chaque workflow, il est également possible d’indiquer un workflow d’erreur, qui se déclenchera en cas d’échec. On peut ainsi envisager de créer un workflow d’erreur général qui est lancé pour une erreur de n’importe quel workflow, et transmet par exemple l’erreur générée par Slack ou par email à l’équipe concernée.
On peut notamment transmettre dans le message d’alerte le lien de l’exécution qui a échoué : ainsi, lors d’une alerte, on ouvre une vue similaire à l’exemple précédent en un simple clic. On a ainsi la possibilité lors d’un échec de scénario de très vite identifier la source du problème afin de la corriger, ce qui permet un maintien dans le temps des scénarios très efficace.
Les limites de n8n
Je vous ai jusqu’ici vanté tous les mérites de n8n et pourquoi il s’agit selon moi du meilleur outil du marché. Mais comme tout outil, il n’est pas parfait et possède des désavantages dont vous devez être informés avant de décider de passer sur une telle solution. J’en vois principalement deux.
Tout d’abord, et vous l’aurez compris au fil de cet article, n8n est une solution très technique qui nécessite des bases en développement pour en tirer tout son potentiel. En fonction des entreprises et des employés il faudra donc soit former et accompagner les personnes les moins techniques, soit choisir un autre outil plus simple d’utilisation comme Zapier.
Certaines entreprises font parfois le choix d’utiliser les deux, afin que chacun puisse réaliser de “petites” automations soi-même, mais également que les personnes techniques puissent avoir la possibilité de mettre en place des choses plus ambitieuses. Dans ces cas de figure, un workflow n8n peut d’ailleurs servir de service externe, comme une API, pour effectuer une tâche complexe au sein d’un scénario Zapier ou Integromat.
L’autre principale limite est la maintenance technique que demande n8n. En effet, si vous décidez de l’héberger vous-mêmes, et qu’un certain nombre de scénarios importants pour vous tournent dessus, vous devrez être en capacité de garantir son maintien de façon continue. Oubliez par exemple de renouveler un certificat SSL dessus, et vous serez sûrs qu’une partie de vos scénarios cessera de fonctionner. Il s’agit là d’un risque important à prendre en compte, impliquant qu’une personne (ou une équipe) technique soit garante de gérer un problème en urgence, et pas seulement de l’installer une fois sans jamais plus y toucher.
Mais comme nous l’avons vu au début de cet article, cet inconvénient pourra être contourné par le fait de prendre la version payante “n8n cloud” dont le modèle de facturation est bien plus abordable que celui de ses principaux concurrents.
En résumé
Pour conclure, n8n est un outil d’automatisation plus technique et moins accessible que ses principaux concurrents. Mais il possède des fonctionnalités et un mode de fonctionnement permettant de créer des scénarios beaucoup plus ambitieux, et de facilement les maintenir et les faire évoluer dans le temps.
Rendez-vous compte : on peut même utiliser n8n pour créer des APIs !
Voilà pourquoi il est selon moi un outil indispensable pour tout projet amené à mettre en place une politique d’automatisation avancée.