Ouvrir le Studio

Merge Lists

Le node Merge Lists combine plusieurs tableaux en une seule liste plate, soit depuis un tableau JSON de tableaux, soit depuis des entrées séparées.

Node Merge Lists fusionnant deux listes par paires sur le canevas

À quoi sert le node Merge Lists ?

Le node Merge Lists concatène plusieurs tableaux en une seule liste plate. Il fonctionne selon deux modes : un mode entrée unique qui aplatit un seul tableau JSON de tableaux, et un mode multi-entrées qui expose entre 2 et 10 handles d’entrée séparés (list_1, list_2, …) pour câbler une liste par node source.

Cas d’usage typiques :

  • Combiner les résultats d’appels API parallèles (Semrush + Majestic, deux requêtes HubSpot, etc.) en une seule liste avant déduplication ou scoring.
  • Aplatir des résultats paginés collectés par un node Loop en un tableau unique pour les écritures en aval.
  • Agréger des lignes provenant de plusieurs Google Sheets ou bases Notion avant analyse par un LLM.
  • Fusionner les branches d’un workflow qui se sont divisées plus tôt et doivent converger avant traitement.

Configuration rapide

Suivez ces étapes pour ajouter et configurer le node Merge Lists dans votre workflow :

Ajouter le node au canevas

Ouvrez la bibliothèque de nodes, naviguez dans Tools > List Operations, puis glissez-déposez le node Merge Lists sur votre espace de travail.

Choisir le mode d’entrée

Ouvrez les paramètres du node. Désactivez Multiple Inputs pour recevoir un seul tableau JSON de tableaux sur le handle lists. Activez-le pour exposer des handles séparés list_1, list_2, … (réglez Number of Lists entre 2 et 10).

Connecter les sources

En mode entrée unique, reliez le node amont qui émet le tableau de tableaux au handle lists. En mode multi-entrées, reliez chaque node source à son propre handle numéroté.

Connecter la sortie

Reliez la sortie merged_list au node suivant. Référencez le résultat en aval avec {{Merge_Lists_0.merged_list}}.

Paramètres de configuration

Paramètres Merge Lists : correspondance des clés mode zipper et nommage

Le node ne possède qu’un seul paramètre, qui pilote la disposition des entrées.

Champs requis

Name string required default: Merge Lists

Nom du node — Identifie ce node lors de l’exécution et du débogage du workflow (ex. “Fusion Semrush + Majestic”).

Description string required default: Merge multiple lists into a single flat list

Description du node — Courte phrase décrivant ce que cette instance de Merge Lists combine.

Champs optionnels

list_count number default: 0

Nombre de listes — Pilote la disposition des entrées. Mettre 0 pour le mode entrée unique (un seul handle lists). Mettre une valeur entre 2 et 10 pour le mode multi-entrées (un handle par liste : list_1 à list_N). Les valeurs 1 ou > 10 sont rejetées à l’exécution.

lists json required

Entrée Lists (mode entrée unique) — Un tableau JSON de tableaux à aplatir. Chaque élément qui est lui-même un tableau est concaténé dans la sortie ; les éléments de type chaîne sont parsés comme tableaux JSON ; les autres scalaires sont ajoutés tels quels.

Exemple :

[
  ["apple", "banana"],
  ["cherry", "date"],
  ["elderberry"]
]
list_1...list_N json required

Entrées numérotées (mode multi-entrées) — Un handle par liste source, exposé lorsque list_count >= 2. Chaque handle accepte un tableau JSON (ou une chaîne JSON parsable comme tableau). Les N listes sont concaténées dans l’ordre : d’abord list_1, puis list_2, …, puis list_N.

Tip

Utilisez le mode multi-entrées lorsque les sources sont connues au moment de la conception (câblage plus clair, un handle par source). Utilisez le mode entrée unique lorsque le nombre de listes est dynamique, par exemple la sortie d’un node Loop.

Que renvoie le node ?

Le node renvoie un seul tableau JSON plat contenant tous les éléments de toutes les listes d’entrée, dans l’ordre d’entrée.

merged_list json

La liste aplatie. En mode multi-entrées, les éléments de list_1 arrivent en premier, suivis de ceux de list_2, et ainsi de suite jusqu’à list_N. En mode entrée unique, les éléments sont concaténés dans l’ordre du tableau extérieur.

Comment récupérer l’output ?

Référencez le résultat fusionné dans n’importe quel node aval avec la syntaxe de templating :

{{Merge_Lists_0.merged_list}}

Remplacez le suffixe d’index (_0) par le numéro d’instance correspondant sur votre canevas.

Exemples d’utilisation

Cas 1 : Fusionner des listes de mots-clés Semrush et Majestic (multi-entrées)

Objectif : Combiner les données de mots-clés issues de deux outils SEO en une seule liste avant déduplication et analyse.

Configuration :

  • Multiple Inputs : On
  • Number of Lists : 2
  • list_1 : {{Semrush_0.keywords}}
  • list_2 : {{Majestic_0.keywords}}
graph LR
    A[Semrush Keywords] --> C[Merge Lists]
    B[Majestic Keywords] --> C
    C --> D[Remove Duplicates]
    D --> E[LLM Analysis]

Résultat : Une liste unifiée de mots-clés, prête pour la déduplication ou le scoring en aval.

Cas 2 : Aplatir les résultats paginés d’un Loop (entrée unique)

Objectif : Fusionner des résultats d’API paginés collectés dans un node Loop en un seul tableau avant écriture dans BigQuery.

Configuration :

  • Multiple Inputs : Off (list_count = 0)
  • lists : {{Loop_0.results}} — un tableau de tableaux, un par page
graph LR
    A[Loop over pages] --> B[API Connector]
    B --> C[Loop results]
    C --> D[Merge Lists]
    D --> E[BigQuery Writer]

Chaque itération de la boucle renvoie une page d’enregistrements sous forme de tableau. Merge Lists aplatit le tableau de tableaux en une liste unique prête pour l’écriture.

Cas 3 : Combiner les lignes de trois Google Sheets (multi-entrées)

Objectif : Agréger les lignes de trois feuilles de calcul régionales avant traitement.

Configuration :

  • Multiple Inputs : On
  • Number of Lists : 3
  • list_1 : {{Google_Sheets_Reader_0.data}}
  • list_2 : {{Google_Sheets_Reader_1.data}}
  • list_3 : {{Google_Sheets_Reader_2.data}}

Sortie : Un tableau unique contenant toutes les lignes des feuilles US, EU et APAC, dans cet ordre.

Problèmes courants

L'entrée n'est pas un tableau JSON valide

Cause : Un handle a reçu une chaîne qui ne parse pas comme tableau JSON, ou une valeur d’un type non supporté (objet, nombre, …).

Solution : Vérifiez que le node amont émet un tableau JSON. S’il produit une chaîne, assurez-vous qu’elle est un littéral de tableau JSON valide (par ex. ["a","b"]). Pour des données arbitraires, insérez un JSON Path Extractor ou un Code Block pour les remettre en forme en tableau au préalable.

list_count doit valoir 0 ou être entre 2 et 10

Cause : L’exécution a reçu list_count = 1 ou list_count > 10. Le toggle de l’UI évite ce cas, mais la valeur peut être incorrecte si elle a été modifiée manuellement ou via API.

Solution : Réglez Number of Lists sur 0 (mode entrée unique) ou sur une valeur entre 2 et 10 (mode multi-entrées). La borne haute actuelle est de 10 handles.

Une entrée list_N est manquante

Cause : Number of Lists vaut N, mais l’un des handles list_1list_N n’est pas connecté sur le canevas.

Solution : Connectez chaque handle numéroté à une source amont, ou réduisez Number of Lists pour qu’il corresponde au nombre de handles connectés.

La sortie n'est pas plate / des tableaux imbriqués subsistent

Cause : Merge Lists ne concatène qu’un seul niveau. Si une liste source contient elle-même des tableaux, ces tableaux imbriqués sont conservés tels quels comme éléments.

Solution : Pré-aplatissez chaque source avec une étape dédiée, ou chaînez un second node Merge Lists en mode entrée unique sur le résultat.

Bonnes pratiques et pièges à éviter

Tip

Associez Merge Lists à un node Remove Duplicates en aval lorsque les sources sont susceptibles de se chevaucher (par ex. deux fournisseurs SEO renvoyant les mêmes mots-clés). Merge Lists ne déduplique jamais lui-même.

Warning

L’ordre compte. Les éléments sont concaténés dans l’ordre des entrées : list_1, puis list_2, …, puis list_N (multi-entrées), ou dans l’ordre du tableau extérieur (entrée unique). Si un node aval dépend d’un ordre précis, triez explicitement après la fusion plutôt que de vous fier au câblage des entrées.

Nodes complémentaires