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

# Members & roles

> Invite people, assign roles, and manage invitations across organizations, tenants, and projects on the Synheart Platform

The Synheart Platform manages access at three scopes: **organization**, **tenant**, and **project**. Each scope has its own members list, its own roles, and its own invitation flow, but they all share the same email-based invite pattern.

This page covers who can do what, how to invite and remove people at each level, and how invitations are accepted. For the workspaces themselves, see [Organizations & tenants](/platform/organizations-and-tenants).

<Note>
  Access checks run against your membership at each scope. A person invited to a project does not automatically gain organization-wide access, and removing someone from a tenant or project does **not** remove their organization access.
</Note>

## Roles at a glance

| Scope            | Roles                                              |
| ---------------- | -------------------------------------------------- |
| **Organization** | Owner / Admin / Member                             |
| **Tenant**       | Tenant admin / Tenant member                       |
| **Project**      | Project admin / Project developer / Project viewer |

* **Owner**: full control of the organization, including billing and deletion. Only the owner can change the subscription.
* **Admin**: manage members, settings, and resources, but not org-level billing changes.
* **Member**: work inside the resources they're added to (read-only at org level until granted tenant/project roles).

<Tip>
  Org-level pages simplify roles to **Owner / Admin / Member** in the switcher and lists. Tenant and project pages use their own, more granular role names shown above.
</Tip>

***

## Organization members

Open **Members** from the sidebar. The page lets you invite people to the organization, manage roles, and review pending invitations.

Summary cards count members by role, and two tabs, **Members** and **Invitations**, that split active people from pending invites. Use the **Search members** box and the **All roles / Owner / Admin / Viewer** filter to narrow the list.

### Invite an organization member

1. Click **Invite member**.
2. In the **Invite member** modal, fill in:
   * **Email**: the invitee's email address.
   * **Invite to** / **Target**: the scope the invite grants (organization, or a specific tenant/project).
   * **Role**: the role to assign.
3. Click **Send invitation**.

An email with an accept link is sent to the invitee. The invite appears under the **Invitations** tab with a **Pending** badge until accepted.

<Note>
  Your plan caps how many team members an organization can have. When you reach the cap, **Invite member** is disabled, and (depending on plan) you may see an **Add seat** option that bills an extra seat to your next invoice. See [Billing & usage](/platform/billing#extra-usage).
</Note>

### Manage members and invitations

| Action            | Where           | Effect                                                         |
| ----------------- | --------------- | -------------------------------------------------------------- |
| **Change role**   | Member row menu | Updates the member's organization role                         |
| **Remove member** | Member row menu | They will lose access to all tenants and projects in this org  |
| **Reinvite**      | Invitations tab | Resends the invitation email                                   |
| **Cancel invite** | Invitations tab | Removes the pending invitation so it can no longer be accepted |

***

## Tenant members

Open a tenant's members page from **Tenants → Manage members**, or the **Members** link on a tenant card.

Summary cards count **Total members**, **Tenant admins**, **Tenant members**, and **Other roles** (inherited or org-scope). Use **Invite to this tenant** to add people.

### Invite a tenant member

Tenant invitations are limited to people who already belong to the organization. Pick an organization member (or, if permitted, an email address), choose a role, and **Send invitation**:

| Role              | Description                              |
| ----------------- | ---------------------------------------- |
| **Tenant admin**  | Manage tenant members and settings       |
| **Tenant member** | Standard access to the tenant's projects |

Use **Remove from tenant** on a member row to revoke tenant access. This does not remove their organization access; you need to revoke that separately.

***

## Project members

Open a project's members page from the **Members** link in the project sidebar.

Summary cards count **Total members**, **Project admins**, **Developers**, and **Viewers**. A tenant must be selected first; otherwise you'll see *"Create a tenant for this organization to view project members."*

### Invite a project member

Use **Invite to this project** and choose a role:

| Role                  | Description                                   |
| --------------------- | --------------------------------------------- |
| **Project admin**     | Manage the project, its members, and settings |
| **Project developer** | Build and integrate: apps, keys, wearables    |
| **Project viewer**    | Read-only access to project data              |

<Warning>
  Project invitations require a selected workspace (tenant). If none is selected you'll see *"Select a workspace (tenant) to send project invitations."*
</Warning>

Use **Remove from project** to revoke project access (org access is unaffected).

***

## Accept an invitation

Invitations are email-based and tied to a one-time token. How you accept depends on where you start:

| Entry point                   | When it's used                                            |
| ----------------------------- | --------------------------------------------------------- |
| Invite email link (signed in) | Primary flow: validates the token and joins on **Accept** |
| Invite email link (new user)  | Lets a brand-new user create an account, then accept      |
| In-app org invite             | Accept a pending org invite from inside the dashboard     |
| Profile → Invitations         | Review and accept invitations on your account             |

On the invitation page you'll see the invitation details (**Email**, **Role**, **Organization**, **Invited by**, and **Expires**) with **Accept** and **Decline** actions. After accepting, you're redirected to **Projects**.

<Warning>
  Invitations expire. An expired link shows *"This invitation expired on {date}. Please contact {inviter} for a new invitation."* Ask the inviter to **Reinvite** you.
</Warning>

***

## Next

<CardGroup cols={2}>
  <Card title="Organizations & tenants" icon="building" href="/platform/organizations-and-tenants">
    Create and configure the workspaces these members belong to.
  </Card>

  <Card title="Billing & usage" icon="credit-card" href="/platform/billing">
    Team-member seats, plan limits, and adding seats.
  </Card>

  <Card title="Account & security" icon="user" href="/platform/account">
    Manage your own profile, password, and pending invitations.
  </Card>

  <Card title="Projects" icon="folder-tree" href="/platform/projects">
    Organize apps, devices, and sessions inside a project.
  </Card>
</CardGroup>
