Tenant users can duplicate projects within their own tenant.
If you are using a version prior to Strategy (September 2026), cross-environment project duplication is not supported for tenant users. If you are using Strategy (September 2026) or later, cross environment project duplication is supported for tenant administrators.
Key behaviors:
Starting in Strategy (September 2026), tenant administrators can duplicate projects across environments. See the following information on the current behavior for project backup and restoration when migrating project data between source and target environments. Administrators can use the following information to understand which objects are included in a project backup, how object ownership affects restore behavior, and how conflicts are resolved during import.
Note: In the following sections, source refers to the environment and tenant from which the backup is created. Target refers to the environment into which the backup is imported. Tenant objects are owned by a specific tenant and Global objects are shared at the environment-level.
When a tenant administrator creates a project backup from Tenant A, the export process applies the following object-scope rules:
Object Category | Backup Behavior |
Tenant A objects | Exported according to the conflict rule selected for the backup. |
Tenant A entity | Always exported as part of the project backup |
Tenant B objects | Never exported from a Tenant A backup. |
Global objects | Included as references. During restoration, the system is configured to reuse the existing global object in the target environment, when applicable. |
Global users | Never exported as standalone objects. |
Global user groups, Rule: Related | Directly related groups and their parent groups are exported. |
Global user groups, Rule: All | Parent groups are exported. |
Global user groups, | No additional groups are added automatically beyond the applicable group-scope rule. |
Tenant and global folders, property sets, and links | Fully exported. |
When a backup is imported into the target environment, object ID conflicts are resolved according to object ownership and whether an equivalent object already exists in the target.
Source Object | Target Condition | Restore Result |
Global object | The object does not exist in the target environment. | A new global object is created in the target environment. |
Global object | The object already exists in the target environment. | The existing global object is reused, regardless of the selected conflict rule. |
Tenant object | The same object ID belongs to a global object or to an object owned by a different tenant. | The import fails with a tenant mismatch error. |
Note: A tenant mismatch error is a blocking restore failure. It occurs when a tenant-owned source object conflicts by ID with a global object or with an object owned by another tenant in the target environment. Administrators should review ownership and object identity before retrying the import.
When Match by Name is enabled, the restore results depends on the administrator context and whether the source and target objects have compatible ownership scopes.
A global administrator can manage objects across tenants. The following behavior applies when restoring with a global administrator.
Source Object | Target Object with the Same Name | Restore Result |
Global | Global | The objects are matched by name. |
Tenant A | Tenant A | The objects are matched by name. |
Global | The objects are not treated as a name match. Matching falls back to object ID. As a result, a new global object with the same name may be created if required by the restore operation. | |
Tenant B | The objects are not treated as a name match. Matching falls back to the object ID. As a result, a new Tenant A objects may be created with the same name as the source object. |
Global administrators can tolerate cross-tenant object-name conflicts. For those conflicts, the system does not reuse a target object solely because it has the same name. Instead, it falls back to the matching object ID.
A tenant administrator operates within a specific tenant. The following behavior applies when restoring with Tenant Administrator privileges.
Source Object | Target Object with the Same Name | Restore Result |
Global | Global | The objects are matched by name. |
Tenant A | Tenant A | The objects are matched by name. |
Global | The import fails because the tenant object name conflicts with a global object name. | |
Tenant B | The objects are not treated as a name match. Matching falls back to the object ID. As a result, a new Tenant A object may be created with the same name as the source object. |
Note: For tenant administrators, a name conflict between a Tenant A object and a global object block import condition. Resolve the naming conflict or perform the restore with an administrator context that supports the required cross-scope handling.
User matching is controlled by two settings:
OM/CrossTenantDuplicateUsername feature flagThe current behavior is the same for global administrators and tenant administrators.
Feature Flag State | Conflicting User Scope | Restore Result |
OFF | Tenant A, Global, or Tenant B | A random GUID is appended to the login name. |
ON | Tenant A | A random GUID is appended to the login name. |
Global or Tenant B | The original login is retained. |
Feature Flag State | Conflict User Scope | Restore Result |
OFF | Tenant A | The user is matched by login name. |
Global or Tenant B | The import fails because the matching login belongs to a global user or to a user from another tenant. | |
ON | Tenant A | The user is matched by login name. |
Global or Tenant B | The user is not treated as a login-name match. Matching falls back to user ID, so the users are treated as distinct. |
Note: When Match by Login is enabled and the feature flag is OFF, a login conflict with a global user or a user from another tenant causes the import to fail. Enable the feature flag or resolve the conflicting login before retrying the restore.
Tenant administrators can migrate objects within their own tenant.
Global administrators have broader migration capabilities:
If the package contains only project objects from Tenant A, those objects can be successfully migrated to Tenant B.
If the package contains project objects from Tenant A along with global configuration objects and the target environment does not have the same configuration objects assigned to other tenants, the migration succeeds. Project objects are assigned to Tenant B and configuration objects will remain global.
If the package contains both project objects and tenant-scoped configuration objects from Tenant A, importing to Tenant B is not supported. Changing a configuration object's tenant association during migration is not permitted.
Note: Package migration never changes the tenant association of configuration objects. Additionally, cross-tenant references (for example, a project object in Tenant A that references a configuration in Tenant B) are not allowed and are flagged during migration.
Multi-tenancy enforces strict content isolation in search. See the following search information:
In a multi-tenancy-enabled environment, access to environment-level operations is governed by role-based enforcement:
Note: Tenant administrators are permitted to configure Subscription Delivery Settings if they have the correct privileges.
Administrators can set limits to the number of users and projects per tenant to maintain resource governance.
Use the following Library Admin REST API calls to retrieve and update governing settings:
GET /api/multitenant/tenant/{tenantId}/settings: Retrieve the governing settings for a specific tenant.
PATCH /api/multitenant/tenant/{tenantId}/settings: Update the governing settings for a specific tenant.
In a multi-tenancy-enabled environment, each monitored item is associated with a tenant so tenant administrators can only view the activity within their own tenant. Global administrators view activity across all tenants. The tenant of a monitored item is determined as follows:
In a multi-tenancy-enabled environment, if a user needs to be imported or synced during JWT/Trust authentication login, see the following knowledge base article for more information, Import Users During JWT or Trust Login.
If a tenant user wants to log in to the environment using the REST API api/auth/login, set the correct applicationID parameter. The applicationID must belong to an application within the same tenant or it can be left as the default value.
In a multi-tenancy enabled environment, change journal access is governed by tenant-scoped visibility and permission controls.
Global administrators have full access to the change journal, including the ability to browse and purge entries for all objects and projects across all tenants.
Tenant administrators have scoped access within their own tenant:
Tenant partitioning enforces strict tenant isolation boundaries. The following errors may occur when an operation violates these boundaries. Use the following troubleshooting information to avoid unsupported operations and resolve issues.
Cross-tenant reference violation occurs when an operation would create a dependency between objects that belong to different tenants, or between a global object and a tenant-scoped object. This action is blocked to preserve tenant isolation.
Common Scenarios:
DB Instance object DBInstance_Global (ID: 948A5C7F4B4DC3FCF0FD4885576ECF9E) cannot use DB Connection object DBConnection_TenantA (ID: DDF6918B443FF3D69BFDE7BF8F575B2D) due to tenant conflicts.Modify a reference relationship in the following scenarios:
Add a Tenant B user to a Tenant A user group.
Configure a global database role to use a tenant-scoped database connection.
See the following example error: DB Instance object DBInstance_Global (ID: 948A5C7F4B4DC3FCF0FD4885576ECF9E) cannot use DB Connection object DBConnection_TenantB (ID: DDF6918B443FF3D69BFDE7BF8F575B2D) due to tenant conflicts.
The object DBInstance_TenantA with ID '993932B14D29FC43EBE48DB150437E97' and type 'DB Instance' is under an unreferenceable tenant.
Exceptions
Tenant conflicts during migration occur when an operation would change an object's tenant association during migration, which is not permitted. If the same object exists in both the source package and the target environment but belongs to different tenants, the migration is rejected.
Common Scenarios:
A tenant conflict occurs for the object User with ID 'D06A23F1493886DE189FA48C596BC91C' and type 'User'.
Project Duplication Error: Tenant Mismatch: Object 'rest'(ID: 0F3A1B784E457E442AA1DBB564DA57A7) Incoming Tenant: 00000000000000000000000000000000.