Skip to content

Visual builder ​

The workflow builder is a canvas where every workflow is drawn as a graph of nodes connected by lines. Triggers are at the top; actions flow downward; everything is editable in place.

Workflow builder canvas

Open the builder ​

From Workflows, click an existing workflow to edit, or the create button for a new one.

The canvas ​

The main area is an infinite pan/zoom surface. You can:

  • Drag the background to pan.
  • Scroll to zoom.
  • Click a node to select and open its config panel.
  • Shift-click multiple nodes to move them together.
  • Drag from one node's bottom handle to another node's top handle to connect.

The auto-layout button straightens the graph using Dagre β€” useful when you've been moving nodes around manually and want a tidy view.

Adding a trigger ​

Every workflow needs at least one trigger.

  1. Click the Add trigger button (or drag a trigger node onto the canvas).
  2. Pick a trigger type β€” see Triggers for the full catalog.
  3. Configure the trigger's options in the side panel. Some triggers need extra config (e.g. schedule needs a cron expression, member.unit_assigned needs which unit).

For multi-trigger workflows, you can add more triggers and connect them all to a trigger junction node that fans out into the shared action sequence.

Adding an action ​

  1. Click the Add action button or drag from the action library on the left.
  2. Pick the action type from the catalog. See Actions for the full list.
  3. Configure the action in the side panel.

Common actions to start with:

  • Send message β€” pick a channel, recipients, template.
  • Wait delay β€” pause for N hours / days before continuing.
  • Condition β€” branch based on member data.
  • Update member β€” change a custom field, assign to a group, etc.

Connecting nodes ​

Drag from the bottom dot of one node to the top dot of another. The line represents "after this finishes, do that next."

A condition node has two outputs (true / false). A split node fans out to multiple branches that all run.

The merge token picker ​

Anywhere a text field accepts dynamic data (message body, webhook payload, set-variable value), the merge token picker is one click away. It shows every token available based on:

  • The trigger type (so member.created exposes {{member.first_names}}).
  • The action's previous steps (so a find member result exposes its tokens to later actions).
  • Workflow-level variables you've defined.

Saving and versioning ​

Click save to commit. Workflows have draft mode β€” your changes don't take effect on live runs until you publish.

Each save bumps a version number. Old versions are kept so you can see what the workflow looked like at the time of any historical run. You can't yet roll back to a prior version with one click, but you can see the diff in the activity log.

Activating ​

Toggle the workflow status from Draft to Active. From now on the trigger will fire runs. Toggle back to Paused to stop further runs without deleting the definition.

WARNING

Setting a workflow active immediately means historical events from before activation don't fire backwards. If you build a "welcome new members" workflow today, today's members won't get the welcome message retroactively. Use the manual trigger if you need to back-fill.

Testing ​

Before going live, use the test-run feature. Pick a sample member, click test, and watch the run execute end-to-end. Messages send to your own number, not the actual member. Useful for catching typo'd merge tokens or wrong condition logic.

Tips ​

  • Name your workflows specifically. Welcome new members is fine; Workflow 1 is regretted in three months.
  • Use comments. Each node has an optional comment field β€” leave breadcrumbs for the next admin.
  • Build small first. Get a 1-step workflow working before adding delays and branches.
  • Use draft mode aggressively. It's much cheaper to find a bug in test than after sending 500 wrong messages.

Next steps ​