How access is built
Exowpee builds access in three layers.- A permission is one thing a person may do, such as listing orders or creating a role.
- A role is a named set of permissions, for example “cashier”.
- A profile is a named set of roles. People are given profiles, as described in Assign access to people.
See what is available
Before building a role, Madame Illa opens List available permissions. Each permission group has a title and a description. If she wonders what her company as a whole is allowed to use, List my company permissions shows the permissions that its own roles grant to the company.Build the roles
She creates a role “cashier” with Create a role, and ticks the permissions a cashier needs. List roles and View a role show what exists. Later she changes the permissions with Edit a role, and a role she no longer needs goes away with Delete a role.Bundle the roles into profiles
A person usually needs several roles, so she creates the profile “shop assistant” with Create a company profile from the roles “seller” and “cashier”. She finds the profiles again with List company profiles and View a company profile, changes their name or roles with Edit a company profile and removes one with Delete a company profile.Who works where
Madame Illa works in her company. At Groupe Gbaguidi, Sèdjro Gbaguidi defines the roles and profiles of the organization in the same way, and a firm such as Cabinet Hounkpatin defines those of each client account. Each space has its own roles and profiles, and its own list of permissions. The rules name the differences.The rules
- Role and profile names are lower-cased before they are checked. A role name has at most 255 characters and is unique among the roles of the space. A profile name has at most 120 characters and is unique among the profiles of the space. The name of a deleted role or profile can be used again.
- A role description has at most 255 characters and a profile description at most 120.
- Permissions are chosen by their group identifier, without duplicates. A role created without permissions is allowed. Sending a list when editing a role replaces all its permissions, and an empty list removes them all.
- A profile needs at least one role. Only custom roles can be put in a profile: built-in roles are refused. Sending roles when editing a profile replaces the previous ones.
- Built-in roles and built-in profiles cannot be edited or deleted.
- Deleting a role does not check whether profiles still use it. It is removed and every profile loses it.
- A profile cannot be deleted while a member or an agent account is assigned to it. Deleting it removes it and detaches its roles.
- Roles are listed once per role, filterable by name and by built-in status, sorted by id, name or creation date (and update date in the company and client spaces), with at most 1,000 per page, or 100 in the organization space.
- Company, client and organization spaces have their own versions of these actions, for example List available client permissions and Create an organization role. The list of permissions depends on the space: each one only offers the permissions that exist there.
All the actions of this topic
- List my company permissions: Shows the permissions granted to the current company through its own roles (what the company is allowed to use), one per permission group, independent of the signed-in person’s profile.
- List available permissions (company): Shows the permissions that can be given to roles in the company space, one per permission group, with a translated title and description.
- List available permissions (client account): Shows the permissions that can be given to roles in the client space, one per permission group, with a translated title and description.
- List available permissions (organization): Shows the permissions that can be given to roles in the organization space, one per permission group, with a translated title and description.
- List company profiles (company): Shows the access profiles (named sets of roles) defined in the company space.
- Create a company profile (company): Creates a new access profile in the company space, made of chosen roles.
- View a company profile (company): Shows one access profile of the company space.
- Edit a company profile (company): Changes the name, description or roles of an access profile in the company space.
- Delete a company profile (company): Deletes an access profile of the company space.
- List client profiles (client account): Shows the access profiles (named sets of roles) defined in the client space.
- Create a client profile (client account): Creates a new access profile in the client space, made of chosen roles.
- View a client profile (client account): Shows one access profile of the client space.
- Edit a client profile (client account): Changes the name, description or roles of an access profile in the client space.
- Delete a client profile (client account): Deletes an access profile of the client space.
- List organization profiles (organization): Shows the access profiles (named sets of roles) defined in the organization space.
- Create an organization profile (organization): Creates a new access profile in the organization space, made of chosen roles.
- View an organization profile (organization): Shows one access profile of the organization space.
- Edit an organization profile (organization): Changes the name, description or roles of an access profile in the organization space.
- Delete an organization profile (organization): Deletes an access profile of the organization space.
- List roles (company): Shows the roles defined in the company space, with optional filters by name or built-in status.
- Create a role (company): Creates a custom role in the company space with a name, description and a chosen set of permissions.
- View a role (company): Shows one role of the company space with its details.
- Edit a role (company): Changes the name, description or permissions of a custom role in the company space.
- Delete a role (company): Removes a custom role from the company space.
- List roles (client account): Shows the roles defined in the client space, with optional filters by name or built-in status.
- Create a role (client account): Creates a custom role in the client space with a name, description and a chosen set of permissions.
- View a role (client account): Shows one role of the client space with its details.
- Edit a role (client account): Changes the name, description or permissions of a custom role in the client space.
- Delete a role (client account): Removes a custom role from the client space.
- List roles (organization): Shows the roles defined in the organization space, with optional filters by name or built-in status.
- Create a role (organization): Creates a custom role in the organization space with a name, description and a chosen set of permissions.
- View a role (organization): Shows one role of the organization space with its details.
- Edit a role (organization): Changes the name, description or permissions of a custom role in the organization space.
- Delete a role (organization): Removes a custom role from the organization space.