syntaxis/config/api/features/multi_tenant.toml.template
Jesús Pérez 9cef9b8d57 refactor: consolidate configuration directories
Merge _configs/ into config/ for single configuration directory.
Update all path references.

Changes:
- Move _configs/* to config/
- Update .gitignore for new patterns
- No code references to _configs/ found

Impact: -1 root directory (layout_conventions.md compliance)
2025-12-26 18:36:23 +00:00

39 lines
1.4 KiB
Plaintext

# 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