Deploy content from one tenant organization to one or more tenants
This is a premium feature. To enable it for your Sigma organization, contact your Sigma Account Executive.
You can deploy content from one tenant organization to one or more other tenant organizations if all tenants share a parent organization. For more details about what content gets deployed and considerations, see Deploy content to tenant organizations. For example use cases, see Deployment use cases and examples.
For instructions deploying content from a parent organization to tenant organizations, see Deploy content from a parent organization to one or more tenants.
Requirements
To deploy documents from one tenant to another, the following tenant organization requirements apply:
- All tenants must share the same parent organization.
- The source tenant must be granted capabilities to deploy to other tenants.
- Each tenant organization must have at least one connection configured. See Connect to data sources.
- If you plan to deploy content containing input tables, each tenant must have a connection to either Databricks or Snowflake with write access enabled.
To set up an organization to deploy documents to tenants, you must be assigned an account type with the following relevant permissions enabled:
- To create user attributes and assign tenants, the Manage user attributes permission must be enabled on your account type.
- To create source swap policies and define deployment policies, including adding documents, folders, and tenants, the Manage deployment policies feature permission must be enabled on your account type.
- To add documents to a deployment policy, you must be granted at least Can view access to the relevant workbooks and documents.
An admin in the parent organization can also perform these steps by opening a tenant organization. For instructions on administering a tenant organization from a parent organization, see Configure and manage a tenant organization.
Set up a tenant organization to deploy to other tenant organizations
In the parent organization, an admin can grant one or more tenant organizations the capability to deploy content to specific other tenant organizations.
-
In the Administration portal, go to Tenants.
-
Select a tenant that you want to be capable of deploying content to other tenants. For example, a
Testtenant.The tenant details open.
-
In the Tenant management section, click Deployment capabilities.
-
Click Add capability to add one or more tenant organizations that the selected tenant can deploy content to.
-
In the Add deployment targets modal, search for a tenant name and select one or more tenants. For example, select
Prodto allow theTesttenant to deploy content to theProdtenant. -
Select Add.
Users in the selected tenant can add any of the tenants in the Deployment capabilities list to a defined deployment policy. For steps, see Define a deployment policy.
Until a tenant is granted at least one deployment capability, Deployment policies does not appear in the Administration portal of that tenant. If a user in a tenant organization cannot find Deployment policies, confirm that the tenant has been granted a deployment capability and that the Manage deployment policies permission is enabled on their account type.
Revoke a deployment capability
In the parent organization, an admin can revoke a tenant’s capability to deploy to a specific target tenant.
- In the Administration portal, go to Tenants.
- Select the tenant whose capability you want to revoke.
- In the Tenant management section, click Deployment capabilities.
- Locate the target tenant, then in the More menu (
), select Revoke.
- To confirm, select Revoke.
After you revoke a capability, the target tenant is removed from every deployment policy on the source tenant and all attributes assignments for the target tenant are removed from the source tenant.
When you revoke a deployment capability for a tenant, that tenant is removed from any deployment policies and all documents deployed from the source tenant to the target tenant are also removed.
Prepare to deploy content to tenants
Preparing to deploy content to tenant organizations involves several steps. Depending on your Sigma Tenants architecture, perform the relevant steps:
- Configure data source swapping for each connection in the source organization.
- Map tenant connections to define which connection to swap to in each tenant.
- Define a deployment policy for each set of content that you want to deploy to a tenant as a workspace.
Every time you add a new tenant organization and configure a connection for the tenant, perform the following steps to start deploying content to the new tenant:
Configure data source swapping
For each connection in the source tenant that must be swapped to a connection in a target tenant, configure the following in the source tenant:
Every time a new connection is added to tenant organizations, repeat these steps to configure data source swapping for the new connection.
Map tenant connections
If you configure data source swapping, assign the user attribute to each tenant with the value of the relevant connection name or ID in each tenant.
The user attribute is used in the source swap policy to swap the data sources correctly for each tenant. See Assign the user attribute to one or more tenants.
Perform these steps for each tenant organization that you plan to deploy content to.
Configure a deployment policy
To deploy content to tenant organizations, do the following:
- Define a deployment policy.
- Add documents and folders to the deployment policy.
- Add tenants to the deployment policy.
Create a user attribute to manage tenant connections
When you deploy content from one tenant to other tenants, the data sources must be swapped to match the connections that exist in the other tenants.
For each connection in the source tenant that must be swapped to a connection in a target tenant, create a user attribute.
To create a user attribute, see Configure user attributes.
Configure a source swap policy
To manage swapping connections for deployed documents, configure a source swap policy for each connection in the source tenant that must be swapped to a connection in a target tenant:
-
In the Administration portal, go to Source swap policies.
-
Click Create policy, then choose Deployment.
-
For Name, enter a name for the policy. For example,
Swap Corporate Connection. -
For From, choose the relevant connection in the source tenant that you want to swap from. For example,
Corporate. -
For To, select the attribute that you created. For example,
corporate_connection.When deploying documents, Sigma swaps the connection selected in From to the connection identified by the assigned value in the user attribute.
-
(Optional) If you want to swap specific paths in the connection to a different path in a target tenant, click Add rule:
-
For From, select the path to swap in the connection in the source tenant.
-
For To, define the values to swap to for each target tenant. The path segments available to swap depend on your connection. For example, for a connection to Snowflake, you can swap the database, schema, and/or table. For each segment of the path, choose how to swap:
- Exact value: Specify the value to swap to. For example, if the schema name is the same for all databases that you plan to swap, choose Exact value and enter the schema name.
- User attribute: Specify a user attribute to use to specify the value to swap to. The assigned value of the user attribute is used when the swap is performed.
After adding a rule, click Save. You can add multiple rules.
For example, to swap a
FIN_OPSdatabase in the source tenantCorporateSnowflake connection to aHR_OPSdatabase in a tenant connection, where the schema and table structure is identical, do the following:- For From, choose
FIN_OPSas the database, then for schema, choose All paths. - For To, select Exact value as the database, then for Value, specify
HR_OPS.
If instead, you want to swap a
FIN_OPSdatabase in the source tenantCorporateSnowflake connection to aHR_OPSdatabase in one tenant connection and aSALES_OPSdatabase in another tenant connection, create a user attribute with a name likedatabase_swapand assign the attribute to each target tenant with the value of the database in the target tenant, then add a rule like the following:- For From, choose
FIN_OPSas the database, then for schema, choose All paths. - For To, select User attribute as the database, then choose the relevant user attribute:
database_swap.
If you want to swap a full object path, such as a table named
CLIENT_PURCHASESin theEXPENSESschema of theSALESdatabase in the source tenantCorporateSnowflake connection that is in a different location (e.g.,FINANCE.EXPENSE_TRACKING.PURCHASES) in all tenant connections, do the following:-
For From, choose
SALESas the database, then for schema, chooseEXPENSES. For Table, chooseCLIENT_PURCHASES. If all tables in the schema have the same name in all target tenant connections, choose All paths. -
For To:
- For Database select Exact value, then for Value, specify
FINANCEas the database. - For Schema, choose Exact value again, then specify a value of the schema in all target tenant connections:
EXPENSE_TRACKING. - If the table has the same name in the path, for Table, choose Exact value, then specify a value of the table in all tenant connections:
PURCHASES.
- For Database select Exact value, then for Value, specify
-
-
After configuring the source swap policy, click Create.
Assign the user attribute to one or more tenants
To map the connections to tenants and ensure that the source swap and deployment policies swap the sources of the content to tenants to the correct connections, assign the user attribute to specific target tenants.
Before you assign the user attribute, identify the connection name for the target tenants that you plan to deploy to.
If the connection name is the same as the source tenant, use that. If the connection name is different, contact a user in each relevant target tenant to request the connection name or ID for their tenant.
Assign the user attribute to one or more tenants:
- In the Administration portal, go to User attributes.
- Select the user attribute that you created. For example,
corporate_connection. - On the user attribute detail page, select Tenants Assigned.
- Click Assign Attribute to Tenants.
- In the Assign Attribute modal, search for and select one or more tenant names.
- For each tenant that you want to assign, specify an Assigned Value. The assigned value can be a connection name or a connection ID.
- Click Assign.
Define a deployment policy
For each set of documents that you want to deploy to one or more other tenants:
- Create a deployment policy. Each deployment policy creates a workspace in one or more target tenants.
- Add documents that you want to deploy to one or more target tenants.
- Add tenants to the deployment policy to deploy the documents to the specified tenants.
Create a deployment policy
To manage deploying content with other tenants, create a deployment policy:
-
In the Administration portal, go to Deployment policies.
-
Click Create deployment policy.
-
For Name, name the deployment policy. By default, the name of the deployment policy is the name of the workspace created in the tenant organization.
-
(Optional) Turn on the Use a different name in tenants toggle, then specify a different name to use as the workspace name created in the tenant organizations.
-
(Optional) By default, the published version of the documents added to the deployment policy is deployed. If you want to deploy a tagged version instead, for Version tag, choose a version tag.
After you create the deployment policy, you cannot change or remove the version tag. To change which tagged version of the documents in the policy get deployed, or to deploy multiple tagged versions of a document, create a new deployment policy.
-
(Optional) If the target tenant organizations use a different connection from the source tenant, turn on the Swap data sources toggle and do the following:
-
Select Add source swap policy, then choose a source swap policy.
You can add only one source swap policy per connection. If a source swap policy is unavailable to select, a source swap policy that swaps the same connection is already added to the deployment policy. Each connection can map to only one source in a deployment policy.
-
Repeat for each connection that must be swapped in the source tenant.
-
-
(Optional) If the documents being deployed contain input tables and you want to copy the data from the input tables to the deployed workbooks, turn on the Copy input table data to tenants toggle. For details about how data is copied, see How input table data is deployed.
-
(Optional) If you want to deploy dependencies to a separate workspace in each tenant, turn on the Separate dependency workspace toggle. For details, see How dependencies are deployed.
-
Click Create.
Your deployment policy is created. Select it to add documents, folders, and tenants.
Add documents and folders to the deployment policy
After creating a deployment policy, add documents or folders to deploy them to tenants:
-
In the Administration portal, go to Deployment policies
-
Locate and select the deployment policy to which you want to add documents or folders.
-
Click Add document or folder.
-
In the Add document or folder modal, search or browse to a workbook, report, data model, or folder to deploy to tenant organizations.
- To add a document, select the workbook, report, or data model and select Add document.
- To add a folder or workspace, open the folder or workspace, then select Add folder or Add workspace.
-
Repeat steps 3–4 to add more documents or folders.
Add tenants to the deployment policy
After creating the deployment policy, add tenants to share the documents with:
One tenant can be added to multiple deployment policies.
- In the Administration portal, go to Deployment policies.
- Locate and select the deployment policy to which you want to add tenants.
- Select the Deploy to tab.
- Click Add tenant.
- In the Add tenant modal, search for and select one or more tenants.
- Click Add.
After adding a tenant, a new workspace appears in the tenant organization. The workspace contains any documents deployed by the deployment policy. The workspace and all deployed documents should appear within a few minutes.
After setting up the deployment policy, manage deployed content.
Programmatically deploy content from one tenant to other tenants
If you want to use the Sigma REST API to manage deploying content from one tenant to other tenants, refer to the following steps and endpoints:
Before a tenant can deploy to other tenant organizations, an admin in the parent organization must add deployment capabilities (POST /v2/tenants/{tenantOrganizationId}/capabilities/deployments:batchAdd).
After a tenant is set up to deploy to other tenant organizations, a user in a tenant organization with API credentials, or an admin in the parent organization impersonating each tenant for API calls can programmatically perform the following steps:
-
For the source tenant and each target tenant, retrieve the connection ID and name information. Use List connections (
GET /v2/connections). -
In the source tenant organization, create a user attribute (
POST /v2/user-attributes). -
Assign the user attribute to target tenants with the value of the relevant connection ID or name for each tenant. Use Set a user attribute for tenants (
POST /v2/user-attributes/{userAttributeId}/tenants). -
Create a source swap policy with a type of
deployment. In theswapsportion of the request body, provide the user attribute as thetoConnectionparameter. -
In the source tenant organization, create a deployment policy (
POST /v2/deploymentPolicies). For thesourceSwapPoliciesparameter in the request body, provide one or more source swap policies. -
Add documents and folders to the deployment policy (
POST /v2/deploymentPolicies/{deploymentPolicyId}/files).To identify which documents to add, call the relevant endpoint and use the relevant IDs in the
inodeIdsoption:- List workbooks and use the
workbookIdin the response. - List reports and use the
reportIdin the response. - List data models and use the
dataModelIdin the response. - Retrieve folder IDs with the List files (
GET /v2/files) endpoint and use the relevantinodeIdin the response.
You can provide up to 100 IDs per request.
- List workbooks and use the
-
Add tenants to the deployment policy (
POST /v2/deploymentPolicies/{deploymentPolicyId}/tenants).To determine which tenants the source tenant is capable of deploying to, call the List deployable tenant organizations (
GET /v2/deploymentPolicies/tenants) endpoint.
You cannot retrieve the status of a deployment through the REST API. To review the status, use the Sigma UI. See Review deployment status and errors.

