Lesson 4 / 25
Start Node and Variables
Define inputs; reference outputs downstream.
Typed inputs, named outputs
A workflow begins at a start node where you declare input variables (text, paragraph, select, number, file) with names, types and whether they are required. Each later node produces output variables, and any downstream node can reference them by node and variable name. Clear names (query, language, order_id) make the graph readable. Dify also provides system variables (for example the user id or files) and, in chatflows, conversation variables that persist across turns. Dify's node names, menus and options change between versions; check the current Dify documentation.
Start, LLM, end
Every workflow passes variables from a start node through processing nodes to an end node.
A start-node design
Typed and documented inputs.
start node inputs
query paragraph required the customer's message
language select required English | Hindi | Marathi
order_id text optional from your app, not typed by the user
downstream references
LLM prompt uses start.query and start.language
HTTP node uses start.order_idPass trusted IDs from your system
Supply identifiers like customer or order IDs from your backend when calling the API, not from text the user typed.
Quick check: Where are a workflow's input variables declared?
- In the end node
- In the start node
- In the model provider settings
- In the browser console
Answer
In the start node — The start node defines what a run receives.