Mette in pausa il workflow e attende che un utente approvi o rifiuti l'azione prima di continuare. Una notifica in-app e (opzionalmente) un'email vengono inviate all'approvatore assegnato. Se approvato, il workflow prosegue allo step successivo. Se rifiutato, il workflow si interrompe con uno stato che riflette il rifiuto.
approvalIl nodo Approval introduce un punto di decisione umana in un workflow altrimenti automatizzato. Quando l'esecuzione raggiunge questo nodo, il workflow entra nello stato In attesa e una scheda attività appare nella pagina Attività per l'approvatore assegnato. L'approvatore legge il titolo e la descrizione, poi clicca Approva per permettere al workflow di continuare o Rifiuta per interromperlo.
Questo è essenziale per workflow che comportano conseguenze nel mondo reale — invio di email in massa, transazioni finanziarie, pubblicazione di contenuti o attivazione di azioni irreversibili — dove è richiesta l'approvazione umana prima di procedere.
| Campo | Stato | Descrizione |
|---|---|---|
| Assignee | Obbligatorio | Indirizzo email o ID utente della persona che deve approvare. Supporta riferimenti {{ variable }}. |
| Title | Obbligatorio | Breve descrizione mostrata all'approvatore, ad esempio Approva fattura #{{ trigger.output.invoice_id }}. |
| Description | Opzionale | Spiegazione più dettagliata per aiutare l'approvatore nella sua decisione. Supporta riferimenti {{ variable }}. |
| Timeout | Opzionale | Tempo massimo di attesa per una risposta, in minuti. Se il timeout scade senza una decisione, il workflow fallisce. Lascia vuoto per attendere indefinitamente. |
| Send Email | Opzionale | Interruttore. Quando attivo, invia un'email all'assegnatario oltre alla notifica in-app. Richiede SMTP configurato nelle Impostazioni. |
Questi campi sono disponibili per gli step successivi se il workflow è stato approvato. Un workflow rifiutato termina senza produrre output.
| Campo | Tipo | Descrizione |
|---|---|---|
approved | boolean | True se l'approvatore ha cliccato Approva, false se ha cliccato Rifiuta. |
decision | string | approved o rejected. |
decided_by | string | Email o ID utente della persona che ha preso la decisione. |
decided_at | string | Timestamp ISO 8601 della decisione. |
notes | string | Commento opzionale inserito dall'approvatore al momento della decisione. |
{{ agent.output.text }} così il responsabile può vedere l'intera bozza inline.{{ variable }} nel Title e nella Description per mostrare dati rilevanti dagli step precedenti, così l'approvatore ha il contesto completo senza dover cercare altrove.