Embedding with the Amazon QuickSight APIs
Applies to: Enterprise Edition |
Intended audience: Amazon QuickSight developers |
There are only a few steps involved in the actual process of embedding analytics using the QuickSight APIs.
Before you begin, make sure to have the following items in place:
-
Set up the required IAM permissions for the caller identity used by your application that will use the AWS SDK to make API calls. For example, grant permission to allow the
quicksight:GenerateEmbedUrlForAnonymousUser
orquicksight:GenerateEmbedUrlForRegisteredUser
action. -
To embed for registered users, share QuickSight assets with them beforehand. For new authenticating users, know how to grant access to the assets. One way to do this is by adding all the assets to a QuickSight folder. If you prefer to use the QuickSight API, use the
DescribeDashboardPermissions
andUpdateDashboardPermissions
API operations. For more information, see DescribeDashboardPermissions or UpdateDashboardPermissions in the Amazon QuickSight API Reference. If you want to share the dashboard with all users in a namespace or group, you can share the dashboard withnamespace
orgroup
. -
If you're embedding dashboards, make sure to have the ID of the dashboards you want to embed. The dashboard ID is the code in the URL of the dashboard. You can also get it from the dashboard URL.
-
A QuickSight administrator must explicitly enable domains where you plan to embed your QuickSight analytics. You can do this by using the Manage QuickSight, Domains and Embedding from the profile menu, or you can use the
AllowedDomains
parameter of aGenerateEmbedUrlForAnonymousUser
orGenerateEmbedUrlForRegisteredUser
API call.This option is only visible to QuickSight administrators. You can also add subdomains as part of a domain. For more information, see Allow listing domains at runtime with the QuickSight API.
All domains in your static allow list (such as development, staging, and production) must be explicitly allowed, and they must use HTTPS. You can add up to 100 domains to the allow list. You can add domains at runtime with QuickSight API operations.
After all the prerequisites are complete, embedding QuickSight involves the following steps, which are explained in greater detail later:
-
For authentication, use your application server to authenticate the user. After authentication in your server, generate the embedded dashboard URL using the AWS SDK that you need.
-
In your web portal or application, embed QuickSight using the generated URL. To simplify this process, you can use the Amazon QuickSight Embedding SDK, available on NPMJS
and GitHub . This customized JavaScript SDK is designed to help you efficiently integrate QuickSight into your application pages, set defaults, connect controls, get callbacks, and handle errors.
You can use AWS CloudTrail auditing logs to get information about the number of embedded dashboards, users of an embedded experience, and access rates.
Topics
- Embedding Amazon QuickSight dashboards with the QuickSight API
- Embedding Amazon QuickSight visuals with the QuickSight APIs
- Embedding the full functionality of the Amazon QuickSight console for registered users
- Embedding the Amazon Q in QuickSight Generative Q&A experience
- Embedding the Amazon QuickSight Q search bar (Classic)
- Embedding analytics using the GetDashboardEmbedURL and GetSessionEmbedURL API operations