> ## Documentation Index
> Fetch the complete documentation index at: https://docs.site.nu/llms.txt
> Use this file to discover all available pages before exploring further.

# Workflows

> Automatiseer acties op basis van Record-wijzigingen, Form-inzendingen, schedules en webhooks.

Workflows automatiseren werk bovenop je Records. Je kiest een trigger, voegt stappen toe, test de run en activeert de versie wanneer hij klaar is.

## Overzicht

Workflows zijn zelf Records.

Open **Workflows** voor de tabelweergave van het `workflows` Object. Klik op **New workflow** om de composer te openen.

Een Workflow heeft versies. Je bewerkt een Draft. Pas na **Activate** reageert de Workflow op echte triggers.

## Een Workflow maken

1. Klik op **New workflow**.
2. Kies een trigger.
3. Voeg stappen toe.
4. Verbind trigger en stappen op het canvas.
5. Test met **Run**.
6. Activeer met **Activate**.

Voor activatie moet de Workflow compleet zijn: een geldige trigger, minstens een stap en een verbonden pad.

## Triggers

Een Workflow heeft precies een trigger.

Record- en Form-triggers:

| Trigger            | Wanneer hij start                             |
| ------------------ | --------------------------------------------- |
| Record is created  | Er wordt een Record aangemaakt.               |
| Record is updated  | Er wordt een Record gewijzigd.                |
| Record is deleted  | Er wordt een Record verwijderd.               |
| Record is upserted | Er wordt een Record aangemaakt of bijgewerkt. |
| Form is submitted  | Een publieke Form-submission is geaccepteerd. |

Andere triggers:

| Trigger        | Wanneer hij start                 |
| -------------- | --------------------------------- |
| Manual trigger | Vanuit een gebruiker of actie.    |
| On a schedule  | Op een terugkerend tijdstip.      |
| Webhook        | Vanuit een inkomend HTTP-request. |

Bij Record-triggers kies je welk Object de trigger volgt. Bij Form-triggers gebruik je het aangemaakte Record via `{{trigger.targetRecord}}`.

## Stappen toevoegen

Stappen staan gegroepeerd in de action picker.

**Data**

* **Create record**
* **Update record**
* **Upsert record**
* **Delete record**
* **Find records**

**Flow**

* **If / else**
* **Filter**
* **Iterator**
* **Code**
* **AI Agent**

**I/O**

* **Send email**
* **Draft email**
* **HTTP request**
* **App tool**

**Resume**

* **Delay**

Workspace Apps kunnen extra App tools beschikbaar maken.

## Variabelen gebruiken

Gebruik variabelen tussen dubbele accolades om gegevens uit de trigger of eerdere stappen te gebruiken, bijvoorbeeld `{{trigger.after}}`.

Velden die variabelen ondersteunen hebben een picker. Gebruik die om beschikbare waarden te kiezen zonder de paden uit je hoofd te kennen.

## AI Agent als stap

Kies **AI Agent** om een Agent uit je Workspace te laten werken binnen de Workflow.

Selecteer de Agent en beschrijf wat hij moet doen.

Geef context expliciet mee met variabelen, bijvoorbeeld `{{trigger.before}}` en `{{trigger.after}}`. Zonder variabele krijgt de Agent die Record-gegevens niet vanzelf.

Laat het outputveld leeg, dan krijg je vrije tekst terug als `response`. Voeg je outputvelden toe, dan kan de Agent gestructureerde waarden produceren die latere stappen gebruiken.

## Testen en activeren

Gebruik **Run** om een Workflow handmatig te testen. Gebruik **Activate** om de Draft live te zetten.

Activeren werkt niet met terugwerkende kracht. De Workflow reageert alleen op triggers die na activatie gebeuren.

## Runs bekijken

Klik op **Runs** om de uitvoeringsgeschiedenis te openen.

Site.nu opent de `workflow_runs` table view gefilterd op deze Workflow. Daar zie je welke stappen liepen en waar een run faalde.

## FAQ

<AccordionGroup>
  <Accordion title="Kan ik een actieve Workflow aanpassen?">
    Je bewerkt een nieuwe Draft. De actieve versie blijft lopen totdat je de nieuwe Draft activeert.
  </Accordion>

  <Accordion title="Waarom kan ik niet activeren?">
    Controleer of er een trigger is, minstens een stap bestaat en het pad verbonden is.
  </Accordion>

  <Accordion title="Krijgt een AI Agent automatisch alle Record-context?">
    Nee. Geef context mee via variabelen in de prompt.
  </Accordion>
</AccordionGroup>
