Is there a way to improve load time of quicksightdashboar if user is already authenticated?

I am using quicksight dashboard in my angular application like below. Is there a way if i already have a dashboardEmbedUrl and I reload the page then since my user is already autheticated so i can use the same dashboardEmbedUrl to load the dashboard and i don’t have to generate a new one so that my dashboard performance is improved and we don’t have to fetch the new dashboardEmbedUrl again and again.

QuickSightEmbedding.createEmbeddingContext()

      .then((e) => {

        e.embedDashboard({

          url: this.dashboardEmbedUrl,

          container: containerElement,

          height: '100%',

          width: '100%',

          resizeHeightOnSizeChangedEvent: false,

          onChange: (changeEvent, metadata) => {

            switch (changeEvent.eventName) {

              case 'FRAME_MOUNTED': {

                this.isLoading = true;

                break;

              }

              case 'FRAME_LOADED': {

                this.isLoading = false;

                break;

              }

            }

          }

        })

Hi @grvgupta12,

This capability is currently not achievable (even if authenticated) when looking at documentation, since embedUrls contain “a temporary bearer token. It is valid for 5 minutes after it is generated. Once redeemed within this period, it cannot be re-used again.”

Although this is not completely what you are looking for, if you would like to make your page a little more convenient, you can utilize navigateToDashboard via the embedding sdk to change dashboards without a new request.

Is there a way if embedUrl is already autheticated and user can view the dashboard then if user reloads the dashboard again then this time quicksight should not authenticate the user again since already authenticated and can view the dashboard again quickly.

Hi @grvgupta12,

Although it would be more convenient if that were the case, for security reasons that is not possible.

Apologies, I realized I phrased my last message a little weirdly so I will reword my explanation:

The embedUrl is valid for 5 minutes, but of course I’m sure you know that users can interact with dashboard for up to 10 hours. I believe the session lifetime limit can be changed by generating embedUrl through the API. However, the 5 minute URL validity cannot be changed, meaning that if user refreshes or exits, they have to go through authentication again.

Just to make sure, I would definitely recommend contacting AWS Support by creating a support case, as they may be able to provide specific account help for your use case.