# Nœud End

Le nœud **End** termine l'exécution d'un workflow. Tout ce qui est câblé vers un nœud End devient le résultat final du workflow — retourné à l'appelant, à la réponse du webhook, ou à la réponse de chat.

Les nœuds End ont une entrée et aucune sortie. Vous pouvez placer plusieurs nœuds End dans un même workflow — un par branche — et le runtime renverra celui qui est atteint en premier.

---

## Ce qu'il retourne

Le nœud End fait passer la sortie du nœud amont :

- `last_output` devient le `result.text` du workflow
- `last_output_parsed` (s'il existe) devient le `result.parsed` du workflow
- La map complète `outputs` est aussi exposée pour les appelants qui ont besoin des valeurs intermédiaires

Pour les workflows déclenchés par webhook, cela devient le corps de la réponse HTTP. Pour les workflows déclenchés par chat, cela devient le message de l'assistant.

---

## Plusieurs nœuds End

Les workflows à branches (après un Classify ou If/Else) utilisent typiquement un End par branche :

```
Webhook → Classify → ┬─ billing   → Agent → End
                     ├─ technical → Agent → End
                     └─ other     → Agent → End
```

Quelle que soit la branche que prend le runtime, le nœud End correspondant s'exécute et le workflow retourne. Les autres branches sont ignorées.

---

## Conseils

- **Câblez toujours un nœud End à chaque branche terminale.** Les branches qui finissent dans le vide s'exécutent quand même, mais l'appelant peut recevoir un résultat vide.
- **Placez un Agent en mode JSON juste avant End** si l'appelant attend des données structurées — l'objet parsé remonte dans le résultat du workflow.

---

*Source: https://agentbuilder.systalink.sn/docs/node-end — human documentation.*
*Other language: [/docs-md/en/node-end.md](/docs-md/en/node-end.md).*
*Machine-readable index: [/llms.txt](/llms.txt).*
