Choose the Right Step
Match your task to the right built-in Step, routing block, or app action. Browse the catalog below, filter by goal, or compare similar Steps.
- Use it to
- Match your automation goal to the right Step, routing block, or app action
- Find it
- Bottom canvas dock: Tools (Start, AI, Flow, Data, Dev tools) and Apps
- Instead
- Workflow Assistant (to draft Steps and connections from a goal)
Start a run when an external app, form, or script sends an HTTP request.
Run on a recurring plain-language or cron schedule in your time zone.
Start a run from a hosted web form with typed fields and file uploads.
Start a conversational automation from a hosted chat interface.
Start an alerting or recovery workflow when another automation fails.
Run an automation on demand when clicking Run on the canvas.
Branch a run down every route whose typed or AI rules pass.
Route a run to the first matching named Case.
Split a list into Kept and Discarded items using typed or AI rules.
Repeat a single Step once for each item in a list with concurrency control.
Repeat a multi-step circuit over a list, fixed count, or Until rule.
Call another automation in the workspace and wait for its result.
Pause a run for up to 13 days, until a date, or until a webhook/form resumes it.
Suspend a run and email a reviewer for sign-off or form input.
Intentionally stop a run and mark it Failed with a custom message and code.
Pass data through unchanged as a visual anchor on a branch.
Persist typed tables, lists, digest collections, and key-value records across runs.
Set, rename, or remove fields on an object with typed values.
Group a list and calculate sums, counts, averages, min, or max.
Format timestamps, convert time zones, add durations, or diff dates.
Define named typed values for reuse across downstream Steps in a run.
Merge, intersect, or diff two lists by key field or position.
Order a list ascending or descending by field or value.
Keep only unique items in a list or compare against previous runs.
Keep the first or last N items from a list.
Turn a raw JSON string into structured fields for downstream Steps.
Read rows or text from CSV, Excel, PDF, JSON, XML, or text files.
Turn records or text into a downloadable CSV, Excel, JSON, or text file.
Convert HTML emails or web pages into clean plain text.
Split text by a delimiter or extract before/after segments.
Hash (SHA-256, HMAC), Base64/URL encode, generate UUIDs, or math utilities.
Call any public REST API with custom headers, auth, and built-in pagination.
Return a custom HTTP status code, JSON/text body, or redirect to a held webhook caller.
Run Python 3.13 (stdlib, numpy, pandas) in an isolated sandbox.
Single-turn text generation, classification, summarization, or JSON extraction.
Goal-driven agent with governed app/MCP tools, memory, and human approval gates.
Reshape messy or unstructured inputs into clean records with plain-language instructions.
Choose by goal
Triggers & Flow
| I need to… | Start with |
|---|---|
| Start on a schedule, request, or event | Scheduler, Webhook, Form Trigger, Error Trigger, or Click to start. |
| Process every record | Run for each item (one action) or Repeater (multi-Step) (compare). |
| Pick a route | Switch (first match) or Conditions (every match) (compare). |
| Join results from two branches | Combine (merge lists) or AND junction (wait for both) (compare). |
| Wait for approval or a timer | Human Review (person) or Wait (timer/callback) (compare). |
| Call a sub-workflow or fail on purpose | Subflow or Stop and Error. |
See Choosing a Flow Step.
Choose between similar Steps
Process every record: Run for each item or Repeater?
- Run for each item. Run one action Step per item via
{{ item.email }}(not on routing Steps or AI Agent). - Repeater. Run multiple Steps, routing, Wait, or AI Agent per item. Wire Each time → body → back to Repeater and put any summary on When finished; see Loops & Iteration.
Pick a route: Conditions, Switch or Filter?
- runsDeal size is over 10,000Notify sales
- runsCountry is United KingdomAdd to CRM
- skippedELSE — none matchedLog for review
Both conditions are met, so both routes run. This is the part a first-match step cannot do.
- Switch. Takes the first matching case (plus Fallback) for mutually exclusive routes.
- Conditions. Fires every matching branch (Else when none match) for parallel actions.
- Filter. Splits a list into
keptanddiscardedvia{{ $item.status }}; see Choosing a Flow Step.
Join results: Combine or a branch junction?
- Waits for two branches (AND) and joins lists by key match or append.
- Outputs results and resultCount (use Code editor for SQL joins).
- Connects two branches into the next Step while keeping data separate.
- Choose AND to wait for both, or OR when one route runs.
See Combine and Steps and Connections.
Wait for approval: Human Review or Wait?
- Pauses for a signed-in member with automation access.
- Routes down Approve, Reject, or optional Expired.
- Pauses for a duration, timestamp, webhook, or form submission.
- Resumes down one path when the timer or callback arrives.
See Human Review and Wait.
Prepare a value: map or transform?
Map values directly when they fit, or add an inline Data Transformation pipe. Use Change Fields to reshape a record and Summarize for math. Check output paths ({{ 3.kept }} on Filter, {{ 5.results }} on Combine); see Mapping or Transforming Data.
Use AI: AI Prompt, AI Data Transform or AI Agent?
- AI Prompt. Generate one text or JSON response.
- AI Data Transform. Extract up to three fields from unstructured text.
- AI Agent. Let the model call enabled tools; see Choosing an AI Step.
Put the Steps together
Test writes and messages against test destinations, even in Draft.
Intake & Sync
Use an app trigger or Webhook; skip Change Fields if direct mapping fits.
When no dedicated Step fits
Check Apps in the dock first. Use HTTP Request for API calls and pagination, or Code editor for Python 3 ({{ 3.result.executionOutput }} at Step 3). Ask the Workflow Assistant, or start from Use Cases & Examples or a public template.
- Run
- Add the Step from the dock, connect it on the canvas, and click Run step in Test & Debug.
- You should see
- The Output tab shows the Step's structured result ready to map downstream.