Managing user-created dashboards
Introduction
When your embed users create personal and shared dashboards through Embedded Analytics, these User-Generated Dashboards (UGDs) are automatically stored in your Development environment as code files. This guide helps administrators understand, monitor, and manage these dashboards effectively.
Prerequisites
Git Version Control Setup
UGD creation requires explicit Git integration to be enabled because all user-generated dashboards must be persisted in your Git repository.
Required Git Configuration:
- Enable explicit Git integration in Holistics
- If you're using external Git, please ensure:
- Git repository with write access
- Disable protected branch restrictions for the branch where UGDs are stored
Understanding UGD Storage
Folder Structure Overview
UGDs are organized in a specific hierarchy within your AML codebase:
📦 AML Studio
┗ 📂 modules/
┗ 📂 embedding/
┣ 📂 org_${embed_org_id}/
┃ ┣ 📂 shared_workspace/
┃ ┃ ┗ 📜 ${uname_with_postfix}.page.aml
┃ ┗ 📂 personal_workspace/
┃ ┗ 📂 user_${embed_user_id}/
┃ ┗ 📜 ${uname_with_postfix}.page.aml
┗ 📂 org_${another_org_id}/
┣ 📂 shared_workspace/
┗ 📂 personal_workspace/
File Organization Details
Organization's Shared Workspace:
- Path:
modules/embedding/org_${org_id}/shared_workspace/
- Contains: Dashboards in the organization org_id's shared workspace
- Folder is only created when users with "editor" role create dashboards in the organization's shared workspace
Personal Workspace:
- Path:
modules/embedding/org_${org_id}/personal_workspace/user_${user_id}/
- Contains: Personal dashboards of user_id in organization org_id
- Folder is only created when personal workspace is enabled and users actually create personal dashboards
Default Organization:
When embed_org_id
is empty, personal dashboards will be stored in modules/embedding/org_*DEFAULT*ORG_/personal_workspace/user_${user_id}/
. This special organization only supports personal workspace (no shared workspace available).
Important Storage Principle: Users belong to organizations, so personal workspace folders are nested within the organization structure. This ensures proper data isolation between different organizations. For detailed security architecture explanation, see Getting Started - Workspace Security Isolation.
Dashboard File Naming Conventions
- Format:
${uname_with_postfix}.page.aml
- The
uname_with_postfix
is automatically generated from the dashboard title & a unique string to ensure the file/object name is unique
Viewing and Managing UGDs
UGD Management Guidelines
UGD Storage Purpose:
- Code storage for dependency management and refactoring
- Admin visibility when modeling changes breaks UGDs
- UGD ownership/metadata stored in database, not files
What Admins Can Do:
- ✅ View and edit file contents: Dashboard titles, descriptions, settings, visualizations, layouts
- ✅ Update references: Fix dataset/field references when modeling changes
What Admins Cannot Do:
- ❌ File operations: Create, rename, move, or delete UGD files in UI
- ❌ Structure changes: Modify folder organization or file names
- ❌ Manual creation: New files won't appear in the user workspace