Skip to main content
Skip table of contents

Agent SLA

Agent SLA is the time limit in seconds that the agent must respond to a customer’s message received in a certain Queue or List.

As soon as a new customer message is received on the conversation, the agent SLA timer starts. Agents will see a countdown timer on top of the Message Composer, with changing colors, based on the time left to respond to the message. Agents can see the timer running on top of the Message Composer as shown in the screenshot below.

Screenshot 2024-03-07 134652.png

The timer stops as soon a reply from the agent is sent to the customer.

When a conversation is on hold, the agent SLA timer is stopped and reset when the conversation is resumed again.

For push-based conversations, the Agent SLA time is set on a per queue basis in the Unified Admin. For the pull-based conversations, this setting is defined on the List level.

The Agent SLA time runs on the conversation level instead of the agent level, i.e., one time per conversation rather than a time per agent. This means that if a conversation carries several agents, if any one of the Primary agents responds to the customer within the SLA time, this time will be reset. On the other hand, if the SLA expires for a conversation having multiple agents, all agents in the conversation will be removed and the conversation will be rerouted to the other available agents.

Agent SLA is disabled for voice channels.

The timer only starts when there is no active voice channel session of the customer in the conversation.

How to Setup Agent SLA

  1. On the List or Queue configuration specify Agent SLA

    1. A new field(Agent Response Time) is added for queue and list configuration.

    2. To use Agent SLA, this field must have a not null value for the duration.

  1. SLA Thresholds:

There can also be multiple threshold levels for that time and for each threshold system will emit an action.

Threshold levels (can be defined on Controller) - a maximum of three levels from 0 - 100%. For example, 

  • Level 1: 0%

  • Level 2: 50%

  • Level 2: 75%

  • Level 3: 100%

The 1st and last levels are already configured by default, 1st level has an action START_TIMER that will initially start the timer, and the last level has the action REMOVE_ALL_AGENTS that will remove all the agents within the conversation.

Other than 1st level all the levels are customized and can be configured.

Configure Thresholds:

  1. The last level REMOVE_ALL_AGENTS is configured on the controller bot, which is invoked when the SLA reaches 100%. This action can be configured in the bot training.

  2. To configure threshold values, a POST API on Conversation-Manager is exposed.

  3. CODE
     POST    {root-url}/conversation-manager/agent-sla-thresholds
  4. This takes a list of Agent SLA Thresholds.


  5. For internal usage, you can refer to this EF Postman collection.

  6. Please NOTE that at the moment the system is configured for the following actions:

    1. CHANGE_COLOR: This changes the color of the timer clock being displayed on the agent UI.

    2. SHOW_POPUP: This shows a pop-up to the agent whether he/she wants to remain in the conversation.

      1. If so, then the timer value will get reset.

      2. Otherwise, the agent will be unsubscribed from the conversation.

View Thresholds:

You can also view the configured Agent SLA thresholds, for this another API is exposed on Conversation-Manager

  1. CODE
     GET    {root-url}/conversation-manager/agent-sla-thresholds

Delete Thresholds:

To delete existing thresholds in the system, call the same create thresholds API with an empty list object as the body just like below:

Endpoint: POST {root-url}/conversation-manager/agent-sla-thresholds


For internal usage, you can refer to this EF Postman collection.


In case no thresholds are defined in the system, the agent sla will run for the complete duration specified on the queue/list without any intermediate action

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.