Connecter des applications dans n8n — La vue d'ensemble
Dans n8n, chaque workflow commence par un trigger (un node qui déclenche le processus) et se poursuit avec des nodes d'action qui communiquent avec d'autres services. Pour faire dialoguer deux applications, vous avez besoin de trois éléments : un identifiant (pour que n8n soit autorisé à accéder à l'application), le bon type de node pour ce service, et une compréhension de la forme que prennent les données lorsqu'elles circulent entre les nodes.
n8n fait transiter les données entre les nodes sous forme d'objets JSON. Chaque node reçoit un tableau d'items, effectue une opération dessus, puis transmet un nouveau tableau. Cette structure cohérente est ce qui vous permet d'enchaîner quasiment n'importe quelles deux applications sans écrire de code de liaison.
Identifiants et choix du bon node
Avant que n8n puisse lire ou écrire dans une application externe, vous devez ajouter un identifiant. Rendez-vous dans la barre latérale gauche, cliquez sur Credentials, créez-en un nouveau et choisissez le type d'application (par exemple, Google Sheets OAuth2, token API Slack ou PAT Airtable). Une fois enregistré, chaque node de ce type dans vos workflows peut le réutiliser.
Chaque application dans n8n propose généralement plusieurs nodes. Pour Google Sheets, vous disposez d'un seul node « Google Sheets » avec plusieurs opérations (lire des lignes, ajouter une ligne, mettre à jour une ligne). Pour les CRM ou les outils marketing, vous voyez souvent un node par ressource. Choisir le bon node consiste essentiellement à faire correspondre l'opération dont vous avez besoin : lire, écrire ou mettre à jour.
Mapper les champs entre les services
Différentes applications nomment le même concept différemment. Un client dans Stripe correspond à `customer.email` ; dans HubSpot, il s'agit de `properties.email` ; dans une Google Sheet, cela peut être la colonne `Email`. Lorsque vous glissez la sortie d'un node dans le champ d'entrée d'un autre, n8n construit une **expression** qui extrait la valeur du JSON de l'item précédent.
Vous pouvez écrire des expressions manuellement en utilisant la syntaxe d'expression n8n, qui encapsule les références entre `{{ }}`. Par exemple, pour extraire un e-mail d'un node précédent appelé « Stripe Trigger » :
Pour récupérer une valeur depuis un node spécifique nommé plus en amont (utile lorsque le node précédent est un Set ou un Filter) :
Ce système de référencement constitue le cœur du mapping des champs entre les services.
Transformer les données avec les nodes Set et Code
Parfois, les données que vous recevez ne correspondent pas à ce qu'attend l'application suivante. Vous devrez peut-être renommer des clés, combiner des champs, supprimer les valeurs vides ou calculer un nouveau champ. Le node **Set** gère les cas simples : renommer, ne conserver que certaines clés ou ajouter de nouveaux champs statiques ou basés sur des expressions.
Lorsque vous avez besoin de boucles, de conditions ou de toute logique réelle, insérez un node **Code**. Il exécute du JavaScript ou du Python sur chaque item d'entrée et renvoie un nouveau tableau.
Le node Code est la solution de secours lorsque les expressions et le node Set ne suffisent pas.
Exemple concret : d'un paiement Stripe à une notification Slack
Imaginez que vous souhaitiez poster un message Slack à chaque fois qu'un nouveau client payant apparaît dans Stripe. Le flux comporte quatre nodes : Stripe Trigger (sur nouveau client) → Set (remodeler les données) → Code (filtrer sur les plans payants) → Slack (poster un message). Le node Set construit une chaîne de message conviviale, le node Code supprime les clients du plan gratuit, et le node Slack envoie un bloc formaté dans un canal.
Erreurs fréquentes et correctifs rapides
L'erreur la plus fréquente consiste à référencer un champ qui n'existe pas sur l'item entrant — n8n renverra silencieusement `undefined`. Ouvrez toujours le panneau de sortie du node précédent et inspectez la forme du JSON avant de câbler vos expressions. Un autre piège est d'oublier que les données dans n8n sont un **tableau d'items**, et non un objet unique ; ainsi, `input.all()` renvoie le tableau complet. Enfin, attention aux limites de taux : de nombreuses applications (Slack, Google Sheets, HubSpot) limitent les rafales, donc ajoutez un node **Wait** ou divisez les lots lorsque vous synchronisez de grands volumes de données.
Résumé
Connecter des applications dans n8n repose sur trois compétences : ajouter le bon identifiant et le bon node, mapper les champs avec des expressions, et remodeler les données avec les nodes Set ou Code lorsque les formes ne s'alignent pas. Maîtrisez-les, et presque n'importe quelles deux applications métier pourront échanger des données sans code personnalisé.
Point de contrôle de la leçon
Révisez la leçon et recevez des conseils sur votre travail.