Search results

Bold BI Dashboards embedding in Ruby on Rails using Embedded SDK

We have created a Ruby on Rails application for achieving this embedding. Here, we could set the sever and dashboard details as embed details then the dashboard would be rendered after passing the authorization.

NOTE: The best way to get started would be reading the Getting Started section of the documentation to start using first. The Getting Started guide gives you enough information that you need to know before working on the sample.

How to run the sample

  1. Please download the Ruby on Rails App from here.

  2. You need to set your embed property details in the Index.html.erb and Authorizes_Controller.rb.
    Embed Properties Embed Properties In Authorize Controller

    ServerUrl Dashboard Server BI URL (ex: http://localhost:5000/bi/site/site1, http://demo.boldbi.com/bi/site/site1)
    DashboardId Get and set the item id of the dashboard to embed from BI server.
    Environment Your Bold BI application environment. (If Cloud, you should use `Cloud`, if Enterprise, you should use `Enterprise`)
    AuthorizationServer URL pointing to AuthorizeServer API file. We are running ruby sample in 3000 port(http://localhost:3000/api/v1/authorizes). Learn more about authorize server [here](/embedded-bi/javascript-based/authorize-server/)
    EmbedSecret You could get your EmbedSecret key from Embed tab by enabling `Enable embed authentication` in Administration page as mentioned in next step
    UserEmail UserEmail of the Admin in your Bold BI, which would be used to authorize the server
  1. You could get the item id of the dashboard from the BI server. Please refer to this link and the following screenshot.
    Get Dashboard Id

  2. You can get your Embed Secret key from the administrator setting section. Please refer to this link for more details.

  3. Then, run your Ruby on Rails sample.

How this sample works

  1. Based on the dashboardId provided in the embed properties, we would authorize the server URL by calling the GetEmbedDetails function by API(http://localhost:3000/api/v1/authorizes) call with the provided EmbedProperties values. Get Embed Details

  2. In the above authorization, we have generated SignatureUrl with the provided EmbedSecret key and validate the embed details in Bold BI. Once the details are validated, the dashboard starts to render in index.html.erb.

  3. In Index.html.erb, you can change the dashboard Id of the respective dashboard as you wish to embed. Set Dashboard Id