Automations
An automation is a flow that SquadOS runs on its own from an event, a schedule, or a button the team presses in a conversation. One or more triggers say when to enter; actions and rules say what happens next.
Use an automation when the response should happen because of an event or a schedule, for example:
- follow up on a conversation that has gone quiet;
- act when a conversation changes state;
- react when a tag is applied or a contact joins a list;
- run a routine on a schedule;
- walk through an audience and send a campaign;
- give the team a button that runs a routine on the open conversation.
Automations live under CRM → Automations in the sidebar. They are not the old agent schedule or follow-up: those routines are built in this module.
Access and permissions
Section titled “Access and permissions”The module depends on the Manage automations permission, under General permissions → Automations and email, given to a department or a person. It covers the whole module, including automations created later: view the list, create, open the editor, configure, test, save, turn on or off, follow the Activity, and delete. The owner has access. See Departments and access.
Someone who can view automations but not edit them can still follow the module: they see the list, open each automation in View mode, and check Activity and the Report, without access to Settings, Test, Save, or the editing actions. In the list’s ⋮ menu, that person sees only Report.
The automations list
Section titled “The automations list”Each automation appears as a card. Click the card to open the automation. The card shows:
- the name and the automation number, such as
#3; - the trigger — only the first saved type; open the automation to check every entry point and its filters;
- when it was last edited;
- the Active or Disabled state and, if SquadOS turned it off after repeated configuration errors, the Turned off automatically badge, with the reason on hover;
- the applied tags;
- three numbers: Active now, Started, and Finished.
The card numbers count since the automation was created. Tests are left out, as are the runs that only distribute work for the Audience, No reply on conversation, and Schedule triggers. Active now and Finished also show the percentage over Started. To pick a period, use the Report.
An automation that was created but never saved appears as Disabled; inside it, the top bar says Not saved yet.
Filter the list
Section titled “Filter the list”- The All, Active, and Disabled tabs show how many automations are in each state.
- The Tags filter shows automations that have at least one of the chosen tags. The tab counts follow this filter.
- Clear filters appears when no automation matches the filters and returns to All, with no tags.
The list shows 20 automations per page. Filters and page are kept in the address, so the link can be shared.
Actions menu
Section titled “Actions menu”Each card’s ⋮ menu holds the automation’s actions:
- Report — opens the automation’s report;
- Activate or Deactivate — turns it on or off without opening the editor. An automation with no saved version does not turn on: save a version first. Turning on an automation that was turned off automatically also closes the alert that turned it off;
- Tags — checks or unchecks tags from the catalog and gives access to Manage tags;
- Delete — asks for confirmation before deleting.
Activate, Deactivate, and Tags require edit permission; Delete requires delete permission.
Automation tags
Section titled “Automation tags”Automations have their own tag catalog, separate from contact and conversation tags. Use it to organize automations by subject or goal.
In Manage tags, in the list bar or in the Tags submenu, you create, rename, recolor, and delete tags. The catalog shows how many automations use each tag. You can create tags before there is any automation to mark. Deleting a tag removes it from every automation that uses it; the automations stay as they are.
What happens when you create one
Section titled “What happens when you create one”Click New automation and choose a starting point:
- Start from scratch creates a blank canvas;
- Follow-up on a stalled conversation fills in an editable starter flow.
The automation is created immediately with a name such as New automation #3 and opens in Edit mode. The starter flow still exists only in the editor. If you leave before saving, the automation remains in the list as Disabled, with no version or published trigger.
You can rename it by clicking the title at the top or under Settings → Identification.
The editor sections
Section titled “The editor sections”The editor rail separates four concerns:
| Section | What it is for |
|---|---|
| Editor | See the flow and, in Edit mode, build triggers, actions, and rules. |
| Settings | Change name, description, re-entry, activation, and deletion. |
| Activity | Inspect runs, tests, entry trigger, status, cost, path taken, and each node’s input and output. |
| Report | Track entries, completions, early exits, failures, and email performance by period. See Report and step numbers. |
View and Edit
Section titled “View and Edit”In the Editor section, the top bar switches between two modes:
- View shows the published version, the one that is running. Click a step to read what it does and see its numbers for the chosen period; nothing can be changed. See Step numbers on the canvas.
- Edit shows the working version, with the palette, each step’s configuration, Undo, Redo, Test, and Save.
An automation that was already saved opens in View; to change the flow, click Edit. It opens directly in Edit when it was just created from a starting point, when it was never saved and is empty, or when the browser offers to restore an unsaved local copy. When you go back to View with pending changes, SquadOS asks what to do with them before switching modes.
Someone without edit permission always opens in View and does not see the switch.
The activation state and AgentMaker stay in the bar in both modes. AgentMaker proposes graph changes, but you still review, apply, and save them; see Create automations with AgentMaker.
Triggers and steps
Section titled “Triggers and steps”The current catalog has seven triggers:
- Conversation event;
- No reply on conversation;
- Command;
- Contact tag;
- Contact added to list;
- Schedule;
- Audience.
An automation needs at least one trigger, and every trigger must lead to a step. You may add several triggers to the same flow. By default, a new trigger converges on the same first step; use Give this trigger its own path when it needs a different branch.
SquadOS refuses to save when two triggers cover the same event and filters, when a trigger has no outgoing path, or when a path requires data that its entry point does not provide.
After the triggers, the palette is split into:
| Tab | What it contains |
|---|---|
| Triggers | The seven entry points. |
| Actions | Messages, email, campaigns, AI, tags, private notes, assignment, handoff, contact, conversation, and external calls. |
| Rules | Conditions, waits, and ending the flow. |
Click an item to insert it at the next available point, or drag it to choose the exact point. An item is disabled when there is no valid place to insert it.
Local changes, saving, and versions
Section titled “Local changes, saving, and versions”The graph has no server autosave. While you edit, the state stays on the canvas and the top bar says Unsaved changes. The same browser keeps a local safety copy, scoped to the organization and automation, for up to 14 days. When you reopen it, SquadOS may offer Restore or Discard.
That local copy is not a published version, does not sync across browsers, and does not replace Save.
When you click Save or press Ctrl+S, SquadOS:
- opens a confirmation;
- validates the graph;
- highlights nodes that need correction when validation fails;
- creates a new saved version and points future runs to it.
There is no separate Publish button. If the automation is active, the new version immediately applies to future runs. If it is off, the version is saved but does not fire until you turn it on. Runs that were already queued, running, or waiting stay on the version they started with; the confirmation tells you how many are in that state.
Name, description, re-entry, and activation are automation properties, not graph properties. Changing them under Settings saves those values directly; they do not wait for the canvas Save button.
Activation and re-entry
Section titled “Activation and re-entry”The switch becomes available only after the first saved version. While the automation is off, no trigger creates a run, but you can still edit, save, and test it.
Under Settings → Re-entry, choose:
- Once per conversation — the same conversation enters at most once; this is the default;
- Once per contact — the contact enters once, even across different conversations;
- Always — every matching event may create another run for the same contact.
The slot belongs to the delivery, not the attempt. A run that ends as Failed or Canceled without having sent anything to the contact gives the slot back, and the contact can enter again. If something was already sent, or if the run ended as Completed, the slot stays taken. When an event is blocked by re-entry, the run holding the slot shows in Activity how many events were blocked and when the last one was.
Command ignores re-entry, and No reply on conversation has its own cycle rule; see Triggers.
Use Always carefully: every new run walks through the flow again, and AI nodes consume credits again.
Test before turning it on
Section titled “Test before turning it on”Test can run the Current canvas, even before you save. When a live version exists, you can also choose Live version. If the graph has several triggers, choose which one to simulate; depending on its type, the dialog asks for a conversation, a contact, or a sample payload.
A test is not entirely inert:
- sending actions are simulated;
- AI nodes run for real and consume credits;
- Call webhook makes the request for real;
- Get the contact’s conversation reuses an existing real conversation, but does not create a new one in a test;
- the result becomes a run marked Test under Activity.
Use a controlled target and inspect the path and output of every node. See Runs and tests for details.
Outbound safeguards
Section titled “Outbound safeguards”Safeguards are not nodes you have to add. Every outbound action checks opt-out and the frequency cap when a contact is available. A message sent into a conversation also checks snooze, whether the customer is waiting for your team’s reply, and the Meta 24-hour window when the channel is Official WhatsApp or Instagram Direct.
| Safeguard | Result when it blocks |
|---|---|
| Opt-out | The contact receives no outbound action. The flow cannot override it. |
| Snoozed conversation | The step is skipped, and the automation does not write while the snooze is active. |
| Customer awaiting reply | The automation does not write over a reply your team still owes. |
| Frequency cap | By default, at most 3 automated outbound actions per contact in 24 hours, across all automations in the organization. |
| Meta 24-hour window | Free-form text does not go out after the window closes. In Send message, an approved template may serve as a fallback; without one, the step is skipped. |
A block appears as a skipped step in Activity, not as an automation failure. When the contact record cannot be read to check opt-out, however, the send does not go out and the step fails. The only safeguard the flow can waive is Customer awaiting reply: unchecking The contact replies in a Wait step’s exit conditions relaxes that guard on paths that must pass through that step. Opt-out, snooze, cap, and the Meta window remain in force.
Automatic deactivation
Section titled “Automatic deactivation”One configuration error does not immediately turn the automation off. When the same step fails five consecutive times with the same configuration code, SquadOS deactivates the automation. A successful run resolves the open alert and breaks that sequence.
Classified reasons include an incomplete step, content becoming empty after variable interpolation, missing organization setup or channel, rejected delivery, a blocked or repeatedly unavailable webhook URL, and a graph that lacks a required contact or conversation.
Open the automation and read the This automation needs a fix banner, correct the named step, save if the graph changed, and use Turn automation back on when the banner offers that action.
Deleting
Section titled “Deleting”Delete from the list’s ⋮ menu or under Settings. Deleting an automation also deletes its versions and complete run history. It cannot be undone; the confirmation shows the name and requires delete permission.
Where to go next
Section titled “Where to go next”- Creating an automation — from a starting point to the first active version.
- Automation triggers — types, filters, and entry contexts.
- Actions — effects available in the flow.
- Flow rules — branching and time.
- Analyze with AI — one structured variable with options, yes/no, score, or text; outputs configured on the canvas. New format validated in Dev, with production release pending; legacy nodes preserved.
- Variables — data available at each point.
- Runs and tests — run-by-run diagnosis.
- Report and step numbers — the automation’s results by period and at each step.