Automation rules, macros and canned responses
Set up rules that label, prioritise, assign, reply to or resolve conversations by themselves — plus the macros, canned responses, SLA policies and business hours your team uses alongside them.
On this page
The Automation page puts routine inbox work on autopilot. A rule watches for something to happen in a conversation, checks your conditions, and then acts — adding a label, raising the priority, assigning someone, sending a reply or resolving the thread.
The page has five tabs in three groups: Rules and Macros (automate), Canned responses (content), and SLA policies and Business hours (service levels).
How a rule reads
Every rule is a sentence: WHEN something happens → IF the conditions match → THEN do these actions.
Triggers — what starts the rule:
| Trigger | Fires when |
|---|---|
| Conversation created | A customer's first message opens a new conversation |
| Message received | Any message arrives from a customer |
| Conversation assigned | A teammate assigns the conversation |
| Conversation resolved | A teammate resolves the conversation |
Conditions — optional, and all of them must match:
| Field | What it checks |
|---|---|
| Message text | Whether the customer's message contains a word. Not case-sensitive |
| Label | Whether the conversation carries a label |
| Priority | Low, Normal, High or Urgent |
| Status | Open, Pending, Snoozed or Resolved |
| Business hours | Within or outside the hours set on the Business hours tab |
A rule with no conditions runs on every conversation its trigger fires for.
Actions — run in order:
| Action | What it does |
|---|---|
| Add label | Puts a label on the conversation. A label that doesn't exist yet is created |
| Set priority | Low, Normal, High or Urgent |
| Assign to | Next available teammate (round robin), the next available person in a team, or a named teammate |
| Send reply | Sends the text you type to the customer |
| Send canned response | Sends one of your saved canned responses |
| Resolve conversation | Marks it resolved |
| Stop the AI agent on this conversation | Switches the AI agent off for this conversation, so people handle it from here. Takes no value |
Create a rule
The quickest start is a template. On an empty Rules tab you'll see three ready-made rules: Flag refund requests, Prioritize VIPs and Greet new chats. Click one, check it, and switch it on.
To build your own:
- Open Automation → Rules and click +.
- Name the rule — for example, "Out-of-hours reply".
- Pick the Trigger.
- Click Add condition for each check you want. For an out-of-hours reply: Business hours · Is · Outside business hours.
- Click Add action and choose what should happen. For example: Send reply with "Thanks for your message — we're closed right now and will reply first thing tomorrow."
- Click Save.
- Click the status badge to switch the rule on. It should read ● Active.
A rule's badge tells you whether it's really running:
- ● Active — on, and will run.
- ● Disabled — switched off.
- Draft — switched off, with no actions yet.
- Incomplete — not running — switched on, but it has no actions, so it never does anything. Add an action.
Things worth knowing
- Auto-replies go out once per conversation. A rule's Send reply or Send canned response runs at most once per conversation, so a Message received greeting doesn't answer every message the customer sends. Labels, priority and assignment have no such limit.
- Assigning doesn't switch the AI off. A rule that assigns a conversation only routes it: the AI agent keeps answering until someone takes over. If a person should handle it from the start, add Stop the AI agent on this conversation to the same rule. The rule editor shows this reminder under any Assign to. A person applying a macro that assigns is different: that counts as taking over, and the AI stops.
- An unsubscribe comes first. If a customer's message is an unsubscribe request such as STOP, Juno records it, sends the confirmation, and runs no rules for that message.
- Teams are matched by name. A rule that assigns to a team remembers the team's name. If you rename the team, update the rule.
- Label conditions look at the conversation's labels, not the contact's. See labels.
- Two people editing one rule. If a colleague saved the same rule while you were editing it, your save is refused rather than silently overwriting theirs. Reload and make your change again.
Macros
A macro is a bundle of the same actions, run by a person instead of a trigger. An agent opens a conversation, chooses Apply macro, and every step runs at once. Macros can use all seven actions above.
Two starters are offered: Resolve & thank (send a thank-you reply, then resolve) and Escalate to billing (add the billing label and set priority to high). To put a label on a single conversation by hand you no longer need a macro — use Add label on the conversation's Conversation tab.
Canned responses
A canned response is saved text with a Shortcut. In a conversation, type / in the reply box and then the start of the shortcut or title: a list opens and narrows as you type, ↑ and ↓ choose, and Enter drops the text into the box in place of what you typed. Unlike a macro, it changes nothing about the conversation — it only fills in the text. Rules can send one with Send canned response.
SLA policies
An SLA policy sets two targets: First response minutes and Resolution minutes. Breaches show up as a KPI in Reports. Two starters are offered: Standard support (first reply within 15 minutes, resolve within 4 hours) and Priority (5 minutes and 1 hour).
Business hours
Set when you're open, day by day. Weekdays 9–5 or Every day 8–8 fills in the whole week in one click, and you can then adjust any single day. Hours follow the workspace timezone set under Settings → Workspace.
Business hours do nothing by themselves. They matter because rules can branch on them — the out-of-hours reply above is the most common use.
Where to go next
- Conversation status, priority and assignment — what rules are changing
- Labels — conversation labels and contact labels
- Journeys — follow-ups sent over days, not seconds