Managing Users & User Attributes
Effective user management is key to scaling your automation securely. While adding users is simple, Zenphi offers powerful tools to control exactly what your team can see and do—whether that means granting global access to the entire workspace or restricting a user to a specific project.
In this article, we’ll cover:
- How to invite users to your Workspace.
- Understanding the difference between Workspace Level and Space Level access.
- How to use User Attributes to create personalized, dynamic dashboards.
How to Invite Users
As the Workspace Admin, you can add your teammates to collaborate within Zenphi. Depending on your needs, you can do a quick “Simple Add” or a detailed “Custom Add.”
A. Simple Add (Standard Invitation)
Use this method if you just want to give a user access to the entire workspace quickly.
Steps:
- Open your Settings (the gear icon) at the bottom left of the navigation bar.
- Select the Workspace Users tab from the left-hand menu.
- Click the Invite User button at the top right.
- Enter the user’s email address and click Next.
- Select one of the three Roles (Viewer, Designer, or Admin) from the list.
- Click Next and then Send Invitation.
The user will receive an email invitation (from noreply@zenphi.io) to join the workspace with full global access.
B. Custom Add (Advanced Configuration)
(Use this method if you need to set Space Level Viewers, assign Workspace Level Attributes, or configure Space Level Attribute Overrides)
Steps:
- Follow steps 1-4 from the “Simple Add” section (Settings > Users > Invite > Email).
- Configure Workspace Role:
- To restrict the user to specific spaces only: Leave the Roles dropdown EMPTY. (This restricts them to a Viewer role within the specific spaces you select next).
- To give global access: Select a role (Viewer, Designer, Admin).
- Set Workspace Attributes:
- In the same screen, if you have defined User Attributes (like
DepartmentorRegion), you can set their Global Value here.
- In the same screen, if you have defined User Attributes (like
- Click Next to proceed to Space settings.
- Configure Space Access & Overrides:
- Select Spaces: Check the box next to the specific Spaces this user needs access to.
- Attribute Overrides: For each selected Space, you can enter a specific value for their attributes. Note: This value overwrites the one you set in the previous step just for this specific room.
- Click Send Invitation.
Summary of Roles
There are three distinct roles you can assign to a Zenphi user. Each serves a specific purpose in your automation lifecycle.
Note: For a detailed explanation of permissions and a full comparison matrix, please refer to our User Roles in Zenphi article.
- Viewer (The Consumer): Cannot see how flows are built. They interact only with the end results, such as Dashboards and assigned Tasks.
-
Best for: End users, Employees submitting forms, Executives.
- Designer (The Builder): Has full access to the creative studio (Flows, Tables, AI Models) but cannot access billing or user management.
-
Best for: Automation Engineers, Developers, IT Specialists.
- Administrator (The Manager): Manages the account side (Billing, Users, Quotas).
- Best for: Department Heads, Compliance Officers, Finance Managers.
Workspace Level vs. Space Level Access
To understand how permissions work in Zenphi, it helps to visualize the hierarchy. A Workspace is the “House”, and Spaces are the “Rooms” inside that house. Assets like Dashboards, Flows, and Tables live inside the Rooms (Spaces).
🏢 WORKSPACE (The House)
│
├── 🚪 HR SPACE
│ ├── 📊 Dashboards
│ ├── ⚡ Flows
│ └── 📅 Tables
│
├── 🚪 FINANCE SPACE
│ ├── 📊 Dashboards
│ ├── ⚡ Flows
│ └── 📅 Tables
│
└── 🚪 IT SPACE
├── 📊 Dashboards
├── ⚡ Flows
└── 📅 Tables
The 4 Ways to Assign Access
When inviting a user, there are only 4 ways to configure their access. Select the one that best fits your needs:
1. Workspace Admin (Full Management)
- Action: Select Admin in the “Role” dropdown (Step 2).
- Result: The user has full administrative control over the entire Workspace. They can manage users, billing, and settings. They have high-level access to manage all Spaces if they assign themselves the necessary permissions.
- Use Case: Give this to your CTO or IT Head who needs to manage the subscription and user accounts.
2. Workspace Designer (Global Builder)
- Action: Select Designer in the “Role” dropdown (Step 2).
- Result: The user has Designer access to ALL Spaces in the workspace. They can build flows, tables, and dashboards in Space A, Space B, Space C, and any new spaces created in the future.
- Use Case: Give this to your Automation Engineers or Developers who build solutions for the entire company.
3. Workspace Viewer (Global Consumer)
- Action: Select Viewer in the “Role” dropdown (Step 2).
- Result: The user has Viewer access to ALL Spaces in the workspace. They can view dashboards and complete tasks in every single space, but they cannot edit or build anything.
- Use Case: Give this to the CEO or Auditor who needs read-only visibility into every department’s operations.
4. Space-Level Viewer (Restricted Access)
- Action: Leave the Role dropdown EMPTY (Step 2). Then, in the next screen (Step 3), select specific Spaces (e.g., “HR Space”).
- Result: The user has Viewer access ONLY to the selected spaces. They cannot see any other spaces in the workspace.
-
Example: If you assign them only to the “HR Space,” they will not even know the “Finance Space” exists.
- Use Case: Give this to Department Staff (e.g., HR employees who should only see HR dashboards) or External Clients who should only see their specific project data.
User Attributes & Personalization
What are User Attributes? User Attributes act like “Tags” or “Variables” attached to specific users. They allow you to create dynamic dashboards where the data automatically changes based on who is looking at it.
Instead of building 50 different dashboards for 50 different departments, you build one dashboard and filter the data using attributes (e.g., Department, Region, Manager Approval Limit).
Creating Attributes (Global Definitions)
Before assigning values to users, you must define the available attributes for the workspace.
- Go to Workspace Users.
- Click the Manage User Attributes button (top right).
- Click Add Attribute.
- Define the Name (e.g.,
RegionorIsManager). - Select the Type (String or Boolean).
- Note: Numbers (e.g., “10”) are treated as Strings. Boolean values use a True/False dropdown.
- (Optional) Set a Default Value. This applies to all users unless you specifically override it.
Assigning Values & Inheritance Logic
You will encounter these settings in two places:
- When inviting a new user (during the “Custom Add” process).
- When editing an existing user (clicking the Pencil ✏️ icon).
In both cases, you can set attribute values at the Workspace level (Global) or override them for specific Spaces.
How to Assign Values:
- Open the User Settings:
- If New: Click “Invite User.”
- If Existing: Click the Edit (Pencil ✏️) icon next to the user in the list.
- Step 1 (Workspace Level): In the “Role” screen, you will see a list of available attributes. Set a value here to apply it globally to all spaces.
- Step 2 (Space Level): Click Next. Select the specific Spaces where you want this user to have a different value.
- Step 3 (Override): For those selected spaces, enter the new value in the text box next to the space name.
The Inheritance Hierarchy (How the final value is determined): Zenphi determines which value to use based on a strict priority order. A specific setting always overrides a general one.
Priority Order (Highest to Lowest):
- Space Level Override (Specific to one room)
- Source: The value you assigned to the specific space in the “Spaces” step (Step 2/3).
- Workspace Level Value (Specific to one user across the house)
- Source: The value you assigned to the user in the “Workspaces” step (Step 1).
- Attribute Default Value (Global fallback for everyone)
- Source: The default value you set when originally creating the attribute itself. This is used only if you haven’t assigned any specific value to the user.
Visual Example: The “Age” Attribute:
Imagine you created an attribute called Age with a Default Value of 10.
You then edit User A. In Step 1 (Workspace), you set their Age to 20. In Step 2 (Spaces), you select “Space 1” and override their Age to 30.
👤 USER A LOGS IN...
🏛️ Attribute Default Value: 10 (Ignored due to user setting below)
│
└─🏢 Workspace Level Setting: 20 (Applies generally)
│
│── 🚪 SPACE 1 (Has Override: 30) ───> FINAL VALUE: 30
│
│── 🚪 SPACE 2 (No Override) ──────> FINAL VALUE: 20
│
└── 🚪 SPACE 3 (No Override) ──────> FINAL VALUE: 20
Using Attributes in Dashboards
Once attributes are assigned, you can use them to filter widgets (Charts, Grids, Metrics, etc.).
- Open your Dashboard and edit a widget (e.g., a Grid).
- Go to the Conditions (Filtering) section.
- Select the Table Column you want to filter (e.g.,
Region). - Choose your Operator (e.g.,
Equal to). - In the value field, click the Gear Icon ️.
- Select the source:
- Built-in Fields:
User Id,User Email,Name. - Custom Attributes: Select the attribute you created (e.g.,
User Attribute.Region).
- Built-in Fields:
Outcome: When the user loads the dashboard, Zenphi checks their assigned attribute for that specific Space and filters the data instantly. User A sees “US” data, while User B sees “EU” data.
Real-World Use Cases for User Attributes
User Attributes are powerful because they allow you to implement Row-Level Security (RLS). This means multiple users look at the same dashboard, but see different data rows based on their attributes.
Scenario 1: The Regional Sales Team (Workspace Level is Enough)
The Requirement: You have one master “Sales Dashboard.” User A (Head of Sales USA) should only see US data. User B (Head of Sales Europe) should only see EU data. The Setup:
- Create Attribute:
Region. - Set User A to
USAand User B toEuropeat the Workspace Level. - Filter Dashboard where
Table.CountryEqualsUser.Attribute.Region. Why Workspace Level is enough: User A is always the US manager, regardless of which project space they are viewing.
Scenario 2: The “Two-Hat” Manager (Space Level Override Needed)
The Requirement: Sarah is a Senior Manager in the Engineering Department (needs budget access), but for a specific “Charity Event” project, she is just a regular Volunteer (no budget access). The Setup:
- Create Attribute:
AccessLevel. - Set Sarah’s Global Value to
Manager. - Override her value in the “Charity Space” to
Volunteer. The Result: Sarah sees sensitive data in Engineering, but restricted data in Charity.
Scenario 3: The Multi-Client Agency (Space Level Override Needed)
The Requirement: You manage 3 clients (Nike, Coke, Apple) in 3 separate spaces. You want to use the exact same dashboard template in all spaces without hard-coding the client name. The Setup:
- Create Attribute:
ClientName. - In the “Nike Space,” override the attribute to
Nike. - In the “Coke Space,” override the attribute to
Coke. The Result: When you copy the dashboard from one space to another, it automatically adapts to show the correct client’s data.
Scenario 4: Approval Limits (The Hierarchy in Action)
The Requirement: In the main Finance Space, Junior staff can only see invoices < $1,000. However, in the “Petty Cash” Space, everyone (even Juniors) should see up to $5,000. The Setup:
- Default Value (Global):
1000. - Space Override (Petty Cash Space): Set override to
5000.
The Result:
USER (Junior) LOGS IN:
🏢 Workspace (General Finance Space)
│
└── Value: 1,000 (Default)
Result: Can only approve small invoices.
🚪 Space (Petty Cash Space)
│
└── Override: 5,000
Result: Can approve larger amounts just in this room.