hands-on lab

Getting Started with Amazon Simple Notification Service

Up to 1h
Get guided in a real environmentPractice with a step-by-step scenario in a real, provisioned environment.
Learn and validateUse validations to check your solutions every step of the way.
See resultsTrack your knowledge and monitor your progress.
Lab description

Introduction to Amazon Simple Notification Service

Amazon Simple Notification Service (SNS) is a fully managed, highly scalable service that facilitates message delivery using a publish/subscribe model. SNS supports several transports, such as HTTP/S, SMS and email, and can deliver push messages to multiple recipients at once. SNS is often used to push messages directly to other supported AWS services, such as Lambda or Simple Queue Service (SQS). SNS is integrated with AWS CloudTrail so that SNS actions are captured, logged and delivered to an S3 bucket. 

Learning Objectives

Upon completion of this lab you will be able to:

  • Turn on CloudTrail so that SNS actions are captured
  • Create a SNS topic
  • Create a subscription to an SNS topic
  • Send a single message and have it delivered to multiple recipients
  • Send a JSON formatted message and confirm customized content is delivered based on the transport type
  • Use Athena to query data from CloudTrail logs


You should have a conceptual understanding of:

  • AWS Management Console
  • AWS CloudTrail
  • AWS Simple Storage Service (S3)
  • Structured Query Language (SQL) basics

Lab Environment

After completing the lab instructions the environment should look similar to:



July 1st, 2021 - Updated all instructions and screenshots to reflect the latest user interface changes

May 14th, 2020 - Updated the CloudTrail instructions/screenshots due to the new AWS UI

March 13th, 2019 - Changed instructions and screenshots because of the new UI

January 10th, 2019 - Added a validation Lab Step to check the work you perform in the Lab

About the author
Learning paths

Stefano studies Computer Science and is passionate about technology. He loves working with Cloud services and learning all the best practices for them. Google Cloud Platform and Amazon Web Services are the cloud providers he prefers. He is a Google Cloud Certified Associate Cloud Engineer. Node.js is the programming language he always uses to code. When he's not involved in studying or working, Stefano loves riding his motorbike and exploring new places.

Covered topics
Lab steps
Logging In to the Amazon Web Services Console
Learning important Messaging specific terms
Creating Your First Trail
Creating an SNS Topic
Creating a Subscription and subscribing to a Topic
Publishing a Message
Using Amazon Athena to view CloudTrail logs