Automatiseringen

Variabelen en sjablonen

Gebruik gegevens van de gebeurtenis en van eerdere stappen in titels, berichten en verzoeken

Laatst bijgewerkt op

Met variabelen maak je teksten die per geval anders zijn. Je schrijft een variabele tussen accolades en Tillor vult de echte waarde in zodra de automatisering draait.

Een voorbeeld van een taaktitel:

Controleer {occupation.terrain.name}

Eindigt de bezetting op terrein 12, dan heet de taak Controleer 12.

Een variabele invoegen

Boven elk tekstveld waar variabelen werken, staat de knop Variabele. Klik erop en je ziet een lijst met alle beschikbare gegevens, gegroepeerd per record. Typ om te zoeken (Variabelen zoeken) en klik op een regel. Tillor zet de variabele op de plek van je cursor.

Je kunt een variabele ook gewoon zelf typen. Onder het veld laat een grijs vak zien hoe de tekst eruitziet met voorbeeldgegevens, zodat je meteen ziet of het klopt.

Variabelen werken in tekstvelden zoals titels, beschrijvingen, subtaken, berichten, het id van een klant, factuur of ander record, het pad of de URL van een API-verzoek, de body, de payload van een webhook, de naam van de webhook-gebeurtenis en de waarden van headers. Bij de laatste twee ontbreekt de knop Variabele, maar een variabele die je zelf typt, wordt wel ingevuld. Tillor controleert die twee velden niet op fouten en toont er geen voorbeeld bij.

In velden waar je een gegeven kiest om mee te vergelijken, schrijf je de variabele zonder accolades. Dat geldt voor Alleen wanneer, Als / anders en Tot bij Wachten tot (bijvoorbeeld invoice.status), voor het Veld van een Schakel en voor de Datum van een Vertraging.

Welke variabelen zijn er

VariabeleBeschikbaarInhoud
{occupation.…}, {invoice.…}, {task.…}, {reservation.…} en andereNa een gebeurtenisDe velden van het record waar de gebeurtenis over gaat. De naam van het record is ook het begin van de variabele
{occupation.terrain.name}Na een gebeurtenisVelden van de records waar het record naar verwijst, zoals de klant of het terrein. Dit werkt één niveau diep
{triggeredBy.name}, {triggeredBy.id}AltijdDe collega die de gebeurtenis veroorzaakte. Leeg als het systeem dat deed
{invoice.…}Bij Factuur is vervallenDe velden van de vervallen factuur en de klant
{reservation.…}, {task.…} en andereBij Een datum is bereiktDe velden van het record waarvan de datum bereikt is, plus de records waar het naar verwijst
{now}Bij Elke dag op een uur en cronHet moment waarop de uitvoering startte
{threadId}, {messageId}Bij gebeurtenissen over inboxberichten, zoals inbox:message-createdHet id van het gesprek en van het bericht
De velden van de gebeurtenisNa Wachten op een gebeurtenis, via OntvangenDe gegevens van de gebeurtenis waarop gewacht werd. Ze vervangen de gegevens van dezelfde records uit het begin van de flow
{createdTask.id}, {createdTask.name}Na Taak aanmakenDe taak die zojuist is aangemaakt
{foundTask.id}, {foundTask.name}, {foundTask.priority}, {foundTask.status}Na Taak zoeken, via GevondenDe taak die de stap vond
{updatedTask.id}, {updatedTask.status}Na Taakstatus zettenDe taak waarvan de status gewijzigd is
{updatedTask.id}, {updatedTask.priority}Na Taakprioriteit zettenDe taak waarvan de prioriteit gewijzigd is
{updatedTask.id}Na Taak bijwerkenDe taak die is aangepast
{foundDocument.id}, {foundDocument.name}, {foundDocument.status}, {foundDocument.userMetadata.documentType}, {foundDocument.userMetadata.insuranceExpiryDate}Na Document zoeken, via GevondenHet document dat de stap vond
{updatedDocument.id}Na Document bijwerkenHet document dat is aangepast
{response.status}, {response.body}, {response.data.…}Na API-verzoekHet antwoord van het verzoek
{foundCustomer.…}, {foundInvoice.…}, {foundReservation.…} en andereNa Record opzoeken, via GevondenDe velden van het record dat de stap vond, plus de records waar het naar verwijst. De naam is found plus het recordtype: foundCustomer, foundReservation, foundOccupation, foundInvoice, foundPayment, foundTerrain, foundTask, foundDocument, foundAccessMethod, foundNfcTag, foundMeter, foundInboxThread of foundInboxMessage
{body.…}, {query.…}, {receivedAt}Na Inkomende webhookDe JSON-body, queryparameters en het ontvangsttijdstip van de webhook-aanroep
Elke doelnaam uit Variabelen mappenNa Variabelen mappenWat je in die stap als doel invult, bijvoorbeeld {invoice.displayId} na invoice ← {foundInvoice}
{item.…}In de stappen achter Voor elkDe velden van het item waarvoor de stap nu loopt, zoals {item.id}
{approvalTask.id}Na Goedkeuring vragenDe taak die om goedkeuring vraagt
{createdComment.id}Na Opmerking toevoegenDe opmerking die zojuist is geplaatst
{bookedInvoice.displayId}Na Factuur boeken, via KlaarHet factuurnummer van de geboekte factuur
{paymentLink.url}Na Betaallink aanmaken, via KlaarDe link waarmee de klant online kan betalen
{consumptionInvoice.id}Na Verbruik factureren, via KlaarDe factuur voor het meterverbruik
{extendInvoice.id}Na Conceptfactuur voor verlengingDe conceptfactuur die de bezetting verlengt
{createdAccessMethod.id}, {createdAccessMethod.value}Na Toegangsmiddel aanmakenHet nieuwe toegangsmiddel en zijn waarde, zoals de code van een QR-code of pincode
{error.message}, {error.step}Na een actie met Doorgaan als deze stap mislukt, via FoutDe foutmelding en de naam van de stap die mislukte

Welke velden een record precies heeft, zie je in de lijst achter de knop Variabele. Bij de trigger staat ook het overzicht Gegevens die deze gebeurtenis levert.

Alleen wat eerder in de flow komt

Een stap kan alleen variabelen gebruiken uit de trigger die hem bereikt en uit stappen die eerder in dezelfde weg staan. Bereiken meerdere triggers dezelfde stap, dan zijn alleen de variabelen beschikbaar die elke van die triggers levert. Een veld uit een eerdere stap telt mee als elke van die triggers ook langs die stap komt. Gebruik je een variabele die op dat punt niet bestaat, dan meldt Tillor [Veld]: [variabele] is bij deze stap niet beschikbaar. Een flow met zo'n melding kan niet worden ingeschakeld.

Sommige records bewaren extra gegevens in één veld, zoals de documentgegevens in userMetadata. Elke sleutel daaronder is een variabele: {document.userMetadata.documentType}, {document.userMetadata.insuranceExpiryDate} of een andere sleutel. De bekende sleutels, zoals het type en de vervaldatum van een document, staan ook in de lijst en kun je als datum vergelijken. Een datum zonder uur, zoals 2026-10-07, verschijnt in een bericht als 07-10-2026.

Variabelen van Voor elk ({item.…}) bestaan alleen in de stappen achter de uitgang Voor elk, niet achter Klaar. Variabelen van een uitgang die je niet nam, bestaan ook niet: {paymentLink.url} is er alleen als de stap via Klaar liep, en {foundTask.id} alleen na Gevonden.

Bij gebeurtenissen waarvan de gegevens niet beschreven zijn, kan Tillor niet nagaan welke variabelen bestaan. Dan krijg je die melding niet. Controleer zulke flows dus extra goed met een testuitvoering.

Een nieuwe waarde vervangt de oude

Een tweede API-verzoek in dezelfde flow vervangt de response van het eerste. Hetzelfde geldt voor createdTask na een tweede Taak aanmaken, voor foundTask na een tweede Taak zoeken of Record opzoeken op Taak, en voor error na een tweede mislukte stap. Gebruik de gegevens uit een antwoord dus in de stap die er direct op volgt.

Hoe waarden worden ingevuld

Tillor past de notatie aan op het soort veld.

In gewone tekst (titels, beschrijvingen, subtaken):

  • Datums staan in de tijdzone van je organisatie, bijvoorbeeld 05-10-2026. Valt het tijdstip niet precies op middernacht, dan staat er ook een tijd bij, zoals 05-10-2026 14:30
  • Een leeg veld geeft een lege tekst
  • Een variabele die Tillor niet kent, blijft staan zoals je hem schreef, bijvoorbeeld {occupation.terain.name}. Een typfout valt zo meteen op in de taak of het bericht
  • Is een gekoppeld record er niet, dan blijft de variabele leeg. Een bezetting zonder reservering geeft voor {occupation.reservation.displayId} dus niets, en een gebeurtenis die het systeem veroorzaakte geeft niets voor {triggeredBy.name}. Wil je in dat geval andere tekst, zet er dan een Als / anders voor met is leeg

In JSON (de Payload van een webhook en de Body van een API-verzoek):

  • Tekst wordt veilig ingevuld. Aanhalingstekens, nieuwe regels en andere speciale tekens in de waarde kunnen de JSON niet breken
  • Getallen en ja/nee-waarden komen zonder aanhalingstekens, dus zet je er geen om heen. Tekst zet je wel tussen aanhalingstekens
  • Datums gaan door als internationale datum en tijd, zoals 2026-10-05T08:00:00.000Z, zodat het ontvangende systeem er goed mee overweg kan
{
  "reservation": "{reservation.displayId}",
  "adults": {reservation.numberOfAdults}
}

Is de JSON na het invullen niet geldig, bijvoorbeeld omdat een getal leeg is, dan stopt de uitvoering met een foutmelding.

In een pad of URL (bij een API-verzoek):

  • Waarden worden omgezet zodat ze in een adres passen. Een naam met een spatie geeft dus geen kapot adres
  • Datums gaan ook hier als internationale datum en tijd
  • Wat je zelf typt, blijft zoals je het typt. Wil je een spatie in een zoekterm, typ dan zelf %20

Een waarde opmaken

Zet achter de variabele een | en een opmaak, bijvoorbeeld {invoice.amountOutstanding|currency}. Zonder opmaak staat een bedrag er kaal, zoals 1295.3. Met |currency wordt dat € 1.295,30.

OpmaakVoorbeeldResultaat
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 (vast aantal decimalen)
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
  • Getallen en bedragen staan altijd in Belgische notatie: een punt voor duizendtallen en een komma voor decimalen
  • Datums en tijden staan in de tijdzone van je organisatie
  • Kan de opmaak de waarde niet lezen, bijvoorbeeld |currency op tekst, dan staat de waarde er gewoon zonder opmaak
  • Een opmaak die Tillor niet kent, blijft staan zoals je hem schreef, en de editor toont er een melding over
  • In JSON en in een URL wordt de opgemaakte waarde als tekst ingevuld. Zet er in JSON dus aanhalingstekens omheen

Een API-antwoord gebruiken

Na een API-verzoek kun je velden uit het antwoord gebruiken met {response.data.…}. Het antwoord van een zoekopdracht naar taken ziet er bijvoorbeeld zo uit:

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

Dan geeft {response.data.items.0.id} het id van de eerste taak (de eerste in een lijst is nummer 0) en {response.data.items.0.priority} de prioriteit ervan.

Tillor kan de velden van een antwoord pas als variabele aanbieden als het weet hoe het antwoord eruitziet. Dat kan op twee manieren:

  • Laat de automatisering één keer echt lopen. Tillor gebruikt dan het antwoord van de laatste uitvoering
  • Plak een voorbeeld in het tabblad Testuitvoering, in het veld Voorbeeld van het API-antwoord. Dat veld verschijnt zodra de flow een API-verzoek bevat. Eronder staan Velden in dit antwoord. Klik op een veld om het gekopieerd te krijgen, inclusief accolades

Daarna staan de velden in de lijst achter de knop Variabele en in de lijst bij Veld van een Schakel.

Typ je een pad onder response.data zelf, dan wordt dat altijd geaccepteerd, ook zonder voorbeeld. Verder:

  • {response.body} bevat de eerste 4000 tekens van het antwoord. Is het antwoord langer, dan wordt de rest afgekapt
  • {response.data} is leeg als het antwoord geen JSON is, of als het antwoord erg groot is (meer dan 100.000 tekens)
  • Bij een zoekopdracht zonder resultaat bestaat {response.data.items.0.id} niet. Een Schakel op zo'n veld gaat dan via Standaard

Een voorbeeld in de test

In het tabblad Testuitvoering vul je ook de voorbeeldgegevens van de gebeurtenis in. Zo zie je in de testuitvoering welke waarden Tillor zou invullen. Zie Testen en uitvoeringen.

Was deze pagina nuttig?

Op deze pagina