# Nodi: logica e dati

> Cinque nodi lavorano su logica e dati: fanno ragionare l'AI, dividono il flusso in rami, aspettano, chiamano un altro software e rispondono a chi ha mandato il webhook.

Pagina: https://supportfast.ai/it/guida/automazioni/nodi-logica/ · Sezione: Automazioni · Aggiornata il 30 ottobre 2026

## Aggiungere un nodo

Nel Playground dell'automazione il flusso scende dall'alto in basso: in cima la pillola «Inizio» sopra la scheda del trigger, in fondo la pillola «Fine».

1. **Premi il +**
   Fra due blocchi c'è il pulsante Aggiungi un nodo; dentro un ramo vuoto di una Condizione c'è Aggiungi un nodo al ramo.

2. **Scegli il tipo**
   Si apre il menu «Seleziona il nodo da inserire».

3. **Configuralo**
   Premi la scheda del nodo: a destra si apre il suo pannello. Finché la scheda mostra il suggerimento azzurro, come «Inserisci prompt», il nodo è da configurare.

Alcuni tipi non sono sempre nel menu:

- Risposta Webhook compare solo con il trigger Webhook.
- API, Risposta Webhook ed Effettua Chiamata hanno il lucchetto se il piano non comprende la loro funzione: il clic apre la finestra del piano.

I nodi d'azione, con le regole di Gestione Conversazione, sono descritti in [Nodi: messaggi e azioni](https://supportfast.ai/it/guida/automazioni/nodi-azioni.md).

## Il nome dei nodi

Ogni pannello si apre con il campo Nome del Nodo. Le regole sono queste:

- solo lettere senza accento, cifre e spazi: gli altri caratteri, comprese le lettere accentate, spariscono mentre scrivi;
- niente parole riservate al sistema, come `user`, `call`, `contact`, `history` o `today`, che danno l'errore «Questo nome è riservato al sistema: scegline un altro.»;
- al massimo 50 caratteri;
- un nome diverso per ogni nodo, senza distinzione fra maiuscole e minuscole.

Per Prompt, API ed Effettua Chiamata il nome è anche l'inizio delle variabili del risultato, come `{{Analisi}}`: vedi [Risultati dei nodi](https://supportfast.ai/it/guida/automazioni/variabili.md#nodi). Per questo conviene un nome breve e chiaro, come «Analisi», «CRM» o «Richiamo».

## Eliminare nodi e rami

Per eliminare un nodo apri il menu Opzioni del nodo sulla scheda e scegli Elimina, oppure premi il cestino in testa al pannello, e conferma. Eliminando una Condizione elimini anche i suoi rami e i nodi al loro interno.

Un ramo si elimina col cestino sulla sua riga, nel pannello della Condizione, insieme ai nodi che contiene. Il ramo «Altrimenti» non si elimina, e oltre a lui resta sempre almeno un ramo.

L'eliminazione vale quando salvi: fino ad allora Annulla, in alto, riporta all'ultima bozza salvata.

## Quanti nodi puoi usare

Un'automazione ha al massimo 15 nodi in tutto, trigger e fine compresi; una Condizione ne occupa 2.

Oltre il tetto la scheda del trigger mostra l'errore «L'automazione supera il limite massimo di 15 nodi.» e la pubblicazione è bloccata.

> **Consiglio**
>
> **Un flusso lungo si divide in due automazioni.** Alla fine della prima, un nodo Gestione Contatto aggiunge il contatto a una lista. La seconda parte con l'evento Contatto nella Lista su quella lista e continua il lavoro.

## Prompt

Lo usi per far leggere, riassumere o classificare qualcosa all'AI e passare il risultato ai nodi successivi. Il pannello ha due fasce, Generale e, con la Risposta Tool, Parametri.

- **Modello AI (Menu)**: Il modello che esegue questo nodo: di solito va bene il predefinito. Per un modello diverso puoi collegare la tua chiave OpenAI: vedi [Chiave OpenAI](https://supportfast.ai/it/guida/sviluppatori/chiave-openai.md).

- **Numero di messaggi (Nessuno, 5, 10, 20, 30, Tutti)**: Quanti messaggi recenti della conversazione dell'evento il modello riceve insieme alle istruzioni. Con gli eventi dei contatti e con il webhook non c'è una conversazione, quindi nessun messaggio. Oltre 5 messaggi valgono con la tua chiave OpenAI; senza, il nodo ne usa 5.

  (Predefinito: 5 messaggi)

- **Istruzioni per AI (Prompt) (Testo con variabili)**: Cosa deve fare l'AI. Con Aggiungi variabile inserisci dati come `{{user.firstName}}` o `{{call.summary}}`.

- **Tipo di Risposta (Risposta Testo · Risposta Tool)**: Risposta Testo restituisce un testo libero. Risposta Tool fa compilare all'AI dei valori precisi, i parametri, ciascuno in una sua variabile: la console dice «una risposta tool in formato JSON», cioè una risposta con una forma fissa, che i nodi successivi leggono un valore alla volta.

  Qui «tool» indica solo la forma della risposta. Non c'entra con i tool del Playground dell'agente chat né con l'evento Utilizzo di Tool.

  (Predefinito: Risposta Testo)

**I parametri della Risposta Tool.** Premi Aggiungi parametro. Ogni scheda «Parametro 1», «Parametro 2»… ha il pulsante Rimuovi e questi campi:

- Nome: breve e unico nel nodo, per esempio «interesse»;
- Tipo: che genere di valore l'AI deve restituire, come spiegato qui sotto;
- Descrizione: cosa deve contenere il valore;
- Valori, per Enum e Lista: scrivi un valore e premi `Invio`. Sono «I soli valori che l'AI può restituire.». Per una Lista sono facoltativi: senza, gli elementi sono liberi.

| Tipo | Cosa restituisce l'AI |
| --- | --- |
| Stringa | Un testo libero, per esempio un riassunto. È il tipo predefinito. |
| Numero | Un numero, per esempio una quantità o un importo. |
| Booleano | Sì o no (`true` o `false`): si controlla in una Condizione con È vero o È falso. |
| Data | Una data ricavata dalla conversazione. |
| Enum | Uno solo dei valori che scrivi in Valori, per esempio `alto`, `medio` o `basso`. |
| Lista | Più valori insieme; se scrivi dei Valori, solo fra quelli. |

**Cosa produce.** Il risultato si legge col nome del nodo: `{{Analisi}}` con Risposta Testo, `{{Analisi.interesse}}` per un parametro della Risposta Tool. Vedi [Risultati dei nodi](https://supportfast.ai/it/guida/automazioni/variabili.md#nodi). Nel dettaglio dell'esecuzione la scheda del Prompt mostra il prompt eseguito, il risultato e i valori estratti.

**Non così:** «Dimmi cosa pensi del cliente.» L'AI risponde con un testo lungo, che una Condizione non sa usare.

**Così:** Un Prompt «Analisi» con Risposta Tool e il parametro «interesse», tipo Enum, valori alto, medio, basso. Poi una Condizione su `{{Analisi.interesse}}` «Uguale a» `alto`.

## Condizione

Divide il flusso in strade diverse secondo i dati: per esempio una per chi ha preso appuntamento e una per tutti gli altri. Una Condizione appena inserita ha «Ramo 1», con una condizione vuota, e «Altrimenti», che prende i casi in cui nessun altro ramo è vero.

«Altrimenti» resta sempre l'ultimo a destra. Un clic sulla pillola apre le condizioni di quel ramo.

- **Gestione rami e diramazioni (Elenco dei rami)**: Una riga per ramo: dalla riga lo riordini con la maniglia, lo modifichi con la matita e lo elimini col cestino. Aggiungi nuovo ramo crea un ramo e lo apre.

- **Nome del Ramo (Obbligatorio)**: Per esempio «Cliente VIP». Vuoto: «Il nome del ramo è obbligatorio.».

- **Condizioni di attivazione (Campo 1 · Operatore · Campo 2)**: In Campo 1 di solito metti una variabile; scegli l'Operatore, cioè il tipo di confronto (non è una persona: vedi [i tre significati di «operatore»](https://supportfast.ai/it/guida/automazioni/trigger.md#operatore)); in Campo 2 il valore da confrontare, che compare solo con gli operatori di confronto. AND aggiunge una condizione allo stesso gruppo: devono essere vere tutte. OR aggiunge un gruppo alternativo: il ramo vale se almeno un gruppo è vero.

Gli operatori sono divisi per famiglia.

| Famiglia | Operatori | Quando è vero |
| --- | --- | --- |
| Testo | Uguale a, Diverso da, Contiene, Non contiene, Inizia con, Finisce con | Il confronto fra Campo 1 e Campo 2, come testo. |
| Testo | È vuoto, Non è vuoto | Campo 1 è vuoto, spazi esclusi, oppure no. |
| Numero | Uguale a, Diverso da, Maggiore di, Minore di, Maggiore o uguale a, Minore o uguale a | Il confronto fra due numeri. |
| Booleano | È vero, È falso | Il valore è un sì o un no; un valore vuoto conta come falso. |
| Esistenza | Esiste, Non esiste | Il valore c'è e non è vuoto, oppure è vuoto o manca. |
| Lista | È vuota, Non è vuota | Una lista senza elementi, o assente, oppure con elementi. |
| Lingua | È italiano, È inglese e le altre lingue della console | La lingua del valore è quella scelta, per esempio con `{{user.language}}`. |

**Da sapere.** Un ramo senza nodi va direttamente oltre la Condizione. Nel dettaglio dell'esecuzione, Confronti valutati mostra i valori confrontati davvero e il verdetto: se la Condizione prende sempre «Altrimenti», spesso la variabile è vuota o il valore è scritto in modo diverso. Per i numeri usa la famiglia Numero, e scrivi in Campo 2 il valore esattamente come lo produce la variabile.

> **Consiglio**
>
> **Il ramo più preciso va a sinistra.** I rami si valutano da sinistra a destra e vince il primo valido: un ramo generico messo prima «ruba» i casi a quelli dopo. Riordina i rami con la maniglia.

![Pannello del ramo Appuntamento della Condizione: due condizioni in AND, {{call.appointment.startsAt}} Esiste e {{call.customerNumber}} Esiste, con i pulsanti AND e OR.](https://supportfast.ai/_astro/05-ramo-condizione.Dl-ou5u2.webp)

_Il ramo vale solo se tutte le condizioni del gruppo AND sono vere._

## Attendi

Ferma l'esecuzione per un tempo o fino a una data, poi riparte dal nodo successivo. Durante l'attesa l'esecuzione è «Programmata».

- **Modalità (Da adesso · Data fissa · Data da variabile)**: Da adesso: l'attesa parte quando il flusso arriva al nodo. Data fissa: attende fino alla data e all'ora che scegli. Data da variabile: attende fino alla data contenuta in una variabile.

- **Data (Con Data fissa)**: Data e ora, non prima di oggi. Vengono lette nel fuso orario del workspace.

- **Variabile (Con Data da variabile)**: La variabile fra doppie graffe, per esempio `{{webhook.deliverydate}}`. Deve contenere una data completa, con l'ora: per le date delle chiamate vedi [Variabili](https://supportfast.ai/it/guida/automazioni/variabili.md#date-iso). Se la data non si può leggere, l'esecuzione si chiude come Fallita.

- **Solo in orario di apertura (Casella)**: Se il momento calcolato cade fuori dagli orari di apertura del workspace, l'attesa continua fino alla prossima apertura. Valgono anche le chiusure straordinarie. Se il workspace non ha orari, la casella è spenta. Gli orari si impostano in [Impostazioni del workspace](https://supportfast.ai/it/guida/workspace/impostazioni.md).

- **Offset e Quantità (Secondi, Minuti, Ore, Giorni, Settimane, Mesi)**: Offset è il menu dell'unità di tempo, da Secondi a Mesi; Quantità è il numero. Per esempio Offset Giorni e Quantità 2 vuol dire due giorni.

  Con Da adesso è il tempo da aggiungere: con 0 e la casella degli orari spuntata, il nodo prosegue subito se il workspace è aperto, altrimenti attende la prossima apertura. Con le date puoi aggiungere o togliere tempo: `-1` con Giorni vuol dire il giorno prima; 0 lascia la data com'è.

  (Unità predefinita: Secondi)

**Da sapere.** Se il momento calcolato è già passato, il flusso prosegue subito: non è un errore, e nel dettaglio leggi Proseguito subito: Sì. Con Solo in orario di apertura prosegue subito solo se il workspace è aperto; altrimenti aspetta la prossima apertura.

## API

Legge o scrive dati nel tuo gestionale, in un CRM, in un servizio online. Richiede la funzione «API e webhook» del piano.

Configurazione, prova, uso della risposta, errori ed esempi sono in [Chiamare un'API esterna](https://supportfast.ai/it/guida/sviluppatori/chiamate-api.md).

## Risposta Webhook

Decide cosa riceve il software che ha avviato l'automazione con il webhook. Compare nel menu solo con il trigger Webhook e richiede la funzione «API e webhook». Campi, tempi e posizione nel flusso sono in [La risposta](https://supportfast.ai/it/guida/sviluppatori/webhook-in-ingresso.md#risposta).

## Domande frequenti

**Posso spostare un nodo in un altro punto del flusso?**

Le schede dei nodi non si trascinano. Elimina il nodo e aggiungilo di nuovo dove serve con il pulsante +. Dentro una Condizione puoi invece riordinare i rami con la maniglia.

## Leggi anche

- [Nodi: messaggi e azioni](https://supportfast.ai/it/guida/automazioni/nodi-azioni.md): WhatsApp, email, chiamate, contatti e conversazioni.

- [Variabili](https://supportfast.ai/it/guida/automazioni/variabili.md): Cosa mettere nei campi delle condizioni e dei prompt.

- [Chiamare un'API esterna](https://supportfast.ai/it/guida/sviluppatori/chiamate-api.md): Il nodo API spiegato per chi integra.
