Tenant App: An Introduction
What is a Tenant App?
A Tenant App is an app cloned from a Master App with the same structure (Objects. Properties, relations etc.)
Before an application can be cloned and given access to the client, it must be made a Master app.
Tenant App Terminology
There are three kinds of apps in this scenario:
Regular App: This is a normal app that is a candidate for becoming a Master App.
Master App: When a Regular App is converted to a Master App, it becomes the blue print for the Tenant Apps. Its schema and relations are cloned to create Tenant Apps. The data of a Master App however, is not cloned. A Regular App can be converted to a Master App but the Master App can’t be reverted back to being a Regular App.
The owner of the Master App can update the schema of the Master App as and when desired. Once done, these updates could be propagated to all the Tenant Apps.
Tenant App: Owner of the Master App invites existing or new users to create a Tenant App, based on the structure of a Master App. The invitees create the Tenant App (using the Master App’s schema) at their end and then create/generate their own data. The clients can’t update the Tenant Apps, however they can receive updates to the app’s schema after the Master App has been updated.
Why do we need two apps?
The purpose of cloning a master app is to provide users with a ready-made structure that includes all the objects, fields, relationships, and workflows from the original app—without copying over the original data. This allows the user to maintain the same schema and functionality while keeping the data from the master app private and secure. Once cloned, the user can input or generate their own data that reflects their specific environment, use case, or business needs. This makes it easier to get started with a working system while tailoring the data to suit their unique context, without affecting or accessing the original app’s information.
Can the updates in the Master App’s structure also affect the tenant app?
Yes. When the schema of a Master app is updated—such as when new objects or properties are added, existing ones are changed, or some are deleted, these changes can be shared with all tenant apps that were cloned from it. However, this update is not automatically applied. Instead, the owner or admin of the Master app must manually choose to push the update to the tenant apps.
This manual update process gives the Master app owner full control over when and how structural changes are distributed. It prevents unintended disruptions in tenant apps by allowing the user to review and confirm updates before they are sent out. Once the update is pushed, the tenant app’s structure will be updated to reflect the changes in the Master app’s schema—while still preserving the client’s own data.
Lifecycle of a Tenant App
Before an application can be cloned and given access to the client, it must be made a Master app.
Before an application can be cloned and given access to the client, it must be made a Master app.