# Multi-Tenant Feature Configuration # # This configuration controls multi-tenant behavior, allowing the server to serve # multiple isolated tenants from the same database. # This file is loaded ONLY if [server.features.multi_tenant].enabled = true in the main config. # (The enabled flag is set in the main lifecycle-api-config.toml file) [multi_tenant] # Tenant identification method # "header": Read tenant_id from HTTP header (e.g., X-Tenant-ID) # "path": Read tenant_id from URL path (e.g., /api/v1/tenant/{tenant_id}/...) # "subdomain": Read tenant_id from subdomain (e.g., tenant1.example.com) tenant_id_source = "header" # Header name for tenant identification (if tenant_id_source = "header") tenant_header_name = "X-Tenant-ID" # Allow requests without tenant_id # true: Requests without tenant_id are allowed (useful for public endpoints) # false: All requests must include valid tenant_id require_tenant_id = true # Isolation level for multi-tenant data # "row": Row-level isolation (each row tagged with tenant_id) # "schema": Schema-level isolation (each tenant has separate schema) # "database": Database-level isolation (each tenant has separate database) isolation_level = "row" # Enable tenant-specific database schemas # When true, each tenant can have custom database schema modifications allow_schema_customization = false # Maximum number of tenants the system can handle max_tenants = 1000 # Log tenant context in all logs include_tenant_in_logs = true