Logic Nodes Overview
An overview of the 25 logic and system nodes available in Buildorado for data processing, branching, flow control, error handling, and API integration.
Logic nodes are the backbone of advanced workflow automation in Buildorado. While form nodes collect data and action nodes send it to external services, logic nodes handle everything in between: branching, looping, transforming, filtering, merging, delaying, and orchestrating. With 25 logic node types, you can build workflows that rival custom code -- without writing a single line.
Where to Find Logic Nodes
Logic nodes live in the Logic tab of the builder sidebar. Click the sidebar's Logic tab (the circuit-board icon) to browse all available nodes organized by function. Each node shows an icon, a label, and a one-line description.
You can add logic nodes to your workflow in two ways:
- Drag from sidebar -- Click and drag any node from the Logic tab onto the canvas. Drop it where you want it, then connect it to other nodes with edges.
- Right-click context menu -- Right-click anywhere on the canvas to open a context menu with quick-add options for common node types, including sticky notes.
Common Properties
Every logic node shares a set of common properties that you configure in the editor panel on the right side of the canvas.
| Property | Description |
|---|---|
| Label | Display name shown on the canvas. You can rename it freely without affecting variable references. |
| Variable Name | Auto-generated stable identifier (e.g., httpRequest_1, filter_2). Used in template expressions to reference this node's output. Cannot be changed after creation. |
| Description | Optional notes field for documenting what this node does. Visible in the editor panel but not shown on the canvas. |
How Variable Names Work
When you add a logic node to the canvas, Buildorado assigns it a stable variable name based on the node type and a monotonic counter. For example, the first HTTP Request node gets httpRequest_1, the second gets httpRequest_2, and so on. These names never change, even if you delete intermediate nodes or rename the display label.
Downstream nodes reference outputs using double-curly-brace template syntax:
Status: {{httpRequest_1.statusCode}}
Response: {{httpRequest_1.body}}
Filtered count: {{filter_2.count}}Form nodes use the name you assign (e.g., contactForm), while system and action nodes use the nodeType_N pattern. If a variable name is unambiguous across the entire workflow, you can omit the node prefix and use just the property key.
All Logic Nodes by Category
Conditional Branching
| Node | Sidebar Label | Description |
|---|---|---|
| If / Else | If / Else | Binary true/false routing based on conditions with AND/OR logic |
| Switch | Switch | Multi-way routing with named cases, evaluates top-to-bottom |
| Filter | Filter | Filter an array of items into matching and non-matching groups |
Data Processing
| Node | Sidebar Label | Description |
|---|---|---|
| Transform | Transform | Reshape data with rename, pick, omit, map, flatten, and type coercion rules |
| Sort | Sort | Sort array items by one or more keys in ascending or descending order |
| Limit | Limit | Cap the number of items in an array, optionally keeping the last N |
| Deduplicate | Deduplicate | Remove duplicate items based on specific fields or all fields |
| Split Out | Split Out | Split an array into individual items for per-item processing |
| Merge | Merge | Combine outputs from multiple branches with append, join, or positional modes |
Aggregation and Comparison
| Node | Sidebar Label | Description |
|---|---|---|
| Aggregate | Aggregate | Collapse multiple items into grouped arrays |
| Summarize | Summarize | Group items and compute statistics like sum, average, min, max, and count |
| Compare | Compare | Compare two datasets to find items unique to each or present in both |
Flow Control
| Node | Sidebar Label | Description |
|---|---|---|
| Loop | Loop | Iterate over array items in configurable batch sizes |
| Sub-workflow | Sub-workflow | Execute another workflow with input/output mapping and nesting control |
| Delay | Delay | Pause execution for a duration or until a specific date and time |
| Wait for Event | Wait for Event | Pause until an external event arrives via API with a matching correlation key |
Error Handling
| Node | Sidebar Label | Description |
|---|---|---|
| Error Handler | Error Handler | Catch and route node failures with success and error output handles |
| Stop and Error | Stop and Error | Immediately halt the workflow with a custom error message |
| No Operation | No Operation | Pass-through placeholder for merging branches or scaffolding |
HTTP and Triggers
| Node | Sidebar Label | Description |
|---|---|---|
| HTTP Request | HTTP Request | Call any API with full control over method, headers, body, auth, and pagination |
| Webhook Listener | Webhook Listener | Start a workflow when an HTTP request arrives at an auto-generated URL |
| Webhook Response | Webhook Response | Send a custom HTTP response back to the webhook caller |
| Schedule | Schedule | Trigger a workflow on a cron schedule or at fixed intervals |
Utility
| Node | Sidebar Label | Description |
|---|---|---|
| Date and Time | Date and Time | Parse, format, add, subtract, compare, and extract parts from dates |
| Crypto | Crypto | Hash, HMAC, UUID generation, Base64 encode/decode, and random bytes |
| Sticky Note | -- | Canvas annotation for documentation (not a processing node) |
Node Categories on the Canvas
Logic nodes appear on the canvas with a distinct visual style compared to form and action nodes. They use a solid border with a color-coded left accent that matches the node's sidebar category. Each node displays:
- The node icon and label at the top
- A configuration status badge showing whether the node is fully configured, partially configured, or unconfigured
- Input handle(s) on the left and output handle(s) on the right
Some nodes have multiple output handles for routing. For example, the If/Else node has a green "True" handle and a red "False" handle, while the Error Handler has a green "Success" handle and a red "Error" handle. The Filter node has a green "Match" handle and a gray "No Match" handle.
Execution Order
Logic nodes execute as part of the workflow's directed acyclic graph (DAG). The execution engine performs a topological sort to determine the correct order, ensuring that every node runs only after all of its upstream dependencies have completed. See Workflows for details on how the execution engine processes nodes and evaluates edge conditions.
What to Read Next
- If / Else -- Binary true/false routing based on conditions
- Switch -- Multi-way routing with named cases
- Filter -- Filter array items into matching and non-matching groups
- Transform -- Reshape data with rename, pick, omit, map, flatten rules
- Sort, Limit, Deduplicate, Split Out, Merge -- Data manipulation nodes
- Aggregate, Summarize, Compare -- Aggregation and comparison
- Loop, Sub-workflow, Delay, Wait -- Flow control
- Error Handler, Stop and Error, No Operation -- Error handling
- HTTP Request -- Call external APIs with auth, retries, and pagination
- Webhook Listener -- Trigger workflows from incoming HTTP requests
- Webhook Response -- Return custom HTTP responses to webhook callers
- Schedule -- Trigger workflows on cron schedules or fixed intervals
- Date and Time -- Parse, format, add, subtract, and extract date parts
- Crypto -- Hash, HMAC, UUID, Base64, and random bytes