# Application users and roles

Applications with *Login Mode* set to *Email & Password* can maintain their users in the *Users & Roles* section. Users can also be administered using the [User API](https://docs.stadium.software/how-it-works/user-api)

***

### Accessing application *Users and Roles*

**Steps:**

1. Log in to your application with the credentials of an *Administrator*.
2. Click the profile icon <img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACcAAAAnCAYAAACMo1E1AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4wocCjEnYrsEBQAAAB1pVFh0Q29tbWVudAAAAAAAQ3JlYXRlZCB3aXRoIEdJTVBkLmUHAAAB4klEQVRYw+2YvUvDUBTFz0tiUgvJUqe2S6Ya55YWBMHBUFd19A9w6+TmppNbN7vUxVGdJQUHRajo5ODHFIfaqS4piEmTPDdRadqYZ4qUnDXnwY/73j33EkIppfin4vCPlcAlcAlcAjftcALL4XbXw+mTC8N0YdkUikSgqwLWCgIqWZ4ZjkQdX7tXNg7vBoHfayURtaI4+Wtt3g1GggFA/cZBc4znzyvX6ftYOnoL7b/YTCMvc5OpnGF6sfqZ4FqmG6t/enMuL5NY/UxwK6oQq58JTlcFaJlwx7QMB32ScADQWE1BFkdflywSNFZTkw/hvMzhcjONcsCIKmd5XDLkW6QQPn4cQFcFKBL5FsqG6aFvU8gSga7y36Asm6L17GG9IMQDZ5gu9q4cdPo+FIngoJoKNdjbXQ9bZ++wbIq8zGFnUfzVGxwLt33+jpMnd2hjrBeEod1omO7ntvJTG/Mz2F+W2OGCwH7qaxXb3fHjKixgIFz9xkH91okt/WtFEbWSGK1bWdedcQpzI4FwihQrGyhodLhGdRY5hrk4SjmZoFGdZe9Ww3Rx3fXQfvHw8OpHBtIyHCo5HuUsHzpOfr0J3/d8WA6FZVM89IJhtTkOikSgiAQLc9EmBUn+zyVwCVwCx64PqDDC9uO4V/YAAAAASUVORK5CYII=" alt="" data-size="line"> in the top-right corner of your application.
3. Select *Users & Roles*.

***

### Overview: Enabling page access

The *Menu* control displays only menu items application users can access and automatically filters out the others. Submenus only display if they contain pages users can access.

**Steps:**

1. Adding *Roles*.
   1. Provide a role *Name*.
   2. Select *Pages* accessible to users with the *Role*.
   3. Save.
2. Adding *Users*.
   1. Provide an *Email* and *Password*.
   2. Optionally add a *Name*.
   3. Check the *Administrator* checkbox for users that manage *Users & Roles*.
   4. Select *Roles* the user should belong to (the *User* role is assigned to all users to provide access to the application *StartPage*).
   5. Save.

Optionally, use the *Pages* menu to review and amend *Role* access to a page.

***

### Roles

The *User* role is created by default. In this section you can maintain the different user roles that you require for your application.

{% embed url="<https://www.youtube.com/embed/-IkxyWmPaUw?autoplay=1&rel=0&vq=1080>" %}
Maintain Roles
{% endembed %}

**Steps:**

1. Click the **Roles** menu item.
2. To Add:
   1. Click **Add Role.**
   2. Enter a *Name* for the Role.
   3. Select the *Pages* to which this Role will have access.
   4. Click **Save**.
3. Update:
   1. Click the **Edit** link associated with the relevant Role.
   2. Update *Name* and / or which *Pages* are assigned to the Role.
   3. Click **Save**.
4. Delete:

   1. Click the **Delete** link associated with the relevant Role.
   2. Click **Yes** to confirm.

   Note:

   * The default Role is 'User'.
   * All users are automatically and permanently assigned to the 'User' role.
   * Additional Roles can be assigned to users, and can also be removed ("unassigned") from users.

![](https://3514041584-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FqxH8JA8xG3I22tiZG5H6%2Fuploads%2Fgit-blob-62e6dcbde8195d52d8a9c093b8ae3d27ef703d26%2Fadd-role.png?alt=media)

***

### Users

{% embed url="<https://www.youtube.com/embed/AhHe6znHk6c?autoplay=1&rel=0&vq=1080>" %}
Users
{% endembed %}

**Steps:**

1. Click the *Users* menu item.
2. To Add:
   1. Click *Add User*.
   2. If the Application's Login Mode is 'Email & Password':\
      \- Enter the user's *Name* (optional), *Email* and *Password*.
   3. Select the *Administrator* checkbox only if this User is to have Administration rights, i.e. to have access to Application *Users and Roles*.
   4. Select the *Role(s)* to assign to the User.
   5. Click Save.
3. Update:
   1. Click the Edit link associated with the relevant User.
   2. Update *Email*, *Password*, *Name* and / or which *Role(s)* to assign to the User.
   3. Click Save.
4. Delete:
   1. Click the Delete link associated with the relevant User.
   2. Click Yes to confirm.

![](https://3514041584-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FqxH8JA8xG3I22tiZG5H6%2Fuploads%2Fgit-blob-3e4bd68e07b163f77d135f81f9b5c9e4734c77b1%2Fadd-user.png?alt=media)

***

### Pages

Access to your application's *Pages* can be controlled by assigning user roles to each page.

{% embed url="<https://www.youtube.com/embed/-_HLGky2SHM?autoplay=1&rel=0&vq=1080>" %}
Maintain Role assignments to [*Pages*](https://docs.stadium.software/features/pages)
{% endembed %}

**Steps:**

1. Click the *Pages* menu item.
2. Click the Edit link associated with the relevant Page.
3. Select the *Role(s)* to assign to the Page.
4. Click Save.

![](https://3514041584-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FqxH8JA8xG3I22tiZG5H6%2Fuploads%2Fgit-blob-a07367a1a80c397463f7cce253c468998f9d3c0b%2Fpages%20copy.png?alt=media)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.stadium.software/how-it-works/application-users-and-roles.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
