Skip to main content

Building automations

You build an automation in the flow editor—a canvas where you place nodes and connect them into a flow. Open it by clicking New Automation on the Automations page, or by clicking an existing automation's name to edit it.

This page covers the editor itself. For the catalog of node types, see Triggers, Actions, Conditions and branching, and Loops and iteration.

Starting from a template

Instead of building from an empty canvas, the Templates page opens a gallery of built-in starter flows. Each card shows the template's name and description, a kind badge, and a category badge, with two buttons: Preview opens a read-only popup of the template's graph, and Use template opens the flow editor pre-loaded with the template's nodes as an unsaved automation—nothing is created until you save it.

Every template is one of three kinds:

  • Workflows—complete, production-ready automations to use as-is or adapt.
  • Recipes—reusable fragments that solve one common sub-task.
  • Examples—single-node lessons showing how one node is configured.

A segmented control filters the gallery to one kind at a time, and a search box and a category dropdown narrow it further by name, description, or topic.

TemplateKindCategoryWhat it does
On-Demand AI SummaryWorkflowStartersAn on-demand trigger feeding an AI agent that summarizes the supplied content.
AI Draft & Brand ReviewWorkflowContentGenerates a draft with the Content Generation agent, then revises it for brand voice.
Brightspot Content WorkstreamWorkflowContent OperationsRuns an AI agent across every item in a Brightspot work stream, applying the work stream's instructions to each and marking items complete as it goes.
Extract a Field from Each ItemRecipeArraysTurns an array of objects into a flat array of one field's values.
Collect Array Values into OneRecipeArraysReduces an incoming array to a single value—for example, the sum of its numbers.
Log: Write a MessageExampleLogWrites a message to the run log with the Log action—ready to run right away.
Script: input & payloadExampleScriptShows how a Script node reads its incoming payload and input mappings, and how its last expression becomes the output.

A Recipe is also available without leaving the automation you're building: click + on an edge and select Recipe… to splice its nodes directly into the flow, wired in at that point.

The canvas

The canvas holds the automation's nodes and the edges between them. Pan by dragging the background and zoom with the controls in the corner. Every flow starts from a single trigger node on the left and follows its edges to the right.

Each node renders as a card: its icon and type, the name you gave it, and a short summary of its configuration—so a well-built flow reads at a glance without opening anything. To give a node a title and description of your own, open its configuration form and switch to the Display tab: a title appends to the node's type on the card ("Script - Fetch customer"), and a description becomes the card's first summary line, ahead of the automatic configuration summary.

The toolbar

The bar above the canvas carries the automation-level controls, left to right: the AI assistant toggle, the automation's name (click it to rename), the Turn On/Turn Off toggle, the run button when the trigger supports manual runs, the validation indicator, settings, Save, and the more-options menu.

Adding nodes

A new automation starts empty with a single Add node button in the center of the canvas.

  • The first node must be a trigger. Click Add node and select Trigger, then choose a trigger type from the panel that opens.
  • Later nodes are added on an edge. Point to the line leaving a node and click + (Insert node), then select Condition, Action, or Loop. The new node is inserted on that edge and wired automatically. The same menu also offers Recipe…, which splices a multi-node fragment in at that point instead—see Starting from a template.

Selecting Loop scaffolds a matched pair—a Loop node and a Loop End node—already connected. See Loops and iteration.

Configuring a node

Selecting a node type opens its configuration form in the panel on the right. The panel has two modes: a searchable, filterable list of types, and the selected type's form.

To configure a node:

  1. Complete the form. Many fields accept variables—see Variables and secrets.
  2. Click Done to commit the configuration. The node's card updates with a short summary of what you set.

To change a node later, click its edit (pencil) control to reopen the form. To discard a node, open the form and click Delete, or use the node's actions menu.

Connecting and branching

Edges define the order steps run in. Conditions and other routing nodes send the flow down different paths from their output handles—see Conditions and branching.

Any node can also expose an error path. Enable error handling from the node's actions menu to add a separate output that the flow follows when the node fails, so you can handle failures instead of stopping the run.

Annotating the canvas

Sticky notes document a flow without becoming part of it—they never affect execution and never appear as a node. Open a node's actions menu and click Add note to create one anchored to that node, connected by a tether line; deleting the node leaves its notes on the canvas, no longer anchored. The canvas + menu offers the same Add note for a free-standing note not tied to any node. Either way, the note picks up the last color you used—click the swatch beside Add note to choose a different one before adding it.

Drag a note to reposition it or resize it from its handle. Double-click a note to open its form in the side panel, where you can give it a title, choose its color and font size, and format its text with a rich-text toolbar—bold, italic, underline, strikethrough, superscript/subscript, lists, links, inline code, and images. To remove a note, select it and press Delete or Backspace.

Notes travel with the automation—duplicating it, saving it as a template, and exporting it all carry the notes along. In version history, moving or resizing a note counts as a layout-only change, not an edit.

Naming, validating, and saving

  • Name—click the automation's name in the toolbar and type a new one. A new automation—including one started from a template—gets a default name that avoids colliding with an existing one by appending the lowest free number: a second automation started from the On-Demand AI Summary template is named "On-Demand AI Summary 2".
  • Validation—the editor validates the flow as you build and flags structural problems, such as disconnected nodes or a loop that is not closed. The toolbar indicator reads Verified when the flow is sound and Invalid when it is not; fix the flagged issues before saving.
  • Needs attention—separately, a field a node needs in order to run—but not to save—shows a note instead of blocking you, and the node's card carries a count of how many such fields remain unset. This lets you save a work-in-progress node (or one left empty by an import) and come back to it later, rather than forcing you to fill in every field before you can save anything.
  • Save—click Save. The editor does not save automatically. A new automation is assigned an identifier on first save.
  • Turn on—toggle Turn On to enable the automation. Enabling lets triggers that fire on their own—content events, schedules, and webhooks—start the automation. An on-demand automation runs when you start it manually, whether or not it is enabled.

Run modes

An automation runs in one of two modes, independent of whether it is enabled:

  • Live—the default. Steps act on their real targets.
  • Dry run—the whole flow runs, but no real change escapes. For each integration, if you configure a test target on the automation, the step's mutation is redirected there (a real but safe effect); with no test target, the step makes no external change and logs what it would have done.

Use dry run to rehearse a flow safely—on its own to log-only, or with test targets to exercise it against sandbox destinations before going live.

Outbound HTTP during a dry run

Outbound HTTP is the one deliberate exception. By default, a dry run still sends the methods HTTP defines as read-only—GET, HEAD, and OPTIONS—for real, because downstream steps rehearse far more accurately against live response data. Mutating requests—POST, PUT, PATCH, and DELETE—are logged and skipped.

An endpoint is free to break that read-only convention, so you control which methods are sent:

  • Site-wide—set Dry Run: Outbound HTTP on the Settings page. Choose None to send nothing during a dry run, Safe Methods Only (the default), or All Methods.
  • Per step—the HTTP Request and OpenAPI steps carry the same field on their Advanced tab. It overrides the site setting for that step alone.

Neither behavior is left for you to infer. The note beside the step's method states whether that request is sent for real and which policy decided it, and the run log records the same decision every time the step runs in a dry run.

Running, duplicating, and archiving

When the trigger supports manual runs, a run button appears in the toolbar—for the on-demand trigger it reads Run Automation. Click it to start a run and watch the flow execute live. The side panel's Activity section also tracks recent runs live as they happen. See Monitoring and history.

The toolbar's more-options menu provides:

  • Duplicate—create a copy of the automation.
  • Archive—move the automation to the archive. Archived automations can be restored or permanently deleted.
  • Export—download the automation's definition as a portable JSON file, stripped of anything specific to this workspace. Secret values are never included, only their names.

Importing an automation

Click Import on the Automations page to bring in a definition exported from this or another workspace—upload the file or paste its JSON. The import publishes a new, disabled automation and opens a summary of what needs attention before it's ready to run: secrets to re-enter (only their names carry over) and any connections or references that don't resolve in this workspace, left empty for you to reconnect. From there, Open Automation takes you into the editor to finish configuring it.

Version history

Every save is kept as a version of the automation's definition, classified by what changed—Created, Layout only (nodes moved but nothing else edited), or Edited—so a rearrangement doesn't read the same as a real change. Open the automation's History tab for the timeline: the live version pinned at the top, then past versions and status changes (turning the automation on or off, switching its run mode) listed newest first.

Opening a past version loads it into the editor, read-only apart from Save—saving while viewing a version makes it live again, recorded as "Restored from version N" rather than an ordinary edit, so nothing already published is lost. The per-node Run control is hidden while viewing a past version, since running always acts on the live automation.

Viewing a past run

Opening a past execution shows the same flow in a read-only view, with each node's status overlaid on its card. See Monitoring and history.

Was this page helpful?

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.