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

# Members & Roles

A **member** is a person with access to a [team](/admin/teams). Members are invited by email and assigned a **role** that controls what they can do across the team and its projects. Member access is per-team — adding someone to one team doesn't give them access to another.

## Roles

Frontic has three roles:

<CardGroup cols={3}>
  <Card title="Owner" icon="crown">
    Full control of the team — can change billing, invite or remove
    any member, transfer or delete the team. There's always at least
    one Owner.
  </Card>

  <Card title="Admin" icon="user-gear">
    Full project access plus member management. Can invite Members
    and Admins, edit project configuration, publish releases. Can't
    change billing or remove the team.
  </Card>

  <Card title="Member" icon="user">
    Access to the projects in the team — view, edit, and use Studio
    to ship changes. Can't manage other members or change billing.
  </Card>
</CardGroup>

Roles apply at the team level — a Member is a Member of every project in the team. Per-project access scoping isn't a separate dial; if someone shouldn't see one of your projects, they shouldn't be in the team.

## Permissions

Members get a read-only baseline across every project surface — view storages, blocks, pages, releases, Studio jobs, Context Base documents, and so on. Anything that **changes state** is gated to Admin or Owner. The two tables below highlight what each higher tier unlocks over the one below.

### What Admin adds over Member

Day-to-day building, shipping, and managing the project:

| Area              | What Admin can do                                                  |
| ----------------- | ------------------------------------------------------------------ |
| API Builder       | Create, edit, delete Blocks, Listings, and Page routes             |
| Data Storages     | Create, edit, delete storages                                      |
| Data Types        | Manage composites and enums                                        |
| Domains & Locales | Add and remove domains; add locales (delete is Owner-only)         |
| Data Syncs        | Configure mappings (delete is Owner-only)                          |
| Integrations      | Connect new integrations (disconnect is Owner-only)                |
| Releases          | Publish previews, promote to public                                |
| Studio            | Full access — chat, jobs, context documents, credentials, settings |
| Context Base      | Author Skills/Rules/Commands/Guides; promote to team-global scope  |
| API Keys          | View and create Ingest/Fetch keys (delete is Owner-only)           |
| Project           | Edit project name and description                                  |
| Members           | Invite Members and Admins; change non-Owner roles                  |

### What Owner adds on top of Admin

Team-level governance and one-way destructive actions:

| Area              | Owner-only                                                                                |
| ----------------- | ----------------------------------------------------------------------------------------- |
| Billing & plan    | View billing, change plan, manage payment details                                         |
| Team settings     | Rename or delete the team                                                                 |
| Member governance | Promote members to Owner; remove members                                                  |
| Destructive ops   | Disconnect integrations, remove locales, delete API keys, delete data sync configurations |

## Inviting members

Open **Settings → Users** in the admin app and add invitations by email. Each invitation carries:

* **Email address** — where the invitation goes.
* **Role** — what the new member can do once they accept.

The recipient gets an email with a sign-in link. New members appear in the Users list once they accept.

<Screenshot name="admin/members-invite" caption="Members & roles — invite members and assign their role" alt="Settings Users page with the invite dialog open showing email and role inputs" />

## Changing a role

From the Users list, open the row for the member you want to change and pick a different role. The change applies on the member's next request to the admin app — no re-login needed.

<Screenshot name="admin/members-change-role" caption="Change a member's role from the Users list" alt="Users list with a row's role dropdown open showing Owner, Admin, and Member options" />

A few rules:

* An Owner can promote anyone, including other members to Owner. Multiple Owners are fine.
* The team always needs at least one Owner — the last Owner can't be demoted or removed without first promoting another member.
* Admins can manage Members and other Admins, but can't promote anyone to Owner or remove Owners.

## Removing a member

Removing a member revokes their access to the team and every project in it. Their work history (commits, agent sessions, configuration changes) stays attributed to them — removal is about access, not erasure.

## Related

<CardGroup cols={2}>
  <Card title="Teams" icon="building" href="/admin/teams">
    The container members belong to.
  </Card>

  <Card title="Billing & Plans" icon="credit-card" href="/admin/billing-and-plans">
    Plan tiers also gate which features each member can reach.
  </Card>

  <Card title="Buddy" icon="sparkles" href="/essentials/buddy">
    Buddy operates with the role of the member currently signed in —
    a Member's Buddy can't make changes the Member can't.
  </Card>

  <Card title="MCP Tools" icon="microchip-ai" href="/ide/mcp-tools">
    The OAuth token for an editor MCP carries the same role as the
    member who authorised it.
  </Card>
</CardGroup>
