Now that you've successfully embedded a production-ready Luzmo dashboard, it's time to ensure that your embedding setup adheres to our best practices! First we'll give some tips on the setup of the Collections, afterwards we list the important backend and frontend topics related to embedded dashboards!
If you haven't gone through our 'Ready-for-production' Data Checklist yet for your dataset(s), or our 'Ready-for-production' Dashboard Checklist for your dashboard(s), we highly recommend to do so first to ensure they can seamlessly embedded into your application!
You can use Collections to easily create and maintain collections for different customers, departments, use-cases, etc. When using Collections to provide your requested embed tokens access to dashboards, make sure that all dashboards and underlying datasets are added to the Collection(s)!
You can do this when creating a new Collection (as shown in this Academy article) or by adapting an existing Collection.
There are two ways to specify your parameter/static filters
Specify them on the dataset in the Collections (e.g. from within the Collections modal): the filters will be applied to queries from dashboards viewed within the context of the Collections. This is neatly explained in this Academy article. All multi-tenant filters should be configured this way, as that ensures that all queries on that dataset are securely scoped towards the embed token and (default) embed filters configured!
Specify them on the dashboard from within the dashboard editor: the filters will be applied solely on the specific dashboard itself. This Academy article shows you how to achieve that! For security purposes, you should not specify multitenant parameterized filters on the dashboard, as e.g. designer embed tokens could modify or create new dashboards that would allow them to query the dataset without the filters.
We recommend to specify a default parameter value pointing to no or demo data, that prevents exposing client-specific data if the parameter would not be overridden in the authorization request.
This enables you to make changes to these dashboards without these changes being represented in the embedded dashboards. Once you mark your new version as published it will automatically be used in the embedded dashboard. More information on dashboard versioning can be found in This Academy article.
All SDKs are listed here in the Developer documentation.
Your API key and token can be seen as your username and password to Luzmo's API and your account. You should never expose these on the client side!
The required properties are listed here in the Developer documentation.
The username property is used to uniquely identify a Monthly Active Viewer (MAV) or Monthly Active Designer (MAD) for your Organization. It is thus important that the specified username is unique and immutable for a specific end-user (e.g. the primary key for that user).
The response of the authorization request contains the specified metadata and expiry settings which you might not want to expose to your end user.
Do not expose your API key and token in your frontend code!
All frontend components are listed here in the Developer documentation.
If not, the end user is able to view the dashboard without authentication and this might be a security issue if undesired.
The Luzmo UI will show a "globe" symbol next to datasets and dashboards that are publicly accessible without an authorization token. You can also verify this by not specifying an authorization key and token when embedding the dashboard in your frontend and opening your application in an incognito browser (to avoid your logged-in Luzmo user to grant access to the dashboard).
If your dashboard is not publicly shared, you’ll see an error message being displayed instead of the dashboard itself.
If your dashboard is publicly shared but the underlying dataset(s) are not, you will see “No Access” errors being displayed on each item querying the dataset(s).
If your dashboard loads fine in e.g. an incognito window, Both your dashboard as well as your datasets have been shared publicly (which might be undesirable)!
You can make the dashboard/dataset resources private by removing “Public” or “Via shareable link” in the share modal in our application, this Academy article shows you where to find that modal!
The dashboard components resize (and switch between screen modes) automatically based on the available width.
More information on this method and some use-cases can be found in this Academy article.
Most of the options are listed at the end of this Academy article. Next to that, you can find more information on the possibilities in the “Embed” Developer docs chapter or in the README file of the specific frontend component you’re using.