Overview

Tenancy management ensures each user only sees their relevant data through configurable filters. A tenant represents a group of users sharing the same data access permissions. Tenants can be registered via the Backend Setup endpoint or created manually through the interface.

Filtering Types

Schema-Level Filtering

Isolates tenants to separate database schemas/databases.
  • When to use: Complete data separation, compliance requirements, performance isolation
  • Benefits: Maximum security, database-level isolation
  • Example: customer_schema_1, tenant_db_123

Column Pre-Filtering

Filters data using column values within shared schemas.
  • When to use: Shared database with tenant identifiers, flexible multi-column filtering
  • Benefits: Granular control, multiple filter combinations
  • Example: customer_id = 'user_123' AND region = 'us-east'

Creating Tenants

Navigate to HomeDeployRegistered TenantsCreate tenant

Required Fields

Tenant Display Name
  • Human-readable identifier
  • Example: Customer ABC Corp
Filtering (Choose one or both)
  • Schema Pre-filter: Database/schema name for schema-level filtering
  • Column Pre-filters: Column name + value pairs for row-level filtering
    • Multiple filters supported (AND logic)
    • Required if no schema pre-filter specified

Optional Configuration

You can register a tenant by following the Backend Setup instructions. Tenant Editing Permissions
  • Add/Remove/Create/Edit Charts
  • Add Filters
  • AI Insights
Custom Metadata
  • Key-value pairs for additional tenant information
  • Example: billing_tier: premium, region: us-east
If you have completed the Backend Setup, you can view the dashboard as one of your customers.

Validation Rules

  • Tenant name required
  • Either schema OR Column Pre-Filtering must be configured
  • Empty filter names/keys not allowed
  • Warning: No filtering = admin access to all data

Preview Mode

Test tenant configurations by previewing dashboards as specific tenants.
Preview tenant selection

Sample Dataset Examples

Column Pre-Filtering:
  • Name: Customer-1
  • Column Pre-Filter: CustomerID = User_1
Schema Filtering:
  • Name: Schema-Customer
  • Schema: customer_schema_1
Tenant creation form

Best Practices

  • Index Column Pre-Filter columns for performance
  • Grant minimal permissions required
  • Validate all tenant configurations to prevent admin access
  • Schema filtering generally performs better than complex Column Pre-Filtering
  • Regular audits of tenant permissions and access