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

# Users

> Every person who can log in to Qminder has a corresponding User object.

Users can be granted access to locations on a per-location basis, either with the "MANAGER" or "CLERK" access level.

Users can also be granted access to the entire Account, if they are given the "ADMIN" permission.

### Fields

Users have the following data fields:

| Name                 | Type   | Description                                                                                                              |
| -------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------ |
| **id**               | number | A user's unique ID in Qminder                                                                                            |
| **email**            | string | A user's email address. Users will use this email address to log in to Qminder.                                          |
| **firstName**        | string | The user's first (given) name.                                                                                           |
| **lastName**         | string | The user's last (family) name.                                                                                           |
| **selectedLocation** | number | The ID of the location that the user has currently selected.                                                             |
| **roles**            | array  | An array of all access roles that the user has.                                                                          |
| **roles\[].id**      | number | The ID of the access role.                                                                                               |
| **roles\[].type**    | string | The access level granted by this access role.- \*"CLERK"\*\* = can service visitors and see statistics about themselves. |

* \*"MANAGER"\*\* = can manage settings of a single location and see statistics for the whole location, and all clerks in that location.
* \*"ADMIN"\*\* = can manage settings of the whole account. Admins have "MANAGER" access to all locations in an Account.
* \*"OWNER"\*\* = same as "ADMIN", but this role cannot be granted to others or removed from the Owner of the account. |
  \| **roles\[].location** | number | The ID of the Location that this access role grants access to. **Only "CLERK" and "MANAGER" role types have a location ID field.**                                                                                                                                                                                                                                                                                                                                                                                |

### Code examples

This is a Line object as returned by our RESTful API and our official libraries.

<CodeGroup>
  ```bash bash theme={null}
  {
    "id": 891,
    "email": "[email protected]",
    "firstName": "Test",
    "lastName": "User",
    "selectedLocation": 4022,
    "roles": [
        {
            "type": "ADMIN"
        }
    ]
  }
  ```
</CodeGroup>
