# How to Create and Edit Users?

Creating and editing users allows you to manage system users — add new operators, update their information, assign roles, and configure access rights. This instruction will show how to create new users and edit existing ones in the Settings module.

---

## When You'll Need This

- You need to add a new operator or administrator to the system.
- You need to update user information (name, email, role).
- You need to assign or change a user's role.
- You need to update user settings (work schedule, skill groups, dialog limits).

---

## What's Important to Know

- **User** — a person who has access to the system (operator, supervisor, administrator, etc.).
- **Role** — a set of access rights that determines what a user can do in the system.
- **User profile** — information about the user (name, email, phone, avatar, role, settings).
- **Password** — required when creating a new user, optional when editing (only if you want to change it).

---

## Before You Start

- [x] You are logged in with administrator rights.
- [x] You have permission to create and edit users.
- [x] You know the user's information (name, email, role).
- [x] If creating a new user, you have a password ready (or will set it during creation).

---

## Step-by-Step Instructions

### 1. Open Users List

1. Go to the **Settings** module via `Menu -> Settings`.
2. In the side menu, find the **"Users"** section and expand it.
3. Click on **"Users"**.
4. The system displays a table with all users in the system.

### 2. Create New User

1. In the users list, click **Add user** in the page header.
2. A form for creating a new user opens.
3. Fill in the required fields:
   - **"Email"** — user's email address (required, must be unique).
   - **"First Name"** — user's first name (required).
   - **"Last Name"** — user's last name (required).
   - **"Password"** — password for the user (required for new users).
   - **"Password Confirm"** — confirm the password (must match the password).
   - **"Role"** — select the user's role from the list (required).
4. Fill in optional fields if needed:
   - **"Avatar"** — upload user's profile photo.
   - **"Phone"** — user's phone number.
   - **"Manager"** — select the user's manager from the list.
   - **"Max Dialogs"** — maximum number of dialogs the user can handle simultaneously.
   - **"Work Schedule"** — select the user's work schedule (calendar).
   - **"Skill Groups"** — select skill groups from the list (multi-select).
   - **"Allow connection over limit"** — allows connecting to dialogs even when max dialogs is reached.
   - **"Limits by channels"** — separate dialog limits for different channels (Telegram, Viber, etc.).
   - **Additional fields** — if [user fields](/en/settings/how-to/configure-user-fields.md) are configured, fill them in (**List** and **List from API** types use dropdowns, not plain text). The **Configure fields** link in the form opens user field settings in a **new tab** so you do not lose entered data.
5. Review all entered information.
6. Click the **"Save"** or **"Create"** button.
7. The system creates the user and adds them to the users list.

### 3. Edit Existing User

1. In the users list, find the user you want to edit.
2. Click on the user row or the **"Edit"** button in the actions column.
3. A form for editing the user opens with current information.
4. Update the fields you need:
   - **"Email"** — change email if needed (must be unique).
   - **"First Name"** — update first name.
   - **"Last Name"** — update last name.
   - **"Password"** — leave empty if you don't want to change it, or enter a new password.
   - **"Password Confirm"** — if you entered a new password, confirm it.
   - **"Role"** — change the user's role if needed.
   - **"Avatar"** — upload a new avatar or remove the current one.
   - **"Phone"** — update phone number.
   - **"Manager"** — change the user's manager.
   - **"Max Dialogs"** — update dialog limit.
   - **"Work Schedule"** — change work schedule.
   - **"Skill Groups"** — change skill groups (select from list).
   - **"Allow connection over limit"** — enable or disable as needed.
   - **"Limits by channels"** — update separate limits per channel.
   - **Custom fields** — update custom field values.
5. Review all changes.
6. Click the **"Save"** or **"Update"** button.
7. The system saves changes and updates the user information.

### 4. Assign Role to User

1. Open the user for editing (see step 3).
2. In the edit form, find the **"Role"** field.
3. Select the required role from the dropdown list.
4. Click **"Save"** — the role is assigned to the user.
5. The user receives access rights according to the assigned role.

### 5. Log In as User (verify operator permissions)

If you have the **Login as user** permission or are a root administrator, the edit form of an **active** user (other than yourself) shows a **Login as user** button. It replaces your session with the selected user's session — useful for checking the interface from the operator's perspective.

Full instructions: [Log in as user](/en/settings/how-to/login-as-user.md).

---

## What Happens Next

**After creating a user:**
- The new user appears in the users list.
- The user can log in to the system using their email and password.
- The user has access rights according to the assigned role.

**After editing a user:**
- User information is updated in the system.
- If the role was changed, access rights are updated immediately.
- Changes take effect immediately (no need to log out and log back in).

---

## How to Verify Everything Worked

**For new users:**
- Check that the user appears in the users list.
- Verify that all entered information is displayed correctly.
- Try logging in with the new user's credentials (if you have access).

**For edited users:**
- Check that updated information is displayed correctly in the users list.
- Verify that the role change (if any) is reflected.
- Check that the user can access modules according to their role.

---

## Other Ways

- **Bulk operations:** Some systems allow importing users from a file (CSV, Excel). Check if this option is available in your system.
- **User self-registration:** Some systems allow users to register themselves, but this usually requires administrator approval.

---

## Related Materials

- [View users list](/en/settings/how-to/view-users.md) — how to view all users in the system
- [Configure roles](/en/settings/how-to/configure-roles.md) — how to create and configure roles with access rights
- [Configure user fields](/en/settings/how-to/configure-user-fields.md) — how to add custom fields to user profiles
- [Configure operators in chats](/en/settings/how-to/configure-operators.md) — global operator display settings in chats
- [Log in as user](/en/settings/how-to/login-as-user.md) — verify the interface as a selected operator

---

## Important Notes

- ⚠️ **Email uniqueness:** Each user's email must be unique in the system. If you try to create a user with an existing email, the system will show an error.
- 🔒 **Password security:** When creating a new user, always set a strong password. The user can change it later, but initial security is important.
- 👤 **Role assignment:** Make sure to assign the correct role to each user. The role determines what the user can do in the system.
- 📧 **Email verification:** Some systems may require email verification for new users. Check your system settings.
- 🚫 **Deleting users:** If you need to remove a user from the system, contact your system administrator or check if there's a delete function (usually requires special permissions).
