Skip to Content
Automatisations

Variables et modèles

Utilisez les données de l'événement et des étapes précédentes dans les titres, les messages et les requêtes

Dernière mise à jour le

Avec les variables, vous créez des textes qui changent selon le cas. Vous écrivez une variable entre accolades et Tillor insère la vraie valeur dès que l'automatisation s'exécute.

Un exemple de titre de tâche :

Controleer {occupation.terrain.name}

Si l'occupation se termine à l'emplacement 12, la tâche s'appelle Controleer 12.

Insérer une variable

Au-dessus de chaque champ de texte où les variables fonctionnent se trouve le bouton Variable. Cliquez dessus et vous voyez une liste de toutes les données disponibles, regroupées par enregistrement. Tapez pour chercher (Rechercher des variables) et cliquez sur une ligne. Tillor place la variable à l'endroit de votre curseur.

Bouton Variable au-dessus du champ Titre avec la liste des variables disponibles ouverte

Vous pouvez aussi simplement taper une variable vous-même. Sous le champ, une zone grise montre à quoi ressemble le texte avec des données d'exemple, pour que vous voyiez tout de suite si c'est correct.

Les variables fonctionnent dans les champs de texte comme les titres, les descriptions, les sous-tâches, les messages, l'identifiant d'un client, d'une facture ou d'un autre enregistrement, le chemin ou l'URL d'une requête API, le corps, la charge utile d'un webhook, le nom de l'événement du webhook et les valeurs des en-têtes. Pour les deux derniers, le bouton Variable est absent, mais une variable que vous tapez vous-même est bien remplie. Tillor ne contrôle pas ces deux champs à la recherche d'erreurs et n'y affiche pas d'exemple.

Dans les champs où vous choisissez une donnée à comparer, vous écrivez la variable sans accolades. Cela vaut pour Uniquement si, Si / sinon et Jusqu'à dans Attendre jusqu'à (par exemple invoice.status), pour le Champ d'un Aiguillage et pour la Date d'un Délai.

Quelles variables existent

VariableDisponibleContenu
{occupation.…}, {invoice.…}, {task.…}, {reservation.…} et autresAprès un événementLes champs de l'enregistrement concerné par l'événement. Le nom de l'enregistrement est aussi le début de la variable
{occupation.terrain.name}Après un événementLes champs des enregistrements auxquels l'enregistrement renvoie, comme le client ou l'emplacement. Cela fonctionne sur un niveau de profondeur
{triggeredBy.name}, {triggeredBy.id}ToujoursLe collègue qui a provoqué l'événement. Vide si c'est le système
{invoice.…}Avec Facture échueLes champs de la facture échue et du client
{reservation.…}, {task.…} et autresAvec Une date est atteinteLes champs de l'enregistrement dont la date est atteinte, ainsi que les enregistrements auxquels il renvoie
{now}, {today}ToujoursLe moment où l'étape s'exécute, et minuit de ce jour dans le fuseau horaire de l'organisation. Avec un décalage (ci-dessous), {today + 1 day} donne demain
{threadId}, {messageId}Pour les événements sur les messages de la boîte de réception, comme inbox:message-createdL'identifiant de la conversation et du message
Les champs de l'événementAprès Attendre un événement, via ReçuLes données de l'événement attendu. Elles remplacent les données des mêmes enregistrements du début du flux
{createdTask.id}, {createdTask.name}Après Créer une tâcheLa tâche qui vient d'être créée
{foundTask.id}, {foundTask.name}, {foundTask.priority}, {foundTask.status}Après Rechercher une tâche, via TrouvéeLa tâche trouvée par l'étape
{updatedTask.id}, {updatedTask.status}Après Définir le statutLa tâche dont le statut a été modifié
{updatedTask.id}, {updatedTask.priority}Après Définir la priorité de la tâcheLa tâche dont la priorité a été modifiée
{updatedTask.id}Après Modifier la tâcheLa tâche qui a été modifiée
{foundDocument.id}, {foundDocument.name}, {foundDocument.status}, {foundDocument.userMetadata.documentType}, {foundDocument.userMetadata.insuranceExpiryDate}Après Rechercher un document, via TrouvéeLe document trouvé par l'étape
{updatedDocument.id}Après Mettre à jour un documentLe document qui a été modifié
{response.status}, {response.body}, {response.data.…}Après Requête APILa réponse de la requête
{foundCustomer.…}, {foundInvoice.…}, {foundReservation.…} et autresAprès Rechercher un enregistrement, via TrouvéeLes champs de l'enregistrement trouvé par l'étape, ainsi que les enregistrements auxquels il renvoie. Le nom est found plus le type d'enregistrement : foundCustomer, foundReservation, foundOccupation, foundInvoice, foundPayment, foundTerrain, foundTask, foundDocument, foundAccessMethod, foundNfcTag, foundMeter, foundInboxThread ou foundInboxMessage
{body.…}, {query.…}, {receivedAt}Après Webhook entrantLe corps JSON, les paramètres de requête et l'heure de réception de l'appel du webhook
Chaque nom de cible de Mapper des variablesAprès Mapper des variablesCe que vous saisissez comme cible dans cette étape, par exemple {invoice.displayId} après invoice ← {foundInvoice}
{item.…}Dans les étapes après Pour chaqueLes champs de l'élément pour lequel l'étape s'exécute, comme {item.id}
{approvalTask.id}, {approval.decision}, {approval.label}, {approval.note}, {approval.decidedBy.name}Après Demander une décision, via une optionLa tâche, l'option choisie, le nom de cette option, la note et le collègue qui a choisi
{task.…}, {action.label}, {note}Avec Une action de tâche est choisieLa tâche, le bouton choisi et la note saisie
{createdComment.id}Après Ajouter un commentaireLe commentaire qui vient d'être publié
{bookedInvoice.displayId}Après Comptabiliser la facture, via TerminéLe numéro de la facture comptabilisée
{paymentLink.url}Après Créer un lien de paiement, via TerminéLe lien avec lequel le client peut payer en ligne
{consumptionInvoice.id}Après Facturer la consommation, via TerminéLa facture de la consommation du compteur
{extendInvoice.id}Après Facture brouillon de prolongationLa facture brouillon qui prolonge l'occupation
{createdAccessMethod.id}, {createdAccessMethod.value}Après Créer un moyen d'accèsLe nouveau moyen d'accès et sa valeur, comme le code d'un code QR ou d'un code PIN
{error.message}, {error.step}Après une action avec Continuer si cette étape échoue, via ErreurLe message d'erreur et le nom de l'étape qui a échoué

Les champs exacts d'un enregistrement apparaissent dans la liste derrière le bouton Variable. Sur le déclencheur se trouve aussi l'aperçu Données fournies par cet événement.

Seulement ce qui vient plus tôt dans le flux

Une étape ne peut utiliser que les variables du déclencheur qui l'atteint et des étapes situées plus tôt sur le même chemin. Si plusieurs déclencheurs atteignent la même étape, seules sont disponibles les variables que chacun de ces déclencheurs fournit. Un champ d'une étape précédente compte si chacun de ces déclencheurs passe aussi par cette étape. Si vous utilisez une variable qui n'existe pas à ce stade, Tillor affiche [Champ] : [variable] n'est pas disponible à cette étape. Un flux avec un tel message ne peut pas être activé.

Certains enregistrements conservent des données supplémentaires dans un seul champ, comme les données du document dans userMetadata. Chaque clé en dessous est une variable : {document.userMetadata.documentType}, {document.userMetadata.insuranceExpiryDate} ou une autre clé. Les clés connues, comme le type et la date d'échéance d'un document, figurent aussi dans la liste et peuvent être comparées comme date. Une date sans heure, comme 2026-10-07, apparaît dans un message sous la forme 07-10-2026.

Les variables de Pour chaque ({item.…}) n'existent que dans les étapes après la sortie Pour chaque, pas après Terminé. Les variables d'une sortie que vous n'avez pas empruntée n'existent pas non plus : {paymentLink.url} n'existe que si l'étape est passée par Terminé, et {foundTask.id} seulement après Trouvée.

Pour les événements dont les données ne sont pas décrites, Tillor ne peut pas vérifier quelles variables existent. Vous ne recevez alors pas ce message. Contrôlez donc ces flux avec un soin particulier à l'aide d'une exécution de test.

Une nouvelle valeur remplace l'ancienne

Une deuxième Requête API dans le même flux remplace la response de la première. Il en va de même pour createdTask après une deuxième Créer une tâche, pour foundTask après une deuxième Rechercher une tâche ou Rechercher un enregistrement sur Tâche, et pour error après une deuxième étape échouée. Utilisez donc les données d'une réponse dans l'étape qui la suit directement.

Comment les valeurs sont insérées

Tillor adapte la notation au type de champ.

Dans un texte ordinaire (titres, descriptions, sous-tâches) :

  • Les dates sont dans le fuseau horaire de votre organisation, par exemple 05-10-2026. Si l'heure n'est pas exactement minuit, une heure est ajoutée, comme 05-10-2026 14:30
  • Un champ vide donne un texte vide
  • Une variable que Tillor ne connaît pas reste telle que vous l'avez écrite, par exemple {occupation.terain.name}. Une faute de frappe se remarque ainsi tout de suite dans la tâche ou le message
  • Si un enregistrement lié n'existe pas, la variable reste vide. Une occupation sans réservation ne donne donc rien pour {occupation.reservation.displayId}, et un événement provoqué par le système ne donne rien pour {triggeredBy.name}. Si vous voulez un autre texte dans ce cas, placez avant un Si / sinon avec est vide

Dans du JSON (la Charge utile d'un webhook et le Corps d'une requête API) :

  • Le texte est inséré de façon sûre. Les guillemets, les retours à la ligne et autres caractères spéciaux de la valeur ne peuvent pas casser le JSON
  • Les nombres et les valeurs oui/non sont insérés sans guillemets, donc n'en mettez pas autour. Le texte, lui, se met entre guillemets
  • Les dates sont transmises sous forme de date et heure internationales, comme 2026-10-05T08:00:00.000Z, pour que le système destinataire les comprenne bien
{
  "reservation": "{reservation.displayId}",
  "adults": {reservation.numberOfAdults}
}

Si le JSON n'est pas valide après l'insertion, par exemple parce qu'un nombre est vide, l'exécution s'arrête avec un message d'erreur.

Dans un chemin ou une URL (pour une requête API) :

  • Les valeurs sont converties pour tenir dans une adresse. Un nom avec une espace ne donne donc pas une adresse cassée
  • Ici aussi, les dates sont transmises sous forme de date et heure internationales
  • Ce que vous tapez vous-même reste tel que vous le tapez. Si vous voulez une espace dans un terme de recherche, tapez vous-même %20

Décaler une date

Après une variable de date, un décalage peut figurer : {reservation.checkOut + 1 day}, {today - 2 weeks}, {invoice.dueDate + 3 hours|date}. Les unités sont minutes, hours, days, weeks et months (le singulier est aussi accepté). Les jours et les semaines ont une longueur fixe, de sorte qu'une validité garde la même durée malgré l'heure d'été et l'heure d'hiver ; les mois suivent le calendrier, donc le 31 janvier plus un mois donne le 28 ou le 29 février. Sur une valeur qui n'est pas une date, le décalage ne fait rien, et une unité qui n'existe pas est une erreur de l'étape. Les champs de date comme Valable jusqu'au acceptent la même notation.

Mettre une valeur en forme

Ajoutez après la variable un | et un format, par exemple {invoice.amountOutstanding|currency}. Sans format, un montant apparaît brut, comme 1295.3. Avec |currency, cela devient € 1.295,30.

FormatExempleRésultat
currency{invoice.amountOutstanding|currency}€ 1.295,30
currency:USD{invoice.amountOutstanding|currency:USD}US$ 1.295,30
number{invoice.amountOutstanding|number}1.295,3
number:2{invoice.amountOutstanding|number:2}1.295,30 (nombre fixe de décimales)
date{invoice.dueDate|date}30-06-2026
datetime{invoice.createdAt|datetime}01-06-2026 16:04
time{invoice.createdAt|time}16:04
upper / lower{customer.lastName|upper}VAN DEN BROECKE
  • Les nombres et les montants sont toujours en notation belge : un point pour les milliers et une virgule pour les décimales
  • Les dates et les heures sont dans le fuseau horaire de votre organisation
  • Si le format ne peut pas lire la valeur, par exemple |currency sur du texte, la valeur apparaît simplement sans mise en forme
  • Un format que Tillor ne connaît pas reste tel que vous l'avez écrit, et l'éditeur affiche un message à ce sujet
  • Dans du JSON et dans une URL, la valeur mise en forme est insérée comme texte. En JSON, mettez donc des guillemets autour

Utiliser une réponse d'API

Après une Requête API, vous pouvez utiliser des champs de la réponse avec {response.data.…}. La réponse d'une recherche de tâches ressemble par exemple à ceci :

{
  "items": [
    { "id": "task_1", "priority": "LOW" }
  ]
}

Alors {response.data.items.0.id} donne l'identifiant de la première tâche (la première d'une liste porte le numéro 0) et {response.data.items.0.priority} sa priorité.

Tillor ne peut proposer les champs d'une réponse comme variables que s'il sait à quoi ressemble la réponse. Il y a deux façons :

  • Laissez l'automatisation s'exécuter une fois pour de bon. Tillor utilise alors la réponse de la dernière exécution
  • Collez un exemple dans l'onglet Exécution de test, dans le champ Exemple de réponse API. Ce champ apparaît dès que le flux contient une Requête API. En dessous se trouvent les Champs de cette réponse. Cliquez sur un champ pour le copier, accolades comprises

Ensuite, les champs figurent dans la liste derrière le bouton Variable et dans la liste de Champ d'un Aiguillage.

Si vous tapez vous-même un chemin sous response.data, il est toujours accepté, même sans exemple. Par ailleurs :

  • {response.body} contient les 4000 premiers caractères de la réponse. Si la réponse est plus longue, le reste est tronqué
  • {response.data} est vide si la réponse n'est pas du JSON, ou si la réponse est très volumineuse (plus de 100 000 caractères)
  • Pour une recherche sans résultat, {response.data.items.0.id} n'existe pas. Un Aiguillage sur un tel champ passe alors par Par défaut

Un exemple dans le test

Dans l'onglet Exécution de test, vous saisissez aussi les données d'exemple de l'événement. Vous voyez ainsi dans l'exécution de test quelles valeurs Tillor insérerait. Voir Tests et exécutions.

Que se passe-t-il ensuite ?

  • Dès que l'automatisation s'exécute, Tillor remplace chaque variable par la vraie valeur. Une variable que Tillor ne connaît pas reste telle que vous l'avez écrite.
  • Si une donnée est vide, l'emplacement reste vide. Si vous voulez alors un autre texte, placez avant un Si / sinon avec est vide.

Un problème ?

Cette page t'a-t-elle été utile ?

Sur cette page