Automation
Node reference
Reference every Workflow Studio node type and when to use it.
This is the canonical node catalogue for Workflow Studio. Object workflows, ticket workflows, and document workflow studio all point here — node behaviour is shared even when binding differs.
Backend types live on workflow.NodeTemplate (NodeTemplateNodeTypes). Templates store nodes_json / edges_json; published versions are what runtime executes.
Catalogue
Start (startNode)
Entry marker for the canvas. Always begin human-readable graphs here. Does not itself listen for events — pair with a Trigger on object workflows.
Trigger (triggerNode)
Object workflows only in the toolbar. Starts the graph from a model event or periodic schedule. Configure trigger_namespace, trigger_event, trigger_is_periodic, and trigger_data. See Triggers & events.
Task (taskNode)
Creates human work: title, content, duration, team/assignee rules, optional questions, notifications, completion state. Use when a person must act. Can schedule relative to record times via anchor/timedelta fields.
Decision (decisionNode)
Binary (or meta-driven) branch. Evaluate decision_meta and follow yes/no parent paths. Keep conditions explicit and testable; prefer named fields over opaque expressions.
Approval (approvalNode)
Formal sign-off using approval_data and assignee rules. Distinct from a Task: approvals track approve/reject semantics used across tasks, documents, and workflows. See Approvals.
Action (actionNode)
Deterministic platform operation via action_meta — model consequences, field updates, notifications, or other configured actions. Prefer Action over Script when a built-in consequence exists.
Iris Agent (agenticNode)
Runs Iris with agentic_data (prompt, topic, expectations). Use for classification, summarisation, drafting, or tool-using reasoning inside a process. Pair with Tools when the agent must call platform tools. See Iris in automation.
Tools (toolsNode)
Supplies tools_data to a parent Iris Agent. Validation expects an agent parent. Keep the tool allowlist minimal for the step.
Script (scriptNode)
Runs script_data as a workflow step. Same family as object scripts / Scripts API. Use for custom transformations that Actions cannot express. Test in the playground.
Route (routeNode)
Assignment or path selection from route_data (teams, rules, attributes). Use when ownership depends on configurable routing rather than a fixed assignee.
Delay (delayNode)
Pauses using delay_data (fixed or calculated). Use for cooling-off periods, SLA waits, or “remind in N days” paths.
Loop (loopNode)
Iterates a branch from loop_data (items or controlled retry). Guard loops with clear exit conditions to avoid runaway jobs.
Escalation (escalationNode)
Applies escalation metadata when time, state, or ownership rules are breached — typically after tasks/approvals stall.
End (endNode)
Terminal path. On ticket forms, entering End closes that ticket path. Always terminate every branch explicitly.
Legacy: Form (formNode)
Older graphs may still contain Form nodes; treat as Task-equivalent when migrating.
Choosing quickly
| Need | Node |
|---|---|
| Auto-start from create/update/schedule | Trigger |
| Human work | Task |
| Formal sign-off | Approval |
| Yes/no split | Decision |
| Built-in platform op | Action |
| Custom code | Script |
| AI reasoning | Iris Agent (+ Tools) |
| Wait | Delay |
| Iterate / retry | Loop |
| Reassign / escalate | Route / Escalation |
| Finish | End |
Shared fields
Most nodes have name, description, type, ordering, parents, and canvas position. Human nodes may attach questions. Versioning: edit a draft template, publish one active version per group.