Embedding
The Embed package in Pyramid allows BI developers to embed visuals, reports and dashboards from Discover or Present into any website.
The embedded visual is live, dynamic, and any changes made to the original visualization in Pyramid will be reflected in the embedded visual. Core interactivity functions can be accessed from the embedded visual and the content can leverage the data security and functionality found in the main application itself.
NOTE: Embedding is only available to customers who have purchased the separate 'Embed' option.
Embedding Techniques
Embedding Flow
Embedding in general as 2 distinct phases: Authentication and Content.
- Authentication requires the session to authenticate to Pyramid to ensure only authorized access to content is allowed.
- Content involves retrieving the relevant content from Pyramid for display in the hosting application.
The exact process needed to achieve these 2 steps is up to the host technology - and there are any number of methods that will work.
- For more information and examples of how these 2 steps may be enacted, see Embed Flow.
Embedding APIs
There are 2 API avenues for embedding:
- Embed APIs: using a more structured API framework, you can embed content using a clean object model with methods and properties in one of the Embed API libraries. This approach also comes with React and Angular components that can be deployed using NPM instead of a standard JavaScript library. Click here for more details.
- Raw Embed: using the older core "embed.js" file, you can embed content using a combination of the functions in this file and the REST API framework. Click here for more details and to see this approach in action.
Note: The Embed API approach is the NEWER approach and recommended for all development
Embed Examples and Demos
Pyramid has published some example embed projects on GitHub.
- Click here to see an example of embedding using JavaScript (plain and React)
Troubleshooting Embeds
There are times when embedded content does not materialize as expected or has erratic behavior. This is mostly due to the effect of other elements on the host page clashing with Pyramid. See the troubleshooting guide for more information.