Understanding rules

Overview

Front's rules engine allows you to automate your workflows. Rules can help you handle repetitive tasks to save time and increase your team's efficiency in Front. 

This article will help you understand how rules work. After reading, check out our guide to rule conditions and try to create a rule. Or, utilize our Rules Library to browse and automatically create rules for your team.

Rules features vary based on your Front plan. Please see the pricing section of this article for more information.


Rules fundamentals

Rule types

There are four kinds of rules: team rules, individual rules, SLA rules and company rules.

Team rules

Team rules are applied to any shared inbox and can only be created by Team Admins or Company Admins. Team rules can be accessed from the Company settings tab by clicking Rules under the team name.

Individual rules

Individual rules will apply to your individual inbox (but not internal discussions). Your individual rules can be accessed from the Rules section in your Personal settings tab.

Company rules 

Company rules can apply to all individual and/or shared inboxes and can only be created by Company Admins, by clicking Rules under the Company section of the Company settings tab.

SLA rules

SLA rules are a type of Team rule, and need to set up by a Company Admin or Team Admin in Front.

Parts of a rule

Rules are made up of three types of conditions: triggers, filters, and actions.

See here for a full Guide to rule conditions.

1. Triggers (WHEN)

Triggers specify the types of events that will cause Front to start evaluating the conditions of your rule and see if they are met. Triggers can be done manually by a teammate or via Front's API.

2. Filters (IF)

Filter conditions are the criteria that determine whether a rule will be actioned on. More on how to use and/or statements in your filters can be found in this article.

3. Actions (THEN)

Actions specify the actions that will result when the rule is processed successfully (when all filters are met). You have the option to check off Stop processing other rules to prevent the actions of the rule to trigger other rules.


Ordering of rules

You are able to order your rules if you want certain ones to take priority over others. This means that the one ordered higher will have its actions take precedence, and the lower rule may only apply some of its actions so as not to conflict with the other. Delayed rules are special, in the sense that they will only be processed if the conditions are met at the designated time. 

Type in the desired position of the rule, or use the arrows to the right of each rule, to adjust rules up or down the list.

Company rules will always execute before individual or team rules.


Rules triggering other rules

Sequential rules

With Front's rule engine, an action of a rule can be used to trigger a subsequent rule, so you can build a sequence of rules to rule one after another. Here's an example sequence:

Rule #1
WHEN: Inbound Message
IF: From company.com
THEN: Add Company tag

Rule #2
When: Conversation tagged
IF: Added tag is Company
THEN: Assign to Andersen

Because Rule #1 is processed first, the Company tag will be added. This will create a conversation tagged action, which allows for Rule #2 to be triggered. And because the Company tag is present, the second rule is processed and the conversation is now assigned to Andersen.

Helpful to know:

  • The ordering of rules also applies to sequential rules, so any rules that you want to run sequentially should be ordered below the original rules you want to run.

When conversations move across teams

You have the option for whether sequential rules continue to run when conversations move from one Team to another, or when moving from an individual to a team inbox. By default, the option to continue running the rules in the destination team will be turned on, but you can turn this setting off in each rule where you do not want it to run after it moves to another team. The setting is located in the rule's Then section — click the dropdown arrow next to your Move action to show the checkbox for Trigger automated rules if moved to another Team

In the destination inbox, the rule trigger that would continue the sequence of rules would be When conversation moved. For example, if you have the Trigger automated rules option checked:

Rule #1 in the original team or private inbox

  • WHEN: Conversation tagged
  • IF: Contact is in Finance
  • THEN: Move to inbox Billing*

*Billing inbox would be in the destination team that the conversation is moving to.

Rule #2 in the destination team

  • WHEN: Conversation moved
  • IF: Inbox is Billing
  • THEN: Assign to a specific teammate Helena

Keep in mind that when the conversation moves to the new team, all rules in the destination team that have a trigger When conversation moved will attempt to scan for matching conditions, if those rules have the Trigger automated rules option checked. If all conditions match, then the actions of those rules will run. Multiple rules may run if there are no conflicting actions, so you’ll want to ensure that you define your rules to be specific to your intended conversations.

Option to stop processing other rules

If a rule is processed, and you don't want other rules listed below to apply, check the Stop processing other rules box. When this option is checked, subsequent rules will be ignored even if they would apply to the conversation. 

The exception to stop processing are delayed rules. Rules with Unreplied after or Unassigned after conditions are scheduled by time, and therefore are not taken into consideration as a rule to be stopped.


Rule exceptions

Most of the time, rules will work on both archived and open conversations. For instance, if you comment on an archived conversation and you have a rule set for When comment... and all the conditions match, then the rule will run.

However, there are some cases where rules will not run:

  • Sending an auto-reply will not trigger a rule with a When outbound reply trigger.
  • When messages are imported to your Gmail or Office 365 channel when you first add it, rules will not run on them.
  • Vacation responder messages will not trigger any sequential When outbound reply rules.
  • Conversations in the trash will not trigger any rules if you action on the conversations.
  • The specific combination of using When inbound, if unreplied/unassigned after... and then you archive the conversation, then the rule will not run because you have manually marked it as complete.
  • If a conversation is smart merged between team and individual inboxes, only team rules will run on the conversation. Individual rules will not run. This is true even if a reply in the merged conversation only addresses your individual channel.

Rules and analytics

Actions made by rules are not counted into analytics. For instance, if you have a rule to auto-archive emails, the archive does not count as a reaction time. These actions are excluded from analytics.


Smart rules

Smart Rule is a type of rule that adapts intelligently to the different messages and workflows of your team to automatically run actions that save you countless hours. What makes a Smart Rule smart is the dynamic variables that decipher information that would otherwise require a human to analyze. Learn about Smart Rules use cases here.


Delayed rules and time zones

Front has powerful advanced rule conditions that are based on the amount of time that has passed after an inbound, outbound, or moved message. These delayed-rule conditions are: Unreplied after and Unassigned after

The time zone that you are in when creating the rule is the time zone that the rule will act on. If any teammate modifies the rule in a different time zone, we will detect this and the time zone will update to the latest one.


Types of rule conditions

Basic

Most rule conditions are Basic type and available on all plans. All the rule conditions not listed below in the Advanced or Scale sections are considered Basic. In Front, you will also see which rule conditions you have access to according to your plan. For an explanation of all rule conditions, see here.

Advanced

Advanced rule conditions are used in more complex workflows and available on the Growth plan or above. The Advanced rule conditions are listed below. For an explanation of all rule conditions, see here.

Rule condition category

Advanced condition

WHEN

  • New comment is added
  • Teammate is mentioned
  • Assignee is changed
  • Assignee is removed
  • Conversation is archived
  • Conversation is reopened
  • Conversation is deleted
  • Conversation is restored
  • Conversation is snoozed
  • Snooze expired
  • Tag is removed
  • Conversation is moved
  • Message delivery fails

IF

  • Conversation is in specific channels
  • Assignee currently is one of
  • Assignee currently is not one of
  • Conversation has no tags
  • Conversation does not have specific tag(s)
  • Message HTML Body contains
  • Message language is
  • Headers contain
  • Message has attachment
  • Message has no attachment
  • Attachment file name contains
  • Attachment extension is
  • Front Chat visitor URL contains
  • Message type is
  • Message direction is
  • Custom contact field contains
  • Time is between specific hours
  • Day of the week is
  • Message unreplied after
  • Conversation unassigned and open after
  • Delay since trigger
  • Time is during business hours
  • Time is after business hours
  • Contact is in specific list
  • Contact is not in specific list
  • Custom account field contains

THEN

  • Assign to teammates
  • Unassign
  • Notify assignee (if any)
  • Reopen conversation
  • Delete conversation
  • Add links
  • Forward to
  • Add comment
  • Add contact to a specific list
  • Assign based on a contact field
  • Remove contact from a specific list
  • Assign based on an account field
  • Notify based on an account field
  • Send to Hipchat
  • Log message in Hubspot
  • Trigger in PagerDuty
  • Create activity in Pipedrive
  • Create lead in Salesforce
  • Send email to Salesforce
  • Send task to Salesforce
  • Send to Slack
  • Send to a Webhook
  • Send to Zapier 

Scale

Scale rule conditions are available on the Scale plan. The Scale rule conditions are listed below. For an explanation of all rule conditions, see here.

Rule condition category

Scale condition

IF

  • Dynamic variable contains

THEN

  • Log variables in a comment (debugging)

Pricing

Templates from our rule library are available on all Front plans.

Customized rules using the rule engine builder, advanced rulesSLA rules, and load balancing rules are available on the Growth plan or above.

Company rules and Scale rule conditions are available on the Scale plan.

22replies Oldest first
  • Oldest first
  • Newest first
  • Active threads
  • Popular
  • I cant get rules to work.  Simple one that when I assign a tag it should move boxes - anything I am missing?

    Like
  • Hi Chris,

    Sorry I'm just now seeing this. Did you ever get it to work?

    Like
  • I'd love an option for 'Stop processing further rules'. I need to have a lot of extra clauses in rules further to the end to stop from triggering for earlier rules. This is really simple in Freshdesk (which we use while evaluating Front)

    Like 1
  • Jean-Paul Horn can you explain this a bit more? Are you looking for something like "if this rule is triggered, override other rules" or what?

    Like 1
  • I have a rule that assigns a message to a teammate based on contents of the message, and another rule that notifies all team members if this message is not assigned.

    However, it seems everyone on the team is still getting the notification even if the message is assigned to the teammate, using the first rule.

    I have the rules ordered so that the "assign to teammate" rule is processed first. Considering the message is then "assigned" shouldn't that prevent the second rule "notify all teammates" from processing?

    Thanks for the help.

    Like
    • ddofborg
    • ddofborg
    • 5 yrs ago
    • Reported - view

    Is there an action to follow a conversation?

    Like
  • Micah Kohne Hi, and sorry for the delayed reply. Can you please send an email with the names of these rules so that we can investigate?

    Like
  • ddofborg Unfortunately not!

    Like
  • Thanks for the reply  Cori Morris - I added a delay to the second rule to check if the message is assigned and that makes it work properly.

    Like
  • Is there a way to make a rule be case-sensitive?

    Like
  • roundedbygravity Not at this time. I will share this request with our product team, though.

    Like
    • Rolf Dröge
    • co-founder of kollekt.fm
    • Rolf_Droge
    • 4 yrs ago
    • Reported - view

     Cori Morris , I can add a personal tag to the messages in our shared team inbox but is it also possible to create a team rule that adds this (personal) tag to a message received in our team inbox?

    Like
  • Rolf Dröge Not at this time. I'd be happy to share your request with our Product team, though.

    Like
  • Hi. After the update, when we send outgoing emails, they are not archived in our team inboxes. We have a rule that moved send email to shared inboxes. But the are opened again, when moved. Even if we send and archive.

    How do we get the sendt email to be archived in the shared inbox?

    • Kenji Hayward
    • Head of Customer Support
    • Kenji_Hayward
    • 4 yrs ago
    • Reported - view

    Hi Søren Rynkebjerg please send us a request (as we'll likely need some information sensitive to your account) you can use the contact form on our Help Center thanks!

    Like
    • ddofborg
    • ddofborg
    • 4 yrs ago
    • Reported - view

    I want to archive auto-replies and for this I want to use headers matching.

    For example, if this header is present and one of the values is "OOF", I want to archive the message.

    x-auto-response-suppress: DR, NDR, RN, NRN, OOF, AutoReply

    So far I have not found a way to write:

    IF has header-key "x-auto-response-suppress" AND header-value contains "OOF"

    How can I do something like this?

    Like
    • Joyce
    • Joyce
    • 3 yrs ago
    • Reported - view

    Rule #1
    WHEN: Outbound Message, Outbound reply
    IF: unreplied after 1 min AND has tag "resend email1"
    THEN: Reply email 1 AND Remove tag "resend email 1" AND Add tag "resend email 2"

    Rule #2
    WHEN: Outbound Message, Outbound reply
    IF: unreplied after 1 min AND has tag "resend email 2"
    THEN: Reply email 2 AND Remove tag "resend email 2" AND Add tag "resend email 3"

    Rule #3
    WHEN: Outbound Message, Outbound reply
    IF: unreplied after 1 min AND has tag "resend email 3"
    THEN: Reply email 3 AND Remove tag "resend email 3" AND Add tag "resend email 4"

    In this case, if 3 of my "unreplied after" set to different mins, 3 rules will be triggered. If I set them all to same min, e.g. in this case, all set as 1 min, only my rule 1 will trigger, my rule 2 and rule 3 will not be trigger, may I know why is this the case?

    Like
  • What is the difference between Does not contain vs Does not contains full word/phrase?

    I'd like to exclude some receipients in rule filter (IF) and I'm not sure which option to choose.

    Like
  • Is there a way to bulk create rules? I'd like to auto-assign all of my client's inbound emails to myself. I am wondering if there is a more efficient way than doing it one by one. 

    Like
  • Mackenzie Davids Hi! You can certainly simplify this. Please send us an email so we can look at your specific use case and help you get set up!

    Like
  • My rules keep getting disabled? Any reason?

    Like
  • Hi Carlos Gonzalez! It looks like your rule utilizes an Advanced rule action. You're currently on a plan that does not include these actions. More information about these actions can be found here: https://help.frontapp.com/t/h429fb#then-teammates

    Like
Like3 Follow
  • 3 Likes
  • 5 mths agoLast active
  • 22Replies
  • 41507Views
  • 19 Following