AWS Contact Center

Easy medical lab appointment check-in and triage with Amazon Connect Tasks

There are many situations where the activities you are running on a daily basis require queuing and prioritization so that you can optimize time spent by your employees by tracking their tasks. For example, nearly half of the time of nurses at a medical laboratory is spent on follow-up tasks in external applications and these additional work items such as taking notes, setting up follow up appointment, and sending email are difficult to follow, track, and measure.

There are online appointments and walk ins. When handling intake patients that request various types of tests, you need to manage not only the availability of the various equipment or room required by a specific test but also optimize the time spent by nurses when performing these tests for the patients. Having a clearly organized mechanism to assign the right nurse to the right patient delivers the best patient experience and provides maximum efficiency and cost reduction.

Amazon Connect Tasks automates, tracks, and manages tasks for contact center agents, improving agent productivity by up to 30%.

In this blog post, you will learn how to use Amazon Connect Tasks to easily prioritize, assign, and track all tasks of nurses to completion, improving agent productivity and ensuring customer issues are quickly resolved.

Solution Overview

This solution uses an AWS CloudFormation template. It creates Amazon S3 buckets and loads all the assets into CloudFront for this solution. It also creates, queues, routing profiles, users, and a sample contact flow for the specified Amazon Connect instance. As a user, you use the first CloudFront URL to schedule an appointment (Figure 3) and the second CloudFront URL to check-in at the medical lab (Figure 4).


Figure 1 Architecture diagram


Figure 2 The contact flow deployed by the AWS CloudFormation

Figure 3 The appointment website deployed by the AWS CloudFormation



Figure 4 The check-in website deployed by the AWS CloudFormation



Our blog is a practical example addressing the use case of a medical lab with multiple registered nurses, skilled to deliver various types of tests. The patients can schedule a test online ahead of time but they also can walk in requiring a test. By providing the patients with a simple check-in mechanism, we create a Amazon Connect task as soon as they enter the information required for their lab test, this way securing a place in the waiting queue.

For simplicity we are providing a simple web interface that showcases the use of the Amazon Connect Tasks API that allows the lab employees to queue and prioritize tasks for their nurses based on the type of lab test required, as well as blending the online appointments with the walk-ins.

The nurses accept tasks, all the patient information is delivered to their screen. Once the test is complete, they can create a linked follow-up task that preserves the original task information and allows them to complete the documentation work after the patient visit hours are over, this way optimizing the time spent with the patients.

The deployment tasks can be organized in the following steps:

  1. CloudFormation deployment
  2. Patient appointment
  3. Patient check-in
  4. Nurse login and test
  5. Clean up


For this walkthrough, you should have the following prerequisites:

Step-by-step instructions

CloudFormation deployment

The CloudFormation template will deploy resources in the US West (Oregon) Region. To deploy in other regions, download the solution from this GitHub repository.

  1. Sign in to the AWS Management Console in the US East (N. Virginia) Region.
  2. Launch the CloudFormation template here:
  3. Enter a unique stack name (e.g. amazon-connect-tasks-blog).
  4. Enter a globally unique name for a S3 Bucket for the Appointment WebSite. The template creates and stores all the assets that are required for the website you access through the Amazon CloudFront URL.
  5. Enter a globally unique name for a S3 Bucket for the CheckIn WebSite. The template creates and stores all the assets that are required for the website you access through the Amazon CloudFront URL.
  6. Enter Amazon Connect Instance ID.
  7. Enter Amazon Connect Instance Name.
  8. Enter Operating Hours ID. You can find it in the URL of the hours of operation page as shown below.
  9. Enter Security Profile ID of a security profile. For example, the Admin security profile. You can find it in the URL of the security profile page as shown below.
  10. Check the box for “I acknowledge that AWS CloudFormation might create IAM resources.”
  11. Choose Create Stack to deploy the stack.

Note: You can view the status of the stack in the AWS CloudFormation console in the Status column. You should receive a CREATE_COMPLETE status in approximately 20 minutes.

Patient appointment

  1. Sign in to the AWS CloudFormation console
  2. Select the Outputs tab and click on the value of the appointmentCloudfrontEndpoint key.
  3. Fill in the appointment form with your name, Patient ID, and Appointment Time at around 5 minutes from current time.
  4. Click Submit button.
  5. Message “Appointment Successfully Created!” will be displayed.

Patient check-in

  1. Open the AWS CloudFormation service in the AWS Management Console and select the stack that you just created.
  2. Go to the Outputs section of the newly created stack. Copy the checkinCloudfrontEndpoint URL from the Value column.
  3. Fill in the check-in form with your name, date of birth, patient ID, test, phone number, appointment time at around 5 minutes from current time, check the box for “Yes”.
  4. Click Submit button.
  5. Message “Successfully Checked In!” will be displayed.

Nurse login and test

  1. Select the Outputs tab and copy the value of the key starting with the medical test name e.g. GeneralDiagnosticTestAgentLoginName that you selected during check-in.
  2. Sign in to Amazon Connect Contact Control Panel (CCP) using the copied value as the user name and Welcome123$ as the password. You can also access the CCP with the URL
    Note: Replace connectInstanceName with the name of your Amazon Connect instance.
  3. Set the status in the CCP to Available
  4. An Amazon Connect Task will be delivered to the CCP.

Cleaning up

To avoid incurring future charges, remove all created resources by deleting the AWS CloudFormation stack.

If you created an Amazon Connect instance for this blog, you can delete the Amazon Connect instance in the Amazon Connect service console.


In this post, you learned how to leverage the Amazon Connect Task API to automate the intake process for a medical lab while providing full tracking and reporting both real time and historical.

You can find out more about Amazon Connect Tasks here

To learn more about how this solution was built and see how the APIs were performed, refer to the GitHub repository­­­.

Author bio

Girish Mallenahally is a senior solutions architect at AWS. Previously, he worked at Intuit building Contact Center Solutions using Amazon Connect. Prior to that he worked at Intel, Accenture and Sify. He has a Bachelor of Engineering in Mechanical Engineering. He is passionate about technology and innovation; he is a named inventor on 18 issued patents and author of publications. You can read about his creative work here.

Magdalena Nedelcu is the Worldwide Technical Leader for Amazon Connect with a demonstrated history of implementations in the Contact Center space for 20 years, over 10,000 agent seats. Client-centric approach. She is passionate about building innovative solutions using AWS services to help customers navigate their journey to the cloud to achieve their business outcomes.