Amazon QuickSight
User Guide

Embedding Amazon QuickSight Dashboards

With Enterprise edition, you can use embedded dashboards to help you focus on your core product experience by offloading scalable, responsive analytics code to Amazon QuickSight. There are no servers to manage, no upfront costs, no annual commitments, and no charges for unused embedded dashboards. You can embed dashboards into apps or websites, and scale your insights with your growing user base. For dashboard viewers, you pay only for usage with a pay-per-session pricing model.

Every user receives a secure, personalized dashboard while requiring no user-facing authentication specific to Amazon QuickSight. Viewers of embedded dashboards can be Amazon QuickSight users (readers, authors, or admins) authenticated in your AWS account as one of the following:

  • Active Directory (AD) users or group members

  • Invited non-federated users

  • IAM users and IAM role-based sessions authenticated through Federated Single Sign-On using SAML, OpenID Connect, or IAM Federation

Dashboard embedding is available in all supported AWS Regions. Before you can embed content, you need a subscription to Amazon QuickSight Enterprise edition in the AWS account where you plan to use to embed dashboards. If your app also resides in AWS, the app doesn't need to reside on the same AWS account as the Amazon QuickSight subscription. However, the app needs the ability to assume the IAM role that you use for the API calls.

In general, embedding a dashboard in your webpage or app involves the following steps, explained in greater detail later:

  1. Create your dashboards in Amazon QuickSight and add domains to your allowlist. Publish the dashboards that you want to embed into your app. Share each dashboard with the users or groups that you choose. Then add the domain of the web app where you want to embed the dashboard to the list of domains that are approved for embedding. An Amazon QuickSight admin can view or edit the list of approved domains.

  2. In your AWS account, set up permissions for viewers of the embedded dashboard. Verify that your users can be authenticated through IAM, AWS Managed Microsoft AD, SAML, or WebIdentity. Create or choose an IAM role that grants permissions to become a reader in Amazon QuickSight and to retrieve the specific embedded dashboard. These permissions can be configured by an AWS administrator.

  3. On your application server, authenticate the user and get the embedded dashboard URL by using one of the AWS SDKs.

  4. On your application page, embed the dashboard. To simplify this process you can use the Amazon QuickSight Embedding SDK, available on NPMJS and GitHub. This customized JavaScript SDK is designed to enable you to efficiently integrate Amazon QuickSight dashboards into your application pages, set defaults, connect controls, and handle errors.

In the following sections, you can details about how to implement embedded dashboards.