Concepts: Tasks in Amazon Connect - Amazon Connect

Concepts: Tasks in Amazon Connect

Amazon Connect Tasks allows you to prioritize, assign, track, and even automate tasks across the disparate tools agents use to support customers. For example, using Tasks you can:

  • Follow-up on customer issues recorded in a customer relationship management (CRM) solution such as Salesforce.

  • Follow-up with a customer through a call.

  • Complete actions in a business-specific system, such as processing a customer claim in an insurance application.

Currently, Amazon Connect Tasks can be used in compliance with GDPR and is approved for SOC, PCI, HITRUST, ISO, and HIPAA.

What is a task?

In a business a task is a unit of work that an agent must complete. This includes work that may have originated in external applications. In Amazon Connect this unit of work is a contact. It's routed, prioritized, assigned, and tracked just like a voice or chat contact. Everything that is applicable to a voice or chat contact is also applicable to a task contact.

Agents handle tasks in their Contact Control Panel (CCP), again just like any other contact. When assigned a task, agents see a notification with the description of the task, information associated with the tasks, and links to any applications that they might need to complete the task. The following image shows what an agent's CCP may look like when they manage tasks.

A task in the contact control panel.

How to create tasks

Amazon Connect provides different ways for you to create tasks:

  1. You can use pre-built connectors with CRM applications (for example, Salesforce and Zendesk) to automatically create tasks based on a set of pre-defined conditions, without any custom development.

    For example, you can configure a rule in Amazon Connect to automatically create a task when a new case is created in Salesforce.

    For more information, see Set up applications for task creation and Create rules that generate tasks for third-party integrations.

  2. You can integrate with your homegrown or business-specific applications to create tasks using Amazon Connect APIs.

    For more information, see the StartTaskContact API.

  3. You can add a Create task block to your flows. This block enables you to create and orchestrate tasks directly from flows based on customer input (DTMF input), and contact and tasks information.

  4. You can enable your agents to create tasks from the Contact Control Panel (CCP) without you doing any development work.

    For example, agents can create tasks to ensure follow up work is not forgotten, such as calling a customer back to provide a status update on their issue.

    For more information, see Test voice, chat, and task experiences.

For more information on getting started with tasks, see Set up tasks.

Supported flow types

You can use tasks in the following flow types:

  • Inbound flow

  • Customer queue flow

  • Agent whisper flow

  • Transfer to queue flow

  • Transfer to agent flow

Supported contact blocks

You can use tasks in the following flow blocks:

  • Change routing priority/age

  • Check contact attributes

  • Check hours of operation

  • Check queue status

  • Check staffing

  • Create task

  • Disconnect / hang up

  • Distribute by percentage

  • End flow / resume

  • Get queue metrics

  • Invoke AWS Lambda function

  • Loop

  • Set contact attributes

  • Set customer queue flow

  • Set disconnect flow

  • Set working queue

  • Transfer to flow

  • Transfer to queue

  • Wait

Linked tasks

When using tasks with the StartTaskContact API, a new contact can be associated with an existing contact through PreviousContactID or RelatedContactId. This new contact contains a copy of the contact attributes from the linked contact.

The following code shows request syntax that includes PreviousContactID and RelatedContactId.

PUT /contact/task HTTP/1.1 Content-type: application/json { "Attributes": { "string" : "string" }, "ClientToken": "string", "ContactFlowId": "string", "Description": "string", "InstanceId": "string", "Name": "string", "PreviousContactId": "string", "QuickConnectId": "string", "References": { "string" : { "Type": "string", "Value": "string" } }, "RelatedContactId": "string", "ScheduledTime": number, "TaskTemplateId": "string" }

When you use PreviousContactID or RelatedContactID to create tasks, note the following:

  • PreviousContactID - When contacts are linked using the PreviousContactID, updates that are made to contact attributes at any time in the chain will percolate through the entire chain.

  • RelatedContactID - When contacts are linked using the RelatedContactID, updates that are made to contact attributes will percolate only to the contactID that is referenced in the UpdateContactAttributes API.


You can specify only PreviousContactID or RelatedContactID in a request body, but not both. If you do specify both, Amazon Connect returns an InvalidRequestException error with a 400 status code.

For information about how PreviousContactID and RelatedContactId are modeled in contact records, see ContactTraceRecord in the contact records data model.

While agents are actively working on a task, the Number pad appears on the Contact Control Panel (CCP). If they make an outbound call using the Number pad, the call is automatically linked to the task. Amazon Connect links the task and outbound call by using the relatedContactID parameter.

The following image of the CCP shows the Number pad is available while the agent works on a task.

The number pad on the CCP.

The Create task block enables you to automatically link the task to the current contact.

The following image of the Properties page of the Create task block shows the Link to contact option.

The link to contact option on the Create task block properties page.

Using IAM? Add Task permissions

If your organization is using custom IAM policies to manage access to the Amazon Connect console, make sure users have the appropriate permissions to set up applications for task creation. For a list of required permissions, see Tasks page.


If your instance was created before October 2018, for information about how to configure your service-linked roles (SLR), see For instances created before October 2018.

Track tasks in real-time and historical metrics reports

You can track the status of all tasks in real-time and historical metrics reports, just like you track contacts in other channels. For example, you can track:

There are a few metrics that don't apply to tasks so you'll notice a value of 0 on the report for them:

Manage tasks to custom service levels (SL)

While voice and chats may have short service level times based on seconds or minutes, you may have some tasks with service levels that are hours or days. You can create custom service level durations that are appropriate to each of your channels. For more information, see real-time custom service levels and historical custom service levels.

When do tasks end?

The total duration of a task can be up to 7 days. A task ends when one of the following happens:

  • An agent completes the task.

  • A flow runs a Disconnect / hang up block, which ends the task.

  • A task reaches the 7 day limit.

  • You end the task using the StopContact API.

Search and review completed tasks

Use the Contact search page to search for and review completed tasks.

The following image is an example of what the Contact Summary and References look like in a contact record for a task.

A contact record page for a task.

The following data is appended to the contact record but not stored with it. The data is included in an export.

  • Flow ID

  • Potential attributes:

    • ContactDetails

      • Name: the name of the task

      • Description: the description of the task

    • References: any links to forms or other sites

When task is scheduled for a future date and time, Contact Summary also displays Scheduled time.

More information