Created a Django application for achieving this embedding. Here, set the server and dashboard details as the embed details, and the dashboard will be rendered after passing the authorization.
NOTE: Reading the Getting Started section of the documentation is the best way to get started. The Getting Started guide provides you enough information that you need to know before working on the sample.
Please download the Django sample from the attached file.
You need to set the following properties in models.py
file as follows.
RootUrl | Dashboard Server BI URL (ex: http://localhost:5000/bi, http://dashboard.syncfusion.com/bi) |
SiteIdentifier | For Bold BI Enterprise edition, it should be like site/site1 . For Bold BI Cloud, it should be empty string. |
DashboardId | Provide the dashboard id of the dashboard that you want to embed here. Please refer the following for getting the dashboard id. |
UserEmail | UserEmail of the Admin in your Bold BI, which will be used to get the dashboards list. |
EmbedSecret | You can get your EmbedSecret key from embed tab by enablingEnable embedauthentication in Administration page as mentioned in next step. |
You can get your Embed Secret key from the administrator setting section. Please refer to this link, for more details.
Then, run your Django application.
Click dashboard name in the dashboard list page. Clicked dashboards are opened in new window. In that window, you can get the dashboard id in URL link as shown in the following image.
After changing the above details in the sample, you can run the Django and the dashboard will be rendered.
(views.py/get_embed_details)
call with provided EmbedProperties values.
Learn more about authorize server here
NOTE: Remove the CSRF Token from the headers, if your application does not have CSRF middleware
(django.middleware.csrf.CsrfViewMiddleware)
.
In the above authorization, generated the SignatureUrl using the provided EmbedSecret key and validate embed details in Bold BI. Once details are validated, the dashboard starts to render.
In the models.py
, you can change the dashboard Id of the respective dashboard that you want to embed.