L’itérateur vous permet de parcourir un tableau d’enregistrements et d’exécuter des actions sur chacun. Il est essentiel pour les workflows qui doivent traiter plusieurs enregistrements renvoyés par Rechercher des enregistrements ou reçus via des webhooks.Documentation Index
Fetch the complete documentation index at: https://docs.twenty.com/llms.txt
Use this file to discover all available pages before exploring further.
Quand utiliser l’itérateur
| Scénario | Exemple |
|---|---|
| Traiter les résultats de recherche | Envoyer un e-mail à chaque personne trouvée |
| Gérer les tableaux de webhooks | Créer des enregistrements pour chaque élément, dans l’ordre |
| Mises à jour en masse | Mettre à jour plusieurs enregistrements avec des valeurs calculées |
| Notifications | Avertir plusieurs personnes d’un événement |
Comprendre l’itérateur
L’itérateur attend un tableau en entrée. Il va ensuite :- Prend le premier élément du tableau
- Exécute toutes les actions à l’intérieur de l’itérateur avec cet élément
- Passe à l’élément suivant
- Répète jusqu’à ce que tous les éléments soient traités
Configuration de base
Exemple : envoyer un e-mail à toutes les personnes dans les résultats de recherche
Objectif : Trouver tous les contacts d’une entreprise spécifique et envoyer à chacun un e-mail personnalisé.Étape 1 : Rechercher des enregistrements
- Ajoutez l’action Rechercher des enregistrements
- Objet : Personnes
- Filtre : Entreprise égale à “Acme Inc”
- Cela renvoie un tableau de personnes
Étape 2 : Vérifier que des résultats existent
- Ajoutez l’action Filtre
- Condition :
{{searchRecords.length}}est supérieur à 0 - Cela évite les erreurs de l’itérateur sur des résultats vides
Étape 3 : Ajouter un itérateur
- Ajoutez une action Itérateur
- Entrée du tableau : sélectionnez
{{searchRecords}} - Cela crée une boucle
Étape 4 : Ajouter des actions dans l’itérateur
Les actions placées dans l’itérateur s’exécutent pour chaque élément :- Ajoutez une action Envoyer un e-mail (dans l’itérateur)
- À :
{{iterator.currentItem.email}} - Objet : Bonjour
{{iterator.currentItem.firstName}}! - Corps : Message personnalisé utilisant les champs de l’élément en cours
Résultat
Si l’action Rechercher des enregistrements renvoie 5 personnes, l’itérateur :- Envoie un e-mail à la personne 1
- Envoie un e-mail à la personne 2
- … continue pour les 5
Accéder aux données de l’élément en cours
Dans l’itérateur, utilisez{{iterator.currentItem}} pour accéder à l’enregistrement en cours :
| Variable | Description |
|---|---|
{{iterator.currentItem}} | L’objet de l’enregistrement en cours dans son intégralité |
{{iterator.currentItem.id}} | ID de l’enregistrement |
{{iterator.currentItem.email}} | Champ e-mail |
{{iterator.currentItem.company.name}} | Nom de l’entreprise associée |
{{iterator.index}} | Position actuelle dans le tableau (indexé à partir de 0) |
Modèles courants
Mettre à jour plusieurs enregistrements
Objectif : Marquer toutes les tâches en retard comme “En retard”Créer des enregistrements à partir d’un tableau
Objectif : Le webhook reçoit une commande avec plusieurs éléments, créer un enregistrement pour chacunTraitement conditionnel dans la boucle
Objectif : N’envoyer un e-mail qu’aux contacts avec des adresses validesRésolution des problèmes
”L’itérateur attend un tableau”
Cause : Vous avez passé un seul enregistrement au lieu d’un tableau. Correctif : Assurez-vous de passer le résultat de Rechercher des enregistrements ou un champ de type tableau, pas un seul enregistrement.L’itérateur ne s’exécute pas
Cause : Le tableau est vide. Correctif : Ajoutez un filtre avant l’itérateur pour vérifier la longueur du tableau :Les actions s’exécutent trop de fois
Cause : Rechercher des enregistrements a renvoyé plus d’enregistrements que prévu. Correctif :- Ajoutez des filtres plus spécifiques à Rechercher des enregistrements
- Définissez une limite sur Rechercher des enregistrements (max 200)
- Ajoutez un filtre dans l’itérateur pour des conditions supplémentaires
Considérations relatives aux performances
- Utilisation de crédits : Chaque itération consomme des crédits pour ses actions
- Temps : Les grands tableaux prennent plus de temps à traiter
- Limites : Envisagez de traiter par lots les opérations très volumineuses
- Limites de débit : Les appels d’API externes peuvent atteindre des limites de débit avec de nombreuses itérations
Meilleures pratiques
- Vérifiez toujours la longueur du tableau avant l’itérateur pour éviter les erreurs
- Ajoutez des filtres dans les boucles quand tous les éléments n’ont pas besoin d’être traités
- Renommez votre étape Itérateur pour décrire ce qu’elle parcourt
- Testez avec de petits tableaux avant de traiter de grands ensembles de données
- Surveillez l’exécution des workflows pour vous assurer que les itérations se terminent comme prévu