Skip to content
Packages Examples Agents Blog Get started

Config section: tenancy
Env prefix: ORI_TENANCY__
Config model: TenancyConfig

KeyTypeDefaultEnv varDescription
resolutionResolutionConfigORI_TENANCY__RESOLUTION__*Resolver chain configuration
lifecycleLifecycleConfigORI_TENANCY__LIFECYCLE__*Lifecycle and isolation
overridesConfigOverridesConfigORI_TENANCY__OVERRIDES__*Per-tenant config overrides
integrationIntegrationConfigORI_TENANCY__INTEGRATION__*Cross-package integration toggles
KeyTypeDefaultEnv varDescription
resolverslist[str]["jwt_claim", "header", "subdomain", "path"]ORI_TENANCY__RESOLUTION__RESOLVERSOrdered resolver names
header_namestr"x-tenant-id"ORI_TENANCY__RESOLUTION__HEADER_NAMEHeader name for HeaderTenantResolver
subdomain_patternstr | NoneNoneORI_TENANCY__RESOLUTION__SUBDOMAIN_PATTERNBase domain for subdomain extraction
path_patternstr | None"/tenants/{tenant_id}/"ORI_TENANCY__RESOLUTION__PATH_PATTERNPath pattern for PathTenantResolver
jwt_claim_keystr"tenant_id"ORI_TENANCY__RESOLUTION__JWT_CLAIM_KEYJWT claim key
validator_cache_ttlint300ORI_TENANCY__RESOLUTION__VALIDATOR_CACHE_TTLCache TTL for validated tenants (seconds)
KeyTypeDefaultEnv varDescription
isolation_strategystr"row_level"ORI_TENANCY__LIFECYCLE__ISOLATION_STRATEGYName of isolation strategy
auto_provision_isolationboolTrueORI_TENANCY__LIFECYCLE__AUTO_PROVISION_ISOLATIONAuto-provision on tenant creation
KeyTypeDefaultEnv varDescription
cache_ttlint60ORI_TENANCY__OVERRIDES__CACHE_TTLCache TTL for per-tenant config (seconds)
KeyTypeDefaultEnv varDescription
cache_key_prefixboolTrueORI_TENANCY__INTEGRATION__CACHE_KEY_PREFIXPrefix cache keys with tenant ID
sql_context_bridgeboolTrueORI_TENANCY__INTEGRATION__SQL_CONTEXT_BRIDGESync tenant context into SQL sessions
tenancy:
resolution:
resolvers:
- header
- jwt_claim
header_name: x-tenant-id
jwt_claim_key: tenant_id
lifecycle:
isolation_strategy: row_level
auto_provision_isolation: true
overrides:
cache_ttl: 120
integration:
cache_key_prefix: true
sql_context_bridge: true

Env var override form:

Terminal window
export ORI_TENANCY__RESOLUTION__RESOLVERS='["header"]'
export ORI_TENANCY__LIFECYCLE__ISOLATION_STRATEGY=schema