Access model
Darpan access is session-based. Users sign in, receive a session, and operate within the active company or active tenant available to them. Permissions are evaluated per active context, so a user can have different capabilities in different companies or tenants. Tenant permission membership is separate from tenant identity. A user’s permission level for a given tenant comes from membership records, not from a single global role applied everywhere.Roles
Before you start
Confirm:- You are signed in as a Super Admin.
- The user’s identifier is known.
- You know which active company or active tenant the user should access.
- You know the role to assign: Super Admin, Tenant Admin, or Tenant User.
Steps
User creation, access grants, and role assignment are not available in the PWA or Ask Darpan. A Super Admin performs them in the server-rendered admin screens under
/apps/darpan, which are restricted to Super Admins. The sequence reflects what a Super Admin does: create the user, grant access, assign the role.- As a Super Admin, open the server-rendered admin screens under
/apps/darpan. - Create the user record and set the user’s identifier.
- Grant access to the intended active company or active tenant.
- Assign the role: Super Admin, Tenant Admin, or Tenant User.
- Confirm the user can sign in and that the active tenant context is correct after first sign-in.
Expected result
The user can sign in and operate within the active company or active tenant you granted. A Tenant Admin can manage that tenant’s connections, schemas, saved runs, automations, and results. A Tenant User can view data, upload files, run reconciliation, and review output — but cannot edit tenant setup records.Changing access
To change a user’s role or remove access, follow the same Super Admin path. Permissions are evaluated per active context, so removing access from one tenant does not affect the user’s access to other tenants they belong to.Endpoint access per source configuration
Roles govern what a person may do. Endpoint access governs something different: which endpoints of a connected system a given source configuration is allowed to read at all. A connected system usually exposes several endpoints — orders, returns, and so on. A source configuration holds credentials that may legitimately reach only some of them, and a credential that can read more than the reconciliation needs is a wider blast radius than the job requires. Each source configuration therefore carries an explicit list of enabled endpoints:- The catalog of available endpoints comes from the connector registry, so it reflects what the system actually offers rather than a hand-maintained list.
- The enablement is per configuration. Two configurations for the same system can enable different endpoints.
- Endpoints left out of the list are disabled, including endpoints added to the registry later. A new endpoint is never silently readable by an existing configuration — someone has to enable it.
Darpan reads the current enablement before it will accept a change to it, so a stale panel cannot overwrite a setting someone else just made.