Queues in Salesforce

In Salesforce, there will be a group or set of records that will not have any owner, these sets of records are referred to as queues. These queues will be accessible to certain users, who have been given access to those queues by the Salesforce admin. Users who have access to the queues can access all the records in the queue. With the help of the queues, we can prioritize and classify the records. We can also assign records to different teams.

The records can be added to a particular queue manually, simply by changing the owner of the record. The assignment rules need to be defined before a record is assigned to a queue. The records are there in the queue because they are without any owners. As soon as it is assigned to an owner, the record goes out of the queue. The assignment can be voluntary or it might be automatic. Queue members can check the queue themselves, and accept the record. Alternatively, records can be explicitly assigned to any of the queue members by the admin. Users can be added or removed in the queue only by the admins or by any other user with manage privileges.

Use Cases for queues

Conventionally, it has been found that queues are frequently used in sales and support teams. For example, the sales team might want to send all new leads to a separate queue for confirmation, while all leads older than a week might go to a different queue for priority follow-up. Similarly, the support team would like all the priority 1 incident cases to go to a separate queue, while the rest can go to some other queue. Queues can be used in different ways.

User Access in Queues

An organization-wide sharing model for a given object determines the access of the users to any records or queries, that are associated with an object.

Types of access:

  • Public Read/ Write/ Transfer: Users will have complete access in this case. They can view the records, take ownership of the records from any queue. They can transfer or assign the records to another user for the same queue.
  • Public Read/Write or Public Read Only: In this case, users can view the records from any queue but can accept records from only those queues of which they are a member. It also depends on their sharing settings. For example, if their role is higher in the hierarchy, than the other queue members they will still be able to access the records.
  • Private: In this type of access, users can view as well as accept records only from those queues of which they are a member. It also depends on their sharing settings.

However, only the sharing model doesn’t determine the user access to the records in the queue. The users need to have the edit permissions as well so that they can take ownership of the records in the queue. The users with admin privileges, “ Modify all” object-level permission and “Modify All Data”  permission can view records from any queue, and accept them, irrespective of the sharing model.  If a queue is deleted, the records need to be assigned to another user or owner, while removing the assignment rules.

Setting Up Queues

Queues can be set up with the few simple steps mentioned below.

  1. Go to Setup.
  2. In the quick find box, type “Queues”.
  3. Select Queues, and then click on “New”.
  4. In the label name type the display name of the queue.
  5. Type the name of the queue, so that the user can identify the queue with that name.

     6. In the next step specify, who will receive the notifications when a new record will be added in the queue.

     7. Select the queues default division if your org uses division.

     8. Add the objects to the queue.

     9. Add the members to the queue (It could be an individual or group or a role). Save the details, and create the queue.

Once the queue is created, you can set the assignment rules for the queue, which will govern the assignment of records to the queue. Assignment rules can be set from the “Assignment Rules” module that can be accessed from Setup. Once the queue is created, new members or groups can be added by accessing the queue properties.