๐Ÿ‡ฌ๐Ÿ‡ง EN
๐Ÿ‡ฎ๐Ÿ‡น IT

This page has moved. Go to the Node Reference →

4.3 Node Reference

Every action inside a Flusso workflow is performed by a node. This reference documents every available node type: what it does, how to configure it, and what output it produces. Nodes are grouped by category, matching the sidebar organisation in the editor.

Categories

  1. Triggers
  2. AI & Agents
  3. Data Retrieval & Processing
  4. Flow Control
  5. Data Manipulation
  6. Notifications & Messaging
  7. File Operations
  8. Human / User Interaction
Variable syntax: In all configuration fields, use {{ step_key.output.field }} to reference the output of a previous step. Drag data pills from the console directly into fields for automatic insertion.

1. Triggers

Triggers are the starting point of every workflow. Only one trigger per workflow is allowed. The trigger fires based on an external event and passes its payload into the workflow context as {{ trigger.output.* }}.

Manual Trigger

Fires when you click the Run button in the editor or call the workflow via the API. Use for on-demand tasks and for testing during development.

Output: Any data passed as the run payload (via the API or test form).

Webhook Trigger

Fires when an HTTP POST request is received at the workflow's unique webhook URL (/api/webhooks/{workflow-id}). The request body, headers, and method are available in the output.

FieldDescription
Auth TypeNone, Header Secret, or HMAC Signature.
Header Name(Header Secret mode) The name of the HTTP header that must carry the secret value.
SecretThe expected secret value or HMAC key used for signature verification.

Output: payload (request body), headers, method.

Schedule Trigger

Fires on a repeating schedule defined by a cron expression. The workflow executes automatically at each scheduled time as long as it is in Active status.

FieldDescription
Cron ExpressionStandard 5-part cron (minute, hour, day, month, weekday). Example: 0 9 * * 1-5 runs at 9 AM Monโ€“Fri.

Output: scheduled_at โ€” the ISO timestamp when the run was triggered.

Event Trigger

Fires when another workflow emits a named event via the Emit Event node. Use this to chain workflows: one workflow emits, another listens.

FieldDescription
Event NameThe name this workflow listens for. Must match the event name set in the emitting workflow's Emit Event node exactly.

Output: event_name, payload (data from the emitting workflow).

Error Trigger

Fires automatically when any other workflow in your account encounters a fatal error during execution. Use to build centralised error-handling or alerting workflows.

Output: workflow_id, run_id, step_key, error_message.

Platform-Specific Triggers

The following triggers work like the Webhook Trigger but validate platform-specific signatures:

Output: Same as Webhook Trigger โ€” the request body is available as payload.

File Watch Triggers

These triggers fire when a new file is detected in a monitored location:

Output: file_name, file_path, file_size, mime_type.


2. AI & Agents

Agent

The most powerful node in Flusso. The Agent node sends a prompt to a large language model and returns its response. Agents can optionally perform RAG (retrieve relevant context from a knowledge base), call external tools, and maintain memory across runs.

FieldDescription
ProviderSelect one of your configured AI Providers. (Linear mode only โ€” in graph mode, use a Model Config node.)
ModelThe model identifier (e.g. gpt-4o, claude-sonnet-4-6). Defaults to the provider's default model.
System PromptInstructions for the model that define its persona, constraints, or output format. Supports variable references.
PromptThe user message sent to the model. Supports variable references. This is where you pass the input for the agent to act on.
TemperatureControls randomness. Range 0โ€“2. Lower values (0.1โ€“0.3) are more deterministic; higher values (0.7โ€“1.0) are more creative.
Max TokensMaximum number of tokens in the model's response. Leave blank for the model's default.
JSON ModeWhen enabled, instructs the model to return a valid JSON object. Use with the Output Schema field.
Output SchemaA JSON Schema that defines the expected structure of the model's JSON response. Flusso validates the response against this schema.
Context SourcesSelect one or more RAG (knowledge base) steps earlier in the workflow to inject their retrieved documents into the agent's context automatically.
Memory Provider(Linear mode) Select a Memory Provider and scope to enable persistent conversational memory.
Max History TurnsMaximum number of past conversation turns to inject from memory into the prompt.

Output: text (raw model response), json (parsed JSON if JSON Mode is on), usage (token counts).

Model Config Graph only

A configuration node (not executed) that specifies the AI model an Agent node uses in graph mode. Connect its output to the model_in port of an Agent node.

FieldDescription
ProviderSelect an AI Provider.
ModelThe model identifier.
TemperatureResponse randomness.
Max TokensMaximum response length.

Memory Graph only

A configuration node that specifies a memory backend for an Agent node in graph mode. Connect to the memory_in port.

FieldDescription
Memory ProviderSelect a configured Memory Provider.
ScopeNamespace scope: agent, workflow, run, or step.
NamespaceOptional custom namespace override.
Read Last N TurnsHow many past turns to inject into the agent's context.
Max TokensToken budget for injected memory. Older turns are dropped when the budget is exceeded.

MCP Tool Graph only

A configuration node that defines an external tool accessible to an Agent node via the Model Context Protocol (MCP). Connect to the tool_in port. Multiple MCP Tool nodes can connect to the same Agent.

FieldDescription
NameThe tool name the agent sees when deciding whether to call it.
DescriptionA natural-language description of what this tool does. The model uses this to decide when to invoke it.
Transportstdio โ€” launch a subprocess; SSE โ€” connect to an HTTP JSON-RPC endpoint.
Command / Args(stdio) The command and arguments to run the tool process.
URL / Headers(SSE) The HTTP endpoint URL and any required headers.

3. Data Retrieval & Processing

RAG (Knowledge Base Search)

Performs a semantic vector search against one of your Knowledge Bases. Returns the most relevant document excerpts, which you can then pass to an Agent node via its Context Sources setting.

FieldDescription
Knowledge BaseThe Knowledge Base to search.
QueryThe search query. Supports variable references โ€” typically the user's question or the agent's prompt.
LimitMaximum number of document chunks to return (default 5).
ThresholdMinimum similarity score (0โ€“1). Chunks below this score are excluded.
Query ExpansionWhen enabled, the system generates multiple variations of the query to improve recall.
Diversity ModeWhen enabled, results are selected to maximise topical coverage (MMR algorithm).

Output: items โ€” array of { text, score, metadata } objects.

Reranker

Re-ranks a list of search results using a cross-encoder model that evaluates each result's relevance to the query more precisely than vector similarity alone.

FieldDescription
Results SourceReference to a RAG step's output (e.g. {{ rag_step.output.items }}).
Query SourceThe query string used to score relevance.
Top NReturn only the top N results after re-ranking.
ProviderThe AI Provider with a reranking model.

Output: items โ€” re-ranked array of { text, score, metadata } objects.

Web Search

Performs a live web search and returns a list of results (title, URL, snippet). Useful for agents that need up-to-date information.

FieldDescription
QueryThe search query. Supports variable references.
Max ResultsMaximum number of search results to return.

Output: results โ€” array of { title, url, snippet }.

HTTP Request

Makes an outbound HTTP request to any URL. Use this node to interact with external REST APIs, fetch remote data, or send data to third-party services.

FieldDescription
MethodHTTP method: GET, POST, PUT, PATCH, or DELETE.
URLThe request URL. Supports variable references.
HeadersKey-value pairs to include as request headers (e.g. Authorization: Bearer token).
BodyRequest body (for POST/PUT/PATCH). Enter JSON or a variable reference to a previous step's output.

Output: status (HTTP status code), body (response body), headers.

Transform

Maps and reshapes data from a previous step into a new structure. Define a set of output fields, each with a name and a value expression (supports variable references and static values).

FieldDescription
FieldsA list of output fields. Each field has a name (the output key) and a value (a variable reference or static value).

Output: An object with the defined fields as keys.

Schema Extractor

Uses an AI model to extract structured data from unstructured text (emails, documents, web pages). You define a JSON Schema describing the expected output; the model populates it.

FieldDescription
ProviderAI Provider to use for extraction.
Source TextThe text to extract from. Supports variable references.
SchemaA JSON Schema defining the output structure (e.g. {"name": "string", "amount": "number"}).

Output: An object matching the defined schema.

Image Generation

Generates an image from a text prompt using an AI image model (e.g. DALL-E 3, Stable Diffusion).

FieldDescription
ProviderAI Provider with image generation capability.
PromptDescription of the image to generate. Supports variable references.
SizeImage dimensions: 1024ร—1024, 1024ร—1792, or 1792ร—1024.

Output: url (URL to the generated image), revised_prompt.


4. Flow Control

Logic Gate

Evaluates one or more conditions and routes the workflow to the true or false branch based on the result. Conditions are combined with AND or OR logic.

FieldDescription
OperatorAND โ€” all conditions must be true; OR โ€” at least one must be true.
ConditionsEach condition has a field (variable reference), an operator (equals, contains, greater than, is null, is empty, etc.), and a value.
Available operators: equals, not equals, contains, does not contain, starts with, ends with, greater than, less than, is null, is not null, is empty, is not empty.

Output: result (true or false). Execution continues only down the matching branch.

Switch

Routes the workflow to one of several named branches based on the value of an expression. Similar to a switch/case statement in programming.

FieldDescription
ExpressionThe value to evaluate (variable reference, e.g. {{ step.output.status }}).
CasesA list of case values (e.g. "pending", "approved", "rejected"). A branch is created for each case, plus a default branch.

Output: matched_case โ€” the case that matched.

Loop

Iterates over an array and executes the sub-steps for each item. The current item is available inside the loop as a variable.

FieldDescription
Items PathVariable reference to the array to iterate over (e.g. {{ fetch.output.items }}).

Output: results โ€” array of outputs from each iteration; count โ€” number of iterations.

Parallel

Splits execution into multiple branches that run simultaneously. All branches must complete before the workflow continues past the parallel node.

FieldDescription
BranchesA list of branch names (e.g. "fetch_users", "fetch_orders"). Each becomes a separate execution path in the graph editor.

Output: An object keyed by branch name, each containing the output of that branch's last step.

Stop

Explicitly terminates the workflow run with a given status. Use at the end of conditional branches to signal success or failure.

FieldDescription
Statuscompleted โ€” marks the run as successful; failed โ€” marks it as failed.
MessageOptional message to include in the run log.

Wait

Pauses workflow execution for a fixed number of seconds before continuing.

FieldDescription
SecondsNumber of seconds to wait (integer). Supports variable references.

Random

Generates a random number or selects a random item from a list. Useful for A/B testing, random routing, or simulation.

FieldDescription
Modenumber โ€” generate a random integer; choice โ€” pick from a list.
Min / Max(number mode) Range for the random integer.
Choices(choice mode) A list of values to choose from.

Output: value โ€” the generated number or chosen item.


5. Data Manipulation

Set Variable

Creates or updates workflow variables that persist across steps. Unlike step outputs, variables can be updated multiple times during a workflow run.

FieldDescription
VariablesA list of variables to set. Each has a name, type (string, number, boolean, array, object), and value (static or variable reference).

Output: The set variables as key-value pairs.

Counter

Increments or decrements a numeric workflow variable. Useful inside loops to count items or track progress.

FieldDescription
VariableThe name of the variable to modify.
Operationincrement or decrement.
AmountHow much to add or subtract (default 1).

Output: value โ€” the new value of the counter.

Filter

Filters an array to keep only items matching a condition.

FieldDescription
Array VariableVariable reference to the array to filter.
Item AliasThe local variable name for each item during evaluation (e.g. item).
ConditionA Symfony Expression Language expression evaluated for each item (e.g. item.status == 'active').
Output VariableThe name of the variable to store the filtered results.

Output: The filtered array stored in the specified output variable.


6. Notifications & Messaging

Email Notification

Sends an email using the SMTP server configured in Settings. Requires SMTP to be configured first.

FieldDescription
ToRecipient email address(es). Separate multiple addresses with commas. Supports variable references.
SubjectEmail subject line. Supports variable references.
BodyEmail body. Supports HTML and variable references.

Output: sent (boolean), message_id.

Webhook Notification

Sends an HTTP POST request to an external URL. Simpler than the HTTP Request node โ€” intended for outbound notifications.

FieldDescription
URLThe target webhook URL.
PayloadJSON payload to send. Supports variable references.

In-App Notification

Creates a notification visible in the Flusso notification bell for a specific user.

FieldDescription
User IDThe Flusso user ID to notify. Defaults to the workflow owner.
TitleShort notification title.
MessageNotification body text. Supports variable references.

Slack Message

Sends a message to a Slack channel via the Slack API or a webhook URL.

FieldDescription
ChannelThe Slack channel name (e.g. #alerts) or user ID for direct messages.
MessageThe message text. Supports Slack markdown and variable references.

Discord Message

Sends a message to a Discord channel via a Discord webhook URL.

FieldDescription
Webhook URLThe Discord channel webhook URL (from Discord server settings).
MessageThe message content. Supports variable references.

Telegram Message

Sends a message to a Telegram chat via the Telegram Bot API.

FieldDescription
Chat IDThe Telegram chat or channel ID to send the message to.
MessageThe message text. Supports variable references.
Parse ModeHTML or Markdown โ€” controls how the message text is formatted.

Emit Event

Emits a named event that can trigger any workflow using an Event Trigger listening to the same event name. Use to chain workflows together.

FieldDescription
Event NameThe name of the event to emit. Must match the Event Trigger's event name in the listening workflow.
Payload MappingKey-value pairs to include in the event payload. Values support variable references.

Webhook Response

Sends an HTTP response back to the caller of a webhook-triggered workflow. Only applicable when the workflow is triggered via a webhook and the caller is waiting for a synchronous response.

FieldDescription
Response DataThe JSON data to send back to the webhook caller. Supports variable references.

7. File Operations

All file operation nodes share a common set of actions: read, write, and append.

Local File System

Reads or writes files on the local server filesystem.

FieldDescription
Actionread โ€” read file contents; write โ€” create/overwrite; append โ€” add to end of file.
PathAbsolute or relative path to the file on the server. Supports variable references.
Content(write/append) The content to write. Supports variable references.
DiskLaravel storage disk to use (default: local).

Output: content (read), or path and bytes_written (write/append).

Google Drive

Reads or writes files in Google Drive. Requires a Google account connected in the workflow's Credentials drawer.

FieldDescription
Actionread, write, or append.
PathFile path within Google Drive (e.g. Reports/monthly-report.txt). Supports variable references.
Content(write/append) Content to write. Supports variable references.

Dropbox

Reads or writes files in Dropbox. Configure Dropbox access credentials in the Integrations settings.

FieldDescription
Actionread, write, or append.
PathDropbox path (e.g. /automation/output.csv).
Content(write/append) Content to write. Supports variable references.

Amazon S3

Reads or writes files in an AWS S3 bucket. Configure your AWS credentials and bucket name.

FieldDescription
Actionread, write, or append.
PathThe object key (path) within the S3 bucket. Supports variable references.
Content(write/append) Content to write. Supports variable references.

Google Sheets

Reads or writes data in a Google Sheets spreadsheet. Requires Google integration authorised in the workflow's Credentials drawer.

FieldDescription
Actionread or write.
Spreadsheet ID / RangeThe spreadsheet identifier and cell range (e.g. Sheet1!A1:D10).
Values(write) 2D array of values to write into the range. Supports variable references.

Output: values (2D array for read), or updated_cells (for write).


8. Human / User Interaction

Approval

Pauses the workflow and waits for a human to approve or reject the continuation. The workflow enters Waiting status and the pending task appears on the Tasks page.

FieldDescription
PromptThe message shown to the user on the Tasks page describing what they are approving. Supports variable references.

Behaviour: If approved, execution continues to the next step. If rejected, the workflow run is terminated with a failed status.

Manual Input

Pauses the workflow and waits for a human to fill in one or more form fields. The form appears on the Tasks page. When submitted, the entered values are available in the workflow's subsequent steps.

FieldDescription
Inputs A list of form fields. Each field has:
  • Name โ€” the output key for this field's value.
  • Label โ€” the label shown to the user.
  • Type โ€” text, textarea, number, or date.
  • Required โ€” whether the user must fill this field before submitting.

Output: An object with each field's name as the key and the user's input as the value.

Use case examples:
• Use Approval before sending a bulk email campaign โ€” a human must confirm before the sends go out.
• Use Manual Input to collect additional parameters (e.g. a date range, a customer name) mid-workflow when the information is not available from automated sources.