Flow Steps
Flow steps are the basic building blocks of approval workflows. They define who needs to approve a submission and how approvals are collected.
Flow Types
One (one)
Single-person approval where only one member from the assigned group needs to approve.
Behavior:
- Creates a notification for whichever group member is selected on the form
- Submission advances when that single person approves
- The
is_ignoredoption is automatically disabled for this type
Use Case: When you need approval from a specific person chosen by the submitter (e.g., "select your manager to approve this expense").
Multiple (multiple)
Multiple specific people from a group must approve.
Behavior:
- Creates notifications for designated members
- Can be configured to require unanimous approval or just a subset
- Supports the
is_ignoredoption to skip this step under certain conditions
Use Case: When specific individuals need to review (e.g., "both the department head and finance lead must approve").
All (all)
Every member of the assigned group must approve.
Behavior:
- Creates notifications for all members of the group
- Submission only advances when every member has approved
- Supports the
is_ignoredoption to skip this step
Use Case: When consensus from an entire team is required (e.g., "all board members must approve this resolution").
Group Select (group_select)
Allows the submitter to choose which group should handle their submission.
Behavior:
- Presents the user with a selection of pre-configured groups
- The selected group then receives the submission for approval
- Does not use a single
group_id- instead uses a many-to-many relationship with selectable groups - Can optionally auto-share with the selected group via
autoshare_selected_groupproperty
Use Case: When submissions can be routed to different departments based on user choice (e.g., "select your regional office for processing").
Configuration Options
| Option | Type | Description |
|---|---|---|
name |
string | Optional custom display name for the step |
group_id |
integer | Required group (except for group_select) |
unanimous |
boolean | If true, all assigned members must approve before advancing |
sms |
boolean | Enable SMS notifications for this step |
is_muted |
boolean | Don't send notifications (manual follow-up) |
is_ignored |
boolean | Skip approval (only for multiple, all) |
can_edit_form |
boolean | Allow editing the form during this step |
is_escalatable |
boolean | Allow escalation to another approver |
autoshare_group_id |
integer | Automatically share with another group when this step completes |
Step Sequencing
Flow steps are ordered by their sort column. When a step completes:
- The system finds the next step in sequence for the same form
- The next step must have group members (unless it's a special type)
Step Type Constraints:
onetype steps can precede any other step typemultipletype steps can precede any other step typegroup_selecttype steps can precede any other step typeconditionalandcollectivesteps can only be followed byall,dynamic,conditional, orcollectivetypes