# Users

> Users lists the people of one server at a time. Invite someone by email in a role, change their roles, add an exception, or suspend them without losing anything they did. Looking at Live is logged.

Source: https://sapilon.com/docs/project/users
Last updated: 2026-10-12

---

**Users** (Explorer → How It Works) is where you see and manage the people of your app. It needs an
app that people sign in to; an app without sign-in has no users. The page has two tabs: **People**
and **Roles**.

## Who appears, and on which server

Each server has its own people, so the tab starts with a server picker — the Build Server, and the
Rehearsal and Live Servers once your project has them. Your choice is remembered per project.

- **Build Server** — the test users of the sign-in page. Inviting one creates a test user in the role
  you choose and sends no email, so you can try "an invited Finance user" before you publish.
- **Rehearsal and Live Servers** — real people. A person appears once they have an account, or while
  their invitation is waiting.

If a server can't be shown, the tab says why and offers the way forward: **Update the platform** (the
server runs an older platform), an **Ask the Agent** hand-off (the app has no roles yet), or **Start it**
(the Rehearsal Server is stopped). An expert helping you on Rehearsal sees the list read-only, with
email addresses masked.

## Inviting people

**Invite people** takes a name, an email address and a role. The person gets an email and joins in that
role the first time they sign in — which signing up on their own can't do. If your app is invite-only
this is the only way in, and the button leads the toolbar.

An address that already has an account, or a waiting invitation, is refused with the reason. A
waiting invitation can be **sent again** (its seven days start over) or **revoked**.

## Roles and exceptions

Open a person to give or take away roles — each change saves at once, with an undo — and to add an
**exception**, such as "Sam can't delete invoices". **Check access** answers "Can Sam approve invoice
42?" and shows which setting decided. See [Roles and permissions](./roles-and-permissions.md) for
how roles and denies combine.

The last admin can't be taken out of Admin or suspended: make someone else an admin first.

## Suspend, not delete

**Suspend** means "this person can't use the app any more, but keep everything they did". They can't
sign in again and lose access within 30 seconds. Their roles and exceptions are kept, so **Restore**
brings back exactly what they had. Each person's page lists the last twenty changes made to them.

## What Sapilon logs

Every change is recorded in the app's own history. Looking at the people of the **Live Server** is
logged in your project's data-access log, the same as reading its database.