Ouvrir le Studio

Filter List

Filtrer une liste selon des conditions avec une logique AND/OR

A quoi sert ce node ?

Le node Filter List filtre une liste d’elements selon une ou plusieurs conditions combinees avec une logique AND/OR. Il prend en charge les listes de chaines de caracteres simples et les listes d’objets, avec un large choix d’operateurs de comparaison.

Usages courants :

  • Filtrer des articles par statut ou categorie depuis une base de donnees Notion
  • Supprimer les elements vides ou invalides d’une liste
  • Trouver les elements correspondant a des criteres specifiques
  • Filtrer dynamiquement selon la saisie utilisateur via des placeholders {{variable}}

Configuration rapide

Ajouter le node Filter List

Glissez-le sur le canvas depuis le panneau Tools.

Connecter une entree de type liste

Connectez la sortie d’un node qui produit une liste (par exemple, Create List, API Connector, Notion Database Reader) a l’entree list.

Configurer les conditions

Ouvrez les parametres du node et definissez vos conditions de filtrage. Choisissez si vous filtrez des chaines simples ou des objets, definissez une ou plusieurs conditions, et selectionnez l’operateur logique (AND/OR).

Utiliser la sortie filtree

Connectez la sortie filtered_list au node suivant de votre workflow.

Configuration

Entree

list json required

La liste a filtrer. Doit etre un tableau JSON de chaines de caracteres ou d’objets.

Parametres

list_type select default: string

Le type d’elements dans la liste. Choisissez string pour les listes de chaines simples ou object pour les listes d’objets avec des proprietes.

conditions json

Un tableau de regles de filtrage. Chaque condition est un objet avec les champs suivants :

  • id — identifiant unique de la condition
  • property — la propriete de l’objet a evaluer (utilise uniquement quand list_type est object)
  • operator — l’operateur de comparaison a appliquer
  • value — la valeur de comparaison (supporte les placeholders {{variable}})
logical_operator select default: AND

Comment les conditions multiples sont combinees. AND exige que toutes les conditions soient remplies. OR exige qu’au moins une condition soit remplie.

Operateurs disponibles

OperateurDescription
equalsCorrespondance exacte
not_equalsNe correspond pas
containsContient la sous-chaine
not_containsNe contient pas la sous-chaine
starts_withCommence par la valeur
ends_withSe termine par la valeur
greater_thanSuperieur a (comparaison numerique)
less_thanInferieur a (comparaison numerique)
greater_than_or_equalSuperieur ou egal a
less_than_or_equalInferieur ou egal a
is_emptyLa valeur est vide ou null
is_not_emptyLa valeur n’est pas vide ou null
inLa valeur fait partie d’une liste separee par des virgules

Sortie

Une filtered_list contenant uniquement les elements qui correspondent aux conditions.

{
  "filtered_list": [
    {"title": "Article A", "status": "published"},
    {"title": "Article C", "status": "published"}
  ]
}

Exemples

Filtrer des objets par propriete

Filtrer une liste d’articles pour ne conserver que ceux dont le status est egal a published.

graph LR
    A[Notion Database Reader] --> B[Filter List]
    B --> C[Loop: Traiter les articles]

Parametres :

  • list_type : object
  • conditions : [{"id": "1", "property": "status", "operator": "equals", "value": "published"}]
  • logical_operator : AND

Filtrer des chaines contenant un mot-cle

Filtrer une liste d’URL pour ne garder que celles contenant blog.

graph LR
    A[Sitemap Reader] --> B[Filter List]
    B --> C[Web Scraper]

Parametres :

  • list_type : string
  • conditions : [{"id": "1", "property": "", "operator": "contains", "value": "blog"}]
  • logical_operator : AND

Filtre dynamique avec des variables

Filtrer des produits par une categorie fournie par l’utilisateur via un node Text Input. Utilisez la syntaxe {{variable}} pour referencer des valeurs dynamiques.

graph LR
    A[Text Input: Categorie] --> B[Filter List]
    D[API Connector: Produits] --> B
    B --> C[LLM: Resumer]

Parametres :

  • list_type : object
  • conditions : [{"id": "1", "property": "category", "operator": "equals", "value": "{{category}}"}]
  • logical_operator : AND

Le placeholder {{category}} est remplace a l’execution par la valeur provenant du node Text Input.

Bonnes pratiques

  • AND vs OR. Utilisez AND lorsque les elements doivent satisfaire toutes les conditions simultanement (par exemple, status est “published” ET author est “Alice”). Utilisez OR lorsque les elements doivent correspondre a au moins une des conditions (par exemple, status est “draft” OU status est “review”).
  • Mode string vs object. Utilisez le mode string pour les listes plates de valeurs (URL, noms, mots-cles). Utilisez le mode object lorsque votre liste contient des donnees structurees avec des proprietes sur lesquelles vous souhaitez filtrer.
  • Utilisez les variables pour plus de flexibilite. Au lieu de coder en dur les valeurs de filtrage, utilisez les placeholders {{variable}} pour que le meme workflow puisse filtrer differemment selon la saisie utilisateur ou les donnees en amont.

Problemes courants

Aucun resultat retourne

Verifiez que vos conditions sont correctes. Si vous utilisez la logique AND, toutes les conditions doivent etre satisfaites simultanement — essayez de passer en OR pour voir si les conditions individuelles correspondent. Verifiez egalement que les valeurs de comparaison sont exactes (les operateurs comme equals sont sensibles a la casse).

Mauvais list_type selectionne

Si votre liste contient des objets (par exemple [{"name": "Alice"}, {"name": "Bob"}]) mais que list_type est defini sur string, le filtre n’evaluera pas correctement les proprietes. Passez en mode object et specifiez le champ property dans vos conditions.

Variable non resolue dans la valeur de condition

Si vous voyez le texte litteral {{variable}} dans vos resultats au lieu de la valeur resolue, assurez-vous que le node reference est connecte et a produit une sortie. Le nom de la variable doit correspondre exactement au nom de sortie du node en amont.

Nodes associes