Embedded dashboard error: "you don't have access permission or it was deleted"

Hi @ArunSanthosh, I writing to you in the hope that you might be able to help us with an error that we have noticed on our Quicksight dashboard.
We have created an embedded dashboard which sits under our company website on a sub-domain, and for most of the time it works like a dream, however every now and again it gives an error whereby it returns a message on the main screen “you don’t have access permission or it was deleted”.
Our embedded dashboard has multiple dashboards from which we can select anyone of them, the error occurs when you switch from one dashboard to another, e.g. if you go from dashboard ‘A’ to dashboard ‘B’ and then back to Dashboard ‘A’.
Obviously this error should not happen, as by the description above you have permissions to access the dashboard. Also if you repeat the same action again, the dashboard that caused the error, is now available for you to work with, therefore it hasn’t been deleted either.
I originally used the following workshop to build the embedded dashboard, this has changed from https://learnquicksight.workshop.aws/en to Workshop Studio.
As part of my search for a solution I have reached out to AWS support on this issue, providing har file and developer console logs. On inspection they suggested that the issue arises from a value called 'non-existent dashboard’.
This value can be found in the workshop code, in the file ‘GetQuickSightResponse.py’, on line 243.
However, on review of the script I don’t understand how this value could cause the issue as it looks like a placeholder for when an end-user first logs into the dashboard.
Any help is greatly appreciated.

Hi @Anthony_McGrath
The non-existent id is used to generate an url in the beginning so that when the user selects an actual dashboard (this comes from the api call), the dashboard can load faster using navigateToDashboard function of embedding SDK.

//------------
                  //Embedding the url to non-existent dashboard will result in an error screen in the div.
                  //However, on initial load, this div is hidden underneath status message screens.
                  //When user picks a dashboard from drop down, NavigateToDashboard function will load it (without generating another url)
                  //and then this div will be brought up to display layer.
                  //This is done to ensure that dashboard loads as quickly as possible once user makes a selection.

As per the workshop code, the div containing the QuickSight dashboard will be hidden on the initial load until the actual dashboard is rendered. The embed-sample.html file (line 408-424 and line 212-217) file of the workshop has these details.

Regards
Vetri

1 Like

Hi n_vetri,

Thank you very much for the reply.
I’m not sure that I explained the issue correctly.
When we are using the dashboard we get an occasional error message, “you don’t have access permission or it was deleted”. This error occurs on dashboards that have been
shared with the user, and that the user has actively worked or is working with. The error can happen when trying to open the dashboard or even when signed into the dashboard, but having left it idle for a period.
We have consulted with AWS whom on analysis of the har files, say that when the error occurs it shows that it is triggering the script for the ‘non-existent id’. Surely when a user has been granted permission to use a dashboard and is then actively using it, this error should not occur?
My questions are why is this happening and how can we prevent it?

Regards;
Anthony.

Hi Anthony,
Can you please check if you have a code to get the url for ‘non-existent id’ and embed it in a div element?