Feature and Dashboard Chrome Visibility
Control which dashboard features and navigation controls are visible to your users
Overview
When embedding dashboards and the self-service experience, you can control which UI features and dashboard chrome are visible to your end users. Pass a config object in the token request to show or hide elements such as the SQL editor, AI assistant, Dashboard Hub navigation, sharing controls, or group management.
All features are enabled by default. You only need to pass config when you want to disable something.
Available Options
| Option | Default | Description |
|---|---|---|
showAdvancedMode | true | Controls the Advanced Mode toggle in the visual editor. When enabled, users can switch to the SQL editor to write and modify queries directly. |
showInfoTab | true | Controls the Info tab in the visual editor. The Info tab displays query execution details and diagnostics. |
showDashboardAssistant | true | Controls the AI-powered dashboard assistant panel. When enabled, users can interact with the assistant to generate charts and get insights. |
showQueryDebugTools | true | Controls the query debug tools in the Info tab. When enabled, users can inspect query request/response payloads, card configuration, data source, columns, and dashboard filters for troubleshooting. |
showDashboardHub | true | Controls the Dashboard Hub home button. Set it to false when an embedded user should remain within the dashboard selected by your application. |
showDashboardSharing | true | Controls the dashboard Share button. Existing dashboard sharing permissions still apply when this option is visible. |
showGroupManagement | true | Controls the Manage Groups entry under More options. Existing organization and tenant-role permissions still apply when this option is visible. |
Visibility is not authorization
These settings only remove entry points from the embedded interface. Setting
an option to true does not grant a permission the user does not already
have, and server-side authorization continues to protect sharing and group
management APIs. Do not use UI visibility settings as a security boundary.
Setting Feature Visibility
Pass the config object in your token request body. This works for both dashboard tokens and project tokens.
Dashboard Token
const requestBody = {
dashboardId: DASHBOARD_ID,
dashboardSecret: DASHBOARD_SECRET,
config: {
showAdvancedMode: false,
showDashboardAssistant: false,
showQueryDebugTools: false,
},
};
const response = await fetch(TOKEN_URL, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(requestBody),
});Project Token
const requestBody = {
type: 'project',
projectId: PROJECT_ID,
projectSecret: PROJECT_SECRET,
endUserId: 'user_123',
config: {
showAdvancedMode: false,
showInfoTab: false,
showDashboardHub: false,
showDashboardSharing: false,
showGroupManagement: false,
},
};
const response = await fetch(TOKEN_URL, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify(requestBody),
});Security Note
The token generation function must be run on the server side. Do not expose
DASHBOARD_SECRET or PROJECT_SECRET in client-side code in production.
Default Behavior
All Features Enabled by Default
You only need to pass config when you want to explicitly disable a feature. Setting a flag to false hides it; omitting it or setting it to true keeps it visible.
Keep Users Within an Application-Selected Dashboard
For a focused embedded experience, issue a project or dashboard token with the three dashboard chrome settings disabled:
const tokenRequest = {
type: 'project',
projectId: PROJECT_ID,
projectSecret: PROJECT_SECRET,
endUserId: 'user_123',
targetDashboardId: DASHBOARD_ID,
config: {
showDashboardHub: false,
showDashboardSharing: false,
showGroupManagement: false,
},
};This hides the Dashboard Hub button, Share button, and Manage Groups menu item for that token. Other More options actions, such as Export and Calendar Preferences, remain available according to their own feature and permission rules.
Related
- Token API -- Full API reference for token generation
- iFrame embedding -- Embed a dashboard without an SDK dependency
- React embedding -- Embed dashboards with React components