Documents

Round Robin Action

Overview


The “Round Robin Assignment” action is our context-aware round robin action.
As an overview:

  1. It’s based on the “Rotate Owner” action.
  2. It will skip users that are not available.
  3. The definition of “availability” can be set by the user.

It is different from the “Rotate Owner” action in the following points:

  1. It doesn’t change the record - it only provides a user through its action outputs. (See FAQ)
  2. It doesn’t track the number assignments to users like “Rotate Owner” will.

Settings

In order of appearance:

Team Selection - this allows you to filter down the users you’d like to see to a certain team (or select “All” to see everyone)

User Selection - Select the users you’d like to see in the rotation. The order you select the users in will become the order of the rotation.

Include user when user is… - The criteria that determine whether the user is returned or skipped in the rotation. These criteria are:

  1. Is available - Return if user is available (i.e. Not marked away).
  2. Is out of office - Return if user is out of office (i.e. On Holiday).
  3. Is in working hours - Return is user is in working hours (e.g. It’s during their workday).
  4. Is NOT available - Return if the user is away.
  5. Is NOT out of office - Return if the user is not out of office.
  6. Is NOT in working hours - Return if the user is not in working hours.

If multiple conditions are selected, the user will be returned if they fulfill any single condition.
So if I wanted to “Rotate Owner” to users that are either online or should be working - I would select both “Is available” and “Is in working hours”.

(Note: This means if you select “Is available” and “Is NOT available”, every user will be included in the rotation).

Fallback behavior - The fallback action is invoked if no users are available. The app will trigger the fallback action if it checks all the users and none fulfill the above condition.

The options are:

  1. Return Selected User - A predefined user will be returned instead.
  2. Return Nothing - No user id will be returned at all.
  3. Fail action - The action will be failed.

Static User Id (optional) - The User that is returned if the “Return Selected User” fallback is executed.

Usage

Availability

The availability checks use information built into HubSpot. You can access this information by:

  1. Going to settings
  2. Under “Account Management” select “Users and Team”
  3. Select a User
  4. In the top bar - select “Edit Working Hours”

There you will find the three attributes we look at.

At the top of the page - you can see “User Status”. This has the options “Available” and “Away”. This can be managed on this page, or in the conversations inbox.


Under that you will see working hours - these can be set once and used repeatedly. 


Under that you will see “Out of office” - this is where users can add their holidays and vacations.

Each of these three sections corresponds to two options (both is and is Not options) in the settings of each action.

Action Output

To commit a user-id onto a record, you need to use the “Action Output” provided by the workflow action.
For example, if I want a “Rotate Owner” like experience - I can set up the following workflow.

The “Edit Record” action will set the Contact Owner using the action output from the Round Robin Action. 

To add the Action Output to “Edit Record” - Simply:

  1. In Property to edit - choose “Contact Owner”
  1. In “Choose a value” select “Choose data token”.
  1. In the top right corner, under “Choose data variable” under “View properties or action outputs from:” select “Action Outputs”.
  2. Find your “Round Robin Assignment” action and select “Assigned Owner ID”.

Now, when you run the workflow - the Round Robin action will return the userId for the next User and the “Edit Record” action will save it to the user.

FAQ

Why doesn’t the action change the record?

In order to provide maximum utility across all workflow types, while minimizing the number of permissions requested - we’ve designed the action to provide an action output that you can use in a different action (Like edit record).
This allows us to avoid requesting read/write permission to every different object type in your application (which I’m sure you can imagine is reassuring).
It also allows you greater flexibility in using the action output in many different types of subsequent workflow actions.