Skip to main content
Version: 9.3

Dashboard Builder Widget (Legacy)

When embedded in an application, the Dashboard Builder widget enables users to modify existing dashboards or add new dashboards. Dashboards can contain reports or other content.

Embeddable Script

<!-- Tag -->
<qrvey-builders settings="config"></qrvey-builders>

<!-- Config -->
<script>
var config = {
apiKey: "<API_KEY>",
domain: "<DOMAIN>",
userId: "<USER_ID>",
appId: "<APP_ID>"
};
</script>

<!-- Launcher -->
<script type="text/javascript" src="https://<WIDGETS_URL>/widgets-launcher/app.js"></script>

Configuration Object

PropertyValueRequiredDescription
apiKeyStringYes, if qvToken is not providedYour organization’s unique API key required to access the Qrvey platform.
qvTokenStringYes, if apiKey is not providedEncrypted token used for secure authentication.
appIdStringYesID of the Qrvey application that contains the asset you want to embed.
domainStringYesThe base URL of your Qrvey instance.
userIdStringYesID of the Qrvey User that owns the application being embedded.
clientidStringNoUnique identifier for the tenant end user. Required for using the End User Personalization and Download Manager features. The clientid must be set to a unique value for each tenant end user.
dashboardIdStringNoID of a specific dashboard to open to. If omitted, the end user is taken to the "dashboard selection" page. In practice, you should always send the user to a specific dashboard.
timezoneObjectNoOverrides the timezone setting in Qrvey Admin Center. For more information, see Configuring Time Zone Settings.
privatePagesBooleanNoPre-defines the privacy state of new dashboards. If true, every new dashboard will be private (and unavailable to unauthenticated users). Defaults to false, and therefore dashboards are published in a public state.
doNotAllowArray(String)NoHides or blocks certain features. Currently only supports: CREATE_CHART which hides the Create Chart button.
Example: ["CREATE_CHART"]
stylesObjectNoAllows users to modify part of the look and feel of the widget. Every property supports a string (hexadecimal color) or the name of a color. For details, see The Styles Object below.
userFiltersArray(Object)NoCollection of custom filters that the system will apply to the visualized data. For more information, see Working With Filters in Embedded Scenarios.
customTokensObjectNoSets custom threshold values in Bullet and Dial charts. For more information, see Using Custom Tokens.
authenticatedSession.emailStringNoThe email property in the authenticatedSession object specifies the email address to associate with the widget. If an address is not specified, exports are sent to the email address associated with the user ID.
themeIdStringNoTheme ID to use in the component. For more information, see Accessing a Theme Programmatically.
fitPanelButtonBooleanNoIf false, hides the Fit to Panel button on charts and panels. Defaults to true.
featurePermissionObjectNoConfigure which features are available in the widget. For more information, see The Feature Permission Object.

Styles

PropertyRequiredDescription
main_colorNoSets main color using a hex color value.
main_text_colorNoSets main text color using a hex color value.
secondary_colorNoSets secondary color using a hex color value.
icon_colorNoSets icon color using a hex color value.
tab_bar_colorNoSets tab bar using a hex color value.
tab_font_colorNoSets tab font color using a hex color value.
error_colorNoSets error color using a hex color value.

Feature Permission

The following table describes the properties of the featurePermission object.

PropertyValueRequiredDescription
liteVersionBooleanNoHides all elements that are managed by feature permissions if true. Defaults to false. For more details, check the example given below this table.
navigationObjectNoDefines navigation-related features that can be hidden.
navigation.hideNavigationTabNoBooleanHides the entry method to the navigation tab in the top bar of the widget if true. Defaults to false.
userManagementObjectNoDefines user management related features that can be hidden.
userManagement.hideUserManagementTabBooleanNoHides the entry method to the user management tab in the top bar of the widget if true. Defaults to false.
pagesAndApplicationObjectNoDefine pages and application-related features that can be hidden.
pagesAndApplication.hidePublishAppButtonBooleanNoHides button “Unpublish / publish" application button if true. Defaults to false.
pagesAndApplication.hidePublishPageButtonBooleanNoHides “publish page” button if true. Defaults to false.
pagesAndApplication.hideCopyPageLinkBooleanNoHides the UI interfaces where the user can get the link of a page if true. Defaults to false.
pagesAndApplication.hideLaunchButtonBooleanNoHides the button to access the page view if true. Defaults to false.
pagesAndApplication.hideCreateManagePagesBooleanNoHides all options to create pages if true. Defaults to false.
pagesAndApplication.hidePageStatusBooleanNoHides Text status if true. Defaults to false.
pagesAndApplication.hidePagesBarBooleanNoHide bottom bar pages if true. Defaults to false.
pagesAndApplication.hideThreeDotMenuBooleanNoWhen true, hides the three-dot menu, including in edit mode. Defaults to false.
pagesAndApplication.hideCustomDatasetBooleanNoHide Custom Dataset option. Defaults to false. Available starting with version 9.2.2.
canvasObjectNoDefines canvas related features that can be hidden.
canvas.hideManageCanvasBooleanNoIf true, hides the following options: Grid, Responsive View, Discard Changes. Defaults to false.
downloadsObjectNoContains params to control display of the download and schedule exports feature.
downloads.hideGeneralDownloadBooleanNoDisplays the download access points in the widget if true. Defaults to false.
downloads.hideScheduleBooleanNoHides the scheduling export option if true. Defaults to true.

To hide all features, set the liteVersion property to true. For example:

const widgetConfig = {
domain: "DOMAIN",
appid: "APP_ID",
userid: "USER_ID",
featurePermission: {
liteVersion: true,
},
}

Tip: To hide most features, set the liteVersion property to true and list the exceptions you want to show to false. For example:

const widgetConfig = {
domain: "DOMAIN",
appid: "APP_ID",
userid: "USER_ID",
featurePermission: {
liteVersion: true,
userManagement:{
hideUserManagementTab: false
}
},
}

Events

The widget supports custom events to update keys of the configuration, you can dispatch an event using your own user interface to modify the behavior.

  • atApplyUserFilters() — Enables changes to the userFilters property.

    window.dispatchEvent(new CustomEvent('atApplyUserFilters', {detail: userFilters}));