> ## Documentation Index
> Fetch the complete documentation index at: https://muveya.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Team

> List the people in your dental clinic, invite new ones, and change their role, permissions and location access, or suspend, reactivate and remove them.

The **Team** screens are where you decide who works in your dental clinic and what each person can reach. A person's access has three parts, and you set each one here:

* a **role** (**Owner**, **Administrator** or **Member**), which is a template with a few permissions included;
* **permissions**, the actions and information the person can use;
* **locations and warehouses**, the sites where those permissions apply.

[Roles and permissions](/docs/en/account/roles-and-permissions) explains what each one means.

## Who can do it

| You are | What you can do on the Team screens |
| - | - |
| **Owner** | Everything below, including inviting administrators, changing roles and transferring ownership. |
| **Administrator** | List, invite members, resend and revoke invitations, change permissions and location access, suspend, reactivate and remove. You cannot invite an administrator, change roles or transfer ownership, and you cannot suspend, reactivate, remove or change the location access of an owner. |
| **Member** with `members.manage` | The same as an administrator. |
| **Member** without `members.manage` | Nothing. **Team** is not in your menu, and opening `/members` shows **You do not have access to team management. Ask your clinic administrator.** |

Owners and administrators always have `members.manage` through their role. On top of the role, some actions have extra limits, listed in each section: nobody changes their own location access, and you can only hand out locations and warehouses you reach yourself.

## Where

* **Team** in the main menu, `console.muveya.com/members`: the member list and **Pending invitations**.
* **Invite person**, `console.muveya.com/members/invite`.
* A person's page, `console.muveya.com/members/` followed by their id, opened by selecting their name.

On **Home**, a new clinic shows the card **Invite your team** (**You are the only member of this clinic account.**) to people who can invite.

## List the team

The **Team** screen (**Manage your dental clinic’s team and their access.**) shows a table with three columns:

| Column | What it shows |
| - | - |
| **Person** | The person's name (a link to their page) and, below it, their email. **Profile unavailable** if the profile cannot be read. |
| **Role** | **Owner**, **Administrator** or **Member**. |
| **Status** | **Active** or **Suspended**. **Account disabled** if the person's muveya account itself is disabled. |

* Use the **Status** filter to show **All statuses**, **Active** or **Suspended**.
* The table shows 50 people per page. Use **Previous page** and **Next page**; the current page is shown as **Page** followed by its number.
* Removed people are not listed.

Empty and error states: **No suspended members**, **There are no members on this page. Return to the previous page.**, **The team is not available. Try again.** (with **Try again**), and **Loading the team…** while it loads.

The console has no search box on this screen.

## Invite a person

**Who can do it:** anyone with `members.manage`. Only an **Owner** can invite an **Administrator**.

<Steps>
  <Step title="Open the form">
    On **Team**, select **Invite person**. The screen says **Invite someone by email to join this dental clinic with the access you choose.**
  </Step>

  <Step title="Person">
    Enter the **Email**, choose the **Email language** (English, Español or Português; the console's language is preselected) and the **Role**: **Member**, or **Administrator** if you are an owner.
  </Step>

  <Step title="Permissions">
    Tick the permissions the person receives **on top of** their role. The hint says **Select the permissions this person receives in addition to those included in their role. You can only grant access you hold.** Permissions are grouped as **Catalog**, **Inventory**, **Orders**, **Approvals**, **Fulfillment**, **Reports and audit** and **Administration**.
  </Step>

  <Step title="Locations and warehouses">
    For **Location access** choose **All locations in this account** or **Selected locations**; for **Warehouse access** choose **All warehouses in this account** or **Selected warehouses**. With a "selected" option, tick at least one site in the list below.
  </Step>

  <Step title="Create the invitation">
    Select **Create invitation**. The screen shows **Invitation created for** the email, with **We are sending the email. This does not confirm that they received it; you can resend it from the team page once resending is available.** Select **Back to team** or **Invite another person**.
  </Step>
</Steps>

In the site lists, inactive sites are marked **(inactive)**, and each warehouse is shown with its location, or with **Central warehouse** for a central warehouse. If there are no sites yet, the list says **There are no locations to assign yet.** or **There are no warehouses to assign yet.** "All" also covers the locations and warehouses created later.

When you tick **Adjust and count stock**, the console also ticks and locks **Receive deliveries**, **Record usage** and **Move boxes between warehouses**, marked **(Included in Adjust and count stock)**, because that permission includes them.

**Rules and limits**

* **Email:** a valid address, up to 320 characters. It is stored in lowercase.
* **Role:** **Member** or **Administrator**. Nobody can be invited as **Owner**; ownership is transferred later.
* **Permissions:** every permission you tick must be one you hold yourself (including the ones your role gives you). The form lists all permissions; the server refuses the rest.
* **Sites:** if your own access is limited to some locations or warehouses, you can only offer those, and you cannot offer "all". An invitation always grants at least one location and one warehouse, or all of them; "no location" can only be set later on the person's page.
* **One invitation per email:** while an invitation for that email is pending, you cannot create another one. Resend or revoke the existing one.
* **Expiry:** the link is valid for 24 hours.

**What the system records:** a pending invitation with the role, permissions and sites you chose, the names of those sites (so the recipient sees names, not ids), who sent it, and an audit entry. The email is sent in the background, so the confirmation never means it was delivered. Nothing is created for the recipient until they accept. The recipient's side is described in [Accept an invitation](/docs/en/account/sign-in#accept-an-invitation).

## Manage pending invitations

Below the member list, **Pending invitations** shows every invitation that is still `pending`, 50 at a time (**Previous invitations** and **More invitations** move between pages).

| Column | What it shows |
| - | - |
| **Email** | The invited address. |
| **Role** | The offered role. |
| **Expires** | Date and time the current link stops working. |
| **Actions** | **Resend invitation** and **Revoke invitation**. |

When there are none, the section says **There are no pending invitations.**

### Resend an invitation

1. Select **Resend invitation** on the row.
2. The dialog says **Confirm for** the email, and **We will send a new email with a fresh link, and the previous link stops working. The access offered stays the same.**
3. Select **Resend this invitation**. The section shows **A new email to** the address **is being sent. This does not confirm that they received it.**

A resend creates a new link valid for 24 hours and cancels the previous one. You can resend an invitation at most once a minute; until then the button is disabled and the row shows **You can resend it from** followed by the time. To resend, you must be allowed to issue that same invitation now (its role, permissions and sites). The invitation keeps its original sender.

### Revoke an invitation

1. Select **Revoke invitation** on the row.
2. The dialog says **The invitation is cancelled and the link in the email stops working. To invite this person again, create a new invitation.**
3. Select **Revoke this invitation**. The section shows **The invitation to** the address **was revoked.**

Select **Cancel** or **Close** to leave either dialog without changes.

### Invitation lifecycle

| State | What it means | Where you see it |
| - | - | - |
| `pending` | Sent and waiting for the recipient. | **Pending invitations**. |
| `accepting` | The recipient is completing the acceptance right now. | Not shown in the list. |
| `accepted` | The recipient joined. | The person appears in the member list. |
| `revoked` | You revoked it. The link no longer works. | Removed from the list. |
| `expired` | Not used today: an invitation whose time ran out stays `pending` (see the note below). | Not shown in the list. |

<Note>
  An invitation whose **Expires** time has passed stays in **Pending invitations**: its link no longer works, but the invitation is still pending and still blocks a new invitation to the same email. Resend it to send a fresh 24-hour link, or revoke it.
</Note>

If the recipient sees **This invitation needs to be reviewed by the clinic administrator**, the person who sent the invitation no longer holds the role, permissions or sites it offers (for example, they were suspended). A resend keeps that sender, so it does not solve it: revoke the invitation and create a new one yourself.

The console does not show accepted, revoked or expired invitations.

## Open a person's page

Select a name in the list. The page (**Review this person’s role, permissions and operational access.**) shows **Email**, **Role** and **Status**, then the sections below. **Back to team** returns to the list.

* For an **Active** person you see **Role** (owners only), **Permissions**, **Locations and warehouses**, and the available actions.
* For a **Suspended** person you see **This membership is suspended. Its permissions cannot be edited.**, the list of permissions they hold, and **Reactivate access** and **Remove from clinic**.
* If the profile cannot be read, the page shows **This profile is incomplete. Refresh the member before editing access.** and no editors.

### Change the role

**Who can do it:** an **Owner**, for a person who is not an owner. The section does not appear otherwise.

1. In **Role**, choose **Administrator** or **Member**. The section explains **Only an owner can change roles. Ownership is transferred separately.**
2. Select **Save role**. The section shows **Role saved**.

**What happens:** the new role applies at once. Permissions you granted on top of the role stay (**The role includes the marked permissions. Additional assignments remain when the role changes.**). The person is signed out of muveya everywhere and must sign in again.

**Limits:** you cannot change an owner's role (transfer ownership instead). To promote someone to **Administrator**, your own location and warehouse access must cover theirs.

### Change permissions

**Who can do it:** anyone with `members.manage`, for any active person, including yourself.

1. In **Permissions** (**Choose which information and operations this person can access.**), tick or untick permissions.
2. Select **Save permissions**. The section shows **Permissions saved**.

* Permissions that come from the role are ticked, locked and marked **(Included in the role)**.
* Permissions included by **Adjust and count stock** are ticked, locked and marked **(Included in Adjust and count stock)**.
* The console saves only what you ticked. The saved list replaces the previous one completely.

**What happens:** the change applies from the person's next action. They are not signed out.

**Limits:** granting **Manage team access** (`members.manage`) to someone also gives them authority over their own sites, so your location and warehouse access must cover theirs.

<Tip>
  This is also how a new **Owner** gets operational access: open your own page and tick, for example, **View inventory**, **Create supply orders** or **View reports**. No role includes them.
</Tip>

### Change location and warehouse access

**Who can do it:** anyone with `members.manage`, for another person. Only an owner can change an owner's access.

1. In **Locations and warehouses**, the text says **For each, choose whether this person reaches all, some or none. “All” includes the ones created later.**
2. For **Location access** choose **All locations in this account**, **Selected locations** or **No location**. For **Warehouse access** choose **All warehouses in this account**, **Selected warehouses** or **No warehouse**.
3. With a "selected" option, tick the sites.
4. Select **Save location access**. The section shows **Location access saved** and a summary such as **Locations: all · Warehouses:** followed by the warehouse names.

The notes under each choice explain it:

* **Includes locations created later.** / **Includes warehouses created later.**
* **They won’t see orders, approvals or custody for any location.** (with **No location**)
* **They won’t see or move stock in any warehouse.** (with **No warehouse**)

**Limits:**

* On your own page the section is locked and says **You can’t change your own locations and warehouses. Ask another person who manages the team.**
* You can only grant sites you reach yourself, and "all" only if you have "all".
* **Selected** with nothing ticked is refused: **Choose at least one location, or select “No location” if this person should not have access.** (or the warehouse version). Choose **No location** or **No warehouse** explicitly.
* A site that no longer exists appears as **Unavailable location** followed by a number; untick it to remove it.
* Up to 500 locations and 500 warehouses per person.

**What happens:** the new access applies from the person's next action. See [Site scope](/docs/en/account/roles-and-permissions#site-scope) for what it narrows.

### Suspend access

**Who can do it:** anyone with `members.manage`. Only an owner can suspend an owner.

1. In **Suspend access**, read **This person will lose access to this clinic account and their active sessions will be revoked.**
2. Select **Suspend access**, then **Suspend this person** in the dialog.

**What happens:** the membership becomes **Suspended** at once. The person is signed out of muveya on every device, and every session, API key and WhatsApp link issued before the suspension stops working. The clinic keeps their history. An audit entry is recorded.

### Reactivate access

**Who can do it:** anyone with `members.manage`. Only an owner can reactivate an owner. Your location and warehouse access must cover the person's.

1. On a suspended person's page, select **Reactivate access**. The dialog says **This person regains access with their current role, permissions and locations. Sessions, API keys and WhatsApp links from before the suspension stay closed; they must sign in again.**
2. Select **Reactivate this person**.

**What happens:** the membership is **Active** again with the same role, permissions and sites. The person signs in again. An audit entry is recorded.

### Remove from the clinic

**Who can do it:** anyone with `members.manage`, for an active or suspended person other than yourself. Only an owner can remove an owner.

1. Select **Remove from clinic**. The dialog says **This person will lose access to this clinic account and their sessions will be closed. Their history stays in the clinic; to return, they need a new invitation.**
2. Select **Remove this person**. You return to the member list.

**What happens:** access ends at once, every session, API key and WhatsApp link issued before the removal stops working, the person no longer appears in the list, and their name stays on the records they took part in (orders, movements, approvals). To bring them back, send a new invitation: when they accept, they return with the access in that invitation. An audit entry is recorded.

### Transfer ownership

**Who can do it:** an **Owner**, to another active person.

1. On the other person's page, select **Transfer ownership**. The dialog says **The selected person becomes an owner and you become an administrator. Both accounts will need to sign in again.**
2. Select **Transfer ownership** in the dialog.

**What happens:** the person becomes **Owner** and you become **Administrator**, in one step. Both of you are signed out everywhere. Your location and warehouse access must cover theirs.

## Last-owner protection

A dental clinic always keeps at least one active **Owner**. Suspending or removing the only active owner is refused with **The clinic account must keep an active owner. Transfer ownership before removing that access.** An owner's role cannot be changed from the **Role** section either: transfer ownership first.

## What can go wrong

| Message | Why | What to do |
| - | - | - |
| **You do not have access to team management. Ask your clinic administrator.** | You lack `members.manage`. | Ask an owner or administrator. |
| **Enter a valid email address.** | The invitation email is malformed. | Correct it. |
| **Choose at least one location, or select access to all.** | **Selected** with nothing ticked on the invitation form. | Tick a site or choose "all". |
| **This email already has a pending invitation. Resend it from the team page.** | A pending invitation exists for that email (even if its time passed). | Resend or revoke it in **Pending invitations**. |
| **Some of the selected permissions or locations cannot be granted. Review the selection.** | A permission you do not hold, a site outside your access, "all" when you only reach some sites, no site selected, or a site that does not exist. | Untick what you cannot grant, or ask an owner. |
| **Only an owner can invite an administrator or change this role. Choose the member role, or ask an owner.** | The action needs an owner, or you lack `members.manage`. | Ask an owner. |
| **This person already belongs to this clinic.** | The person is already an active or suspended member. | Open their page instead. |
| **This invitation changed since you opened the list. Review it before trying again.** | Someone resent or revoked it meanwhile. | Reload the list. |
| **This invitation is no longer pending.** | It was accepted or revoked. | Reload the list. |
| **The clinic account must keep an active owner. Transfer ownership before removing that access.** | Last-owner protection. | Transfer ownership first. |
| **A permission is unavailable. Refresh this member before trying again.** | A permission name was not recognized. | Reload the page and save again. |
| **You can’t change your own locations and warehouses. Ask another person who manages the team.** | You tried to change your own site access. | Ask another manager. |
| **You can only change access for people entirely within your own locations and warehouses, and only to those. Ask someone with access to every location.** | The person, or the access you chose, goes beyond your own sites. | Ask someone with access to all sites. |
| **Review the selected permissions and locations.** | The form holds an invalid value. | Reload and try again. |
| **The active dental clinic account changed. Reload the page before trying again.** | You switched clinic in another tab. | Reload the page. |
| **Your account does not have permission for this action.** | The server refused the action for your access. | Ask an owner. |
| **This record is not available in the active dental clinic account.** | The person is not a member of this clinic (or was removed). | Go back to the list. |
| **Could not complete the request. Please try again.** | A temporary error, or resending before the one-minute wait. | Wait a moment and try again. |
| **Could not confirm the operation. Check your connection and review the list before trying again.** | No network while saving. | Check the list before repeating. |

## What you cannot do yet

* Search or export the team list.
* Edit a person's name or email (each person's account holds them).
* See accepted, revoked or expired invitations, or edit a pending invitation's access (revoke it and create a new one).
* Read the audit history of team changes: it is recorded, but no screen shows it.

## Related pages

<CardGroup cols={2}>
  <Card title="Roles and permissions" icon="key" href="/docs/en/account/roles-and-permissions">
    The full permission catalog and what each one unlocks.
  </Card>

  <Card title="Sign in" icon="right-to-bracket" href="/docs/en/account/sign-in">
    What the invited person sees.
  </Card>

  <Card title="Locations" icon="building" href="/docs/en/locations/clinics">
    Create the locations you assign to people.
  </Card>

  <Card title="Warehouses" icon="warehouse" href="/docs/en/locations/warehouses">
    Create the warehouses you assign to people.
  </Card>
</CardGroup>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.