# Introduction to Adding Users & Permissions

In Stacker, there are two main types of users: **internal** and **external**.

**Internal Users -** [**add users individually**](/stacker-astra/user-access/add-users.md#add-individual-users)&#x20;

Internal users have access to edit the app’s **layouts**, **data grid**, and **schema**. You can add them **individually** or **in groups**. When adding a user individually, they will receive an invite link to access the app. You can assign them an **internal role** (e.g., administrator) to allow for editing the data grid and schema. Or assign them a role to interact with only the data in the UI to be an **external user.**

**External Users -** [**add table groups**](/stacker-astra/user-access/add-users.md#add-users-to-app)

External users are typically added to **table groups**, which allow you to assign access and roles to multiple users at once. These users can update or create data in the app’s UI but cannot access the **layouts** or **data grid**. External users **do not** receive notifications when added to a table group. You can assign them an **external role** (e.g., Teacher or Student), to then create permissions on specific data they can interact with.&#x20;

Table groups are useful for managing permissions for **external users** in bulk, allowing you to control who can access the app and what they can do.

***

#### Key Points:

* **Internal users** can be added individually or in groups and have full access to layouts, data grids, and schema.
* **External users** can be added as **table groups**, where you can assign roles and manage their access in bulk.
* External users have restricted access to only the data within the app’s UI (no layout or data grid editing).
* Add any user individually and assign them a role to interact with the app.&#x20;

***

## Adding Permissions

Permissions in Stacker are designed to be intuitive, with icons and labels that provide a quick overview of each setting

* **Permission Name**: Indicates the permission rule and the user role it applies to, based on the permission sharing settings.
* **Access Levels**: Determines which records a user can access—whether they can view all, some, or no records at all—managed through record filters.
* **Actions**: Users can be granted capabilities for each field, including:
  * **Read**: Access to view data.
  * **Update**: Permission to modify existing data.
  * **Create**: Ability to add new records.
  * **Delete**: Permission to remove records.

{% hint style="info" %}
A user can access a table if *any* of the permission rules give them access.

By default, all users can read, update, and create data.
{% endhint %}

### **Edit Permissions**

1. Go to <img src="/files/xCkvVa1dO3F7n6fTHS3C" alt="" data-size="line">**Manage fields and data**
2. Select **Permissions**&#x20;

### Editing your Permissions

{% tabs %}
{% tab title="Record Filters" %}
Limit the records your users can access based on certain conditions in the data grid.&#x20;

**All Records -** allow users to access all records on the table

**Some Records** - allow users to access only records that meet certain conditions. Here you can set up an [Ownership Filter](/stacker-astra/security/add-user-permissions/create-or-edit-a-permission-rule/ownership-filter.md) or [Data Filter](/stacker-astra/security/add-user-permissions/create-or-edit-a-permission-rule/data-filter.md) to limit the records a user can see on the table.

<figure><img src="/files/wBWYswLiDKTfFRLh275h" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="Permission Sharing" %}
Select which users receive this permission.

**Everyone -** All users, regardless of their role will have this permission&#x20;

**Some users** - Only users in a certain role or roles will be impacted by this role.&#x20;

<figure><img src="/files/IZzpv4jxF8M2MXHIhGuM" alt=""><figcaption></figcaption></figure>
{% endtab %}

{% tab title="Field Access" %}
Choose the fields that the users can Read, Update or Create.&#x20;

**Read -** Read only access to the field.

**Update -** Ability to edit or change a fields data.

**Create -** Allow users to create new data on the table.&#x20;

<figure><img src="/files/8RoczUOlhQMU8LXSAo5O" alt=""><figcaption></figcaption></figure>
{% endtab %}
{% endtabs %}

{% hint style="info" %}
Common troubleshooting permissions steps can be found here.&#x20;
{% endhint %}


---

# 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.stackerhq.com/stacker-astra/getting-started/introduction-to-adding-users-and-permissions.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.
