> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.userbot.ai/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.userbot.ai/_mcp/server.

# Pubblicare e monitorare

Un workflow che stai costruendo non gira per nessuno. Serve un passaggio
esplicito per farlo entrare in servizio: la pubblicazione. È voluto, e significa
che puoi mettere mano a un flusso attivo senza il timore di rompere quello che
sta girando.

## Bozza e versione pubblicata

Ogni workflow ha due facce.

La **bozza** è quello che vedi nel builder. Si salva da sola mentre lavori e non
ha effetto su chi avvia il flusso da fuori: puoi spostare blocchi, cambiare
condizioni, provare un'altra strada.

La **versione pubblicata** è la fotografia che il workflow esegue quando parte
dalla chat, da un agente, da un'attività schedulata, da un webhook di produzione
o da un evento di un'app. Resta ferma finché non ne pubblichi una nuova, anche
se nel frattempo la bozza è cambiata dieci volte.

> **Info**
>
> Le prove dentro il builder sono l'eccezione: fanno girare la bozza che hai
> sotto gli occhi. È comodo mentre costruisci, e va ricordato quando provi una
> correzione e la vedi funzionare: finché non pubblichi, tutti gli altri stanno
> ancora usando la versione vecchia. → [Come gira un'esecuzione](/esecuzione-workflow)

## Pubblicare

#### Rileggi il flusso dall'inizio

Guarda destinatari, identificativi e i rami che non hai mai provato. Se
durante le prove avevi messo il tuo indirizzo al posto di quello vero, è
adesso che va rimesso a posto.

![Il blocco HTTP aperto, con l'indirizzo a cui manderà i dati evidenziato: è uno dei valori da ricontrollare prima di pubblicare](/_fern-img/33ae14b510a9408cf22403efe27c37690ac07ae46d5373b6f35b62ec5b74be70.webp)

#### Apri Pubblica

Il pannello mostra il numero della **Nuova versione** e l'elenco delle
**Modifiche** rispetto all'ultima pubblicata. Se leggi *Nessuna modifica
rispetto all'ultima versione pubblicata*, la bozza e la versione in servizio
coincidono già.

![Il pannello che si apre sotto Pubblica: in alto Nuova versione con il numero v1, il campo Descrizione con l'asterisco che lo segna obbligatorio, l'elenco delle Modifiche (blocchi e collegamenti aggiunti) e in fondo il pulsante Pubblica, spento finché la descrizione è vuota](/_fern-img/903ff0f585e0305ecdc18465622f3db9a273d6da9876b4580196905ce5dc4559.webp)

Serve **esattamente un trigger attivo**. Se manca, il pannello dice
*Aggiungi un Trigger attivo prima di pubblicare.*; se ce n'è più d'uno, ti
chiede di disattivarli tutti tranne uno.

#### Scrivi cosa è cambiato

Il campo **Descrizione** è obbligatorio: finché è vuoto, **Pubblica** resta
spento. Non è una formalità: fra tre mesi sarà l'unica cosa che ti dice
perché. Una riga basta: *«aggiunto ramo per i clienti senza contratto»*.

![Il pannello Pubblica con la Descrizione scritta, l'elenco delle Modifiche e il pulsante Pubblica, ora acceso ed evidenziato](/_fern-img/1871ce428383e8332427ddf0744fd76b81ff5e0404561d110dfbc6e76ff6590c.webp)

#### Pubblica

Se il workflow è ancora in **Bozza**, ti chiede conferma: *Il workflow verrà
attivato*. Con **Pubblica e attiva** la versione entra in servizio e lo stato
accanto al titolo passa ad **Attivo**.

![La conferma Il workflow verrà attivato, che spiega il passaggio da Bozza ad Attivo, con Annulla e il pulsante Pubblica e attiva evidenziato](/_fern-img/c709c3bb09f1306a482054ef9c79028581993dab47dfb87516c66324d752d410.webp)

Le modifiche alle sole **Impostazioni** del workflow (destinatari degli avvisi,
limiti di spesa) non contano fra le **Modifiche**: da sole non accendono
**Pubblica**. Entrano in servizio con la prossima pubblicazione che contiene
anche una modifica al flusso. → [Costi e limiti](/costi-workflow)

## Disattivare e riattivare

**Disattiva** e **Attiva** stanno in **Opzioni workflow**, il menu accanto al
titolo. Disattivare spegne il flusso senza perdere nulla: definizione, versioni e
storico restano, e nessun nuovo avvio parte. Le esecuzioni già in corso o in coda
arrivano comunque in fondo.

![Il menu Opzioni workflow aperto accanto al titolo di un workflow in Bozza: Rinomina, Fissa nella barra laterale, Attiva evidenziata, Duplica, Importa ed Esporta workflow (.json), Elimina. Su un flusso in servizio, al posto di Attiva c'è Disattiva](/_fern-img/0e97744da26ecb460f0d298f5277281555fd505bf890a2224cf3f951cccdf6c0.webp)

È la cosa da fare quando un flusso sta producendo risultati sbagliati e non hai
ancora capito perché: molto meglio che smontarlo mentre gira. Ricorda che
pubblicare una nuova versione lo riattiva.

**Attiva** su un workflow mai pubblicato non basta: ti chiede di pubblicare
prima una versione.

## Tornare a una versione precedente

**Versioni precedenti**, il pulsante con l'icona accanto a **Pubblica**, elenca
tutte le versioni con il loro stato: **Pubblicata** quella in servizio,
**Sostituita** quelle che l'hanno preceduta, **Bozza** quella su cui stai
lavorando. Ognuna riporta la descrizione scritta al momento di pubblicarla.

![Versioni precedenti, aperto dal pulsante accanto a Pubblica: v3 Pubblicata, v2 Bozza e v1 Sostituita, ciascuna con data, descrizione e il comando Anteprima](/_fern-img/79ce5375110022af2b86fec5e9ad69f088f186b00642c26ff9eda2bc4368977d.webp)

Per ogni versione hai due comandi.

* **Anteprima** apre quella versione sulla tela, in sola lettura, con l'avviso
  *Stai vedendo la versione v…*. Da lì **Impostalo** la copia nella bozza (dopo
  una conferma, perché sostituisce la bozza attuale) e **Annulla anteprima**
  torna dove eri.
* **Pubblica** rimette in servizio quella versione così com'è, senza passare
  dalla bozza.

Nessuno dei due cancella niente: le altre versioni restano nell'elenco e puoi
tornarci allo stesso modo.

## Lo storico delle esecuzioni

**Esecuzioni passate** apre la **Cronologia** del workflow: ogni giro, dal più
recente, con l'esito, l'origine e il momento in cui è partito. In cima trovi i
totali di esecuzioni e costo; i filtri separano **Da conversazione**,
**Builder**, **Play** (le prove sul singolo blocco) e **Webhook**. Aprendone una
vedi lo stato per esteso e la versione che ha girato.

![La Cronologia di un workflow: in cima i totali di esecuzioni, blocchi eseguiti e costo; a sinistra i giri, con il pallino verde di quelli riusciti e quello rosso del giro #3, selezionato; a destra la sua traccia, un passaggio per riga con costo, durata e ora, chiusa da Esecuzione fallita](/_fern-img/c2f887b6d83762923812c5504dee55e8586215f8e66e386272b2d51701aa1aca.webp)

| Stato                                   | Cosa significa                                                                                                                                                 |
| --------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Esecuzione in corso**                 | Sta girando adesso, oppure è in coda dietro un'altra esecuzione dello stesso workflow                                                                          |
| **In attesa umana**                     | È ferma su un passaggio che aspetta: un modulo da compilare, un pulsante da premere, un operatore, una pausa, un altro workflow, un agente                     |
| **Esecuzione completata**               | È arrivata in fondo, almeno su un ramo                                                                                                                         |
| **Esecuzione fallita**                  | Si è interrotta e nessun ramo è arrivato in fondo                                                                                                              |
| **Esecuzione bloccata (limite budget)** | Non è partita per un limite: esecuzioni del mese esaurite, tetto orario o spesa mensile del workflow. Un limite che scatta a metà giro la fa risultare fallita |

Per vedere tutte le esecuzioni dell'area di lavoro insieme, anche delle attività
schedulate, c'è la pagina [Le esecuzioni](/esecuzioni-automazioni).

## Leggere un fallimento

Aprendo un'esecuzione vedi la traccia: i passaggi in ordine, ciascuno con la sua
durata e il suo costo. Il passaggio fallito riporta il messaggio di errore, e
cliccandolo vedi il suo **Output**. Se un'esecuzione è partita da una chat,
**Apri conversazione** ti porta lì; se è partita da un webhook, trovi il
**Payload** ricevuto.

#### Leggi l'errore del passaggio fallito

Un riferimento che non trova il dato lo dice, con il percorso che cercava.
Una chiamata HTTP fallita riporta la risposta del sistema chiamato.
→ [La sintassi dei riferimenti](/riferimenti-dati)

![Nella traccia di un'esecuzione fallita, la chiamata HTTP aperta: l'Input e, nell'Output, lo stato 503 con l'errore, e sotto Esecuzione fallita](/_fern-img/41a9ca8e66e3cea87c0ab5ea7f4335f4068e81e590695793baf366298e76f07a.webp)

#### Risali all'Output del passaggio precedente

Confrontalo con quello che il riferimento si aspettava. Nella maggior parte
dei casi il dato c'era, ma in una forma diversa: un elenco invece di un
valore, un campo assente in quel caso specifico.

![La stessa traccia con aperto il blocco Agente che veniva prima: il suo Output è il dato che il passaggio successivo ha ricevuto](/_fern-img/30173c7c995f52e31d1a15e94e8a9971c1237d9d93642e9746f6baf2c79d7a67.webp)

#### Controlla se il flusso ha imboccato il ramo giusto

Un flusso che finisce senza fare niente quasi sempre non è fallito. Guarda
quali rami ha percorso: una **Condizione** senza rami veri si ferma lì senza
errori, e il blocco **Codice** non esegue il codice durante le esecuzioni.
→ [I blocchi disponibili](/blocchi)

![Il passaggio della Condizione aperto nella traccia, con l'Output evidenziato: route catalogo, il ramo che il flusso ha imboccato](/_fern-img/d89dc030c03f9281335042420c3ce4df176ca255f4409c61a1a3a69a61570914.webp)

#### Fatti aiutare, se vuoi

Sul passaggio fallito, **Chiedi all'AI** apre la chat di **Crea con l'AI**
con l'errore già descritto e ti propone una correzione da applicare alla
bozza. → [Costruire un workflow](/costruire-workflow)

> **Warning**
>
> Un'esecuzione **In attesa umana** non è un errore, ma nemmeno finita: resta
> aperta finché qualcuno non interviene, senza scadere da sola. Il timeout di
> **Scala ad umano** non è ancora attivo, quindi non contare su quello per
> sbloccarla. Se ti capita spesso, rivedi il punto in cui il flusso si ferma.

## Farsi avvisare

Nelle **Impostazioni** del workflow, alla voce **Notifiche**, indichi chi deve
ricevere gli **Errori e avvisi sul budget**. Gli indirizzi ricevono un'email
quando un'esecuzione fallisce, quando la spesa del mese supera una soglia di
avviso e quando scatta un limite. È la differenza fra accorgersi di un flusso
rotto il giorno stesso e accorgersene a fine mese.

Metti almeno due destinatari, e non solo chi ha costruito il workflow.

→ [Costi e limiti](/costi-workflow)