---
title: "Team & roles"
description: "Invite members and control access with roles and permissions."
icon: UserCog
---

A Warmbly workspace can be shared with your whole team. You invite people by email, give each person a role, and that role decides what they can see and change. This guide covers inviting members, the member roster, the built-in roles and what each one can do, and how to remove people.

Everything here lives under **Settings**: the roster and invitations are on the **Members** page, and the roles and permission matrix are on the **Roles & access** page.

<Callout type="info" title="Who can manage the team">
Inviting members, changing roles, removing members, and managing roles all require the **Manage team** permission (the owner and the seeded Admin role have it; any custom role can carry it). Members without it see the roster read-only, and the Roles & access page shows a permission notice instead.
</Callout>

## Inviting members

On **Settings → Members**, the owner sees an **Invite teammates** box at the top.

To invite people:

1. Type or paste email addresses into the **Emails** field. You can add many at once. Separate addresses with a comma, semicolon, space, or by pressing Enter. If you paste a list, Warmbly splits it for you.
2. Each address becomes a chip. Valid-looking addresses appear in grey; ones that do not look like an email turn red so you can spot and remove them before sending.
3. Pick a **Role** for everyone in this batch. As you switch roles, a short description on the right tells you exactly what you are granting before you commit.
4. Click **Send invitations**.

Warmbly sends one invitation per address and reports the result with a middot separator, for example "Invited 2 · 1 failed" when some addresses could not be invited (or "All invitations failed" if none succeed). Invalid addresses are skipped automatically and called out in a warning.

<Callout type="info" title="You can change a role later">
The role you choose at invite time is not permanent. Once someone joins, you can change their role inline from the roster (see below), so it is fine to start people on a narrower role and widen it later.
</Callout>

### Pending invitations

Invitations that have been sent but not yet accepted appear in the **Pending invitations** section, with the invitee's email, the role they were invited as, and an expiry date.

For each pending invite, the owner can:

- **Copy invite link** copy a direct join link to share with the person yourself (for example over chat) instead of waiting on the invitation email.
- **Cancel invitation** revoke the invite before it is accepted. You will be asked to confirm first.

Invitations expire on the date shown, so re-invite anyone whose invite lapses before they accept.

## The member roster

The **Members** section lists everyone with access to the workspace. Each row shows the person's email, their **role**, and the date they **joined**. Your own row is tagged with a small "you" label.

The header tells you how many members are in the workspace.

### Changing a role inline

The owner can change any member's role straight from the roster. Click the role pill on a member's row to open a picker, choose a new role, and confirm. Warmbly saves the change and the per-role member counts on the Roles & access page update immediately.

A few rules apply:

- The **owner** role is shown as a fixed badge and cannot be changed from this picker. Ownership moves through a separate ownership transfer, not the role picker.
- You cannot change your own role if you are the owner.
- The picker offers the assignable roles only (Admin, Manager, Viewer). The legacy **Member** role is not offered for new assignments.

## Roles and the permission matrix

Roles in Warmbly are workspace data. Every new workspace starts with three seeded roles (Admin, Manager, and Viewer), and all of them are ordinary roles: rename them, recolor them, change their permissions, delete them, or add your own. Owner is not a role but a membership status; there is exactly one owner per workspace.

The **Roles & access** page shows a card for each role with a short description and a live count of how many people currently hold it, followed by the full **permission matrix**.

### The seeded roles

| Role | What it starts with |
| --- | --- |
| **Owner** (status, not a role) | Full control of the workspace, including ownership transfer. |
| **Admin** | Everything except transferring ownership. |
| **Manager** | The day-to-day operator. Can run campaigns, manage contacts and mailboxes, and use integrations, but has no team, billing, settings, or API-key access. |
| **Viewer** | Read-only. Can see campaigns, contacts, and reports but cannot change anything. |

These are starting points, not fixed tiers. Any of them can be edited or deleted once the workspace exists.

### What each permission means

The permission matrix groups every capability into four areas. The table below lists each capability and what it controls.

**Data** (campaigns, contacts, reports):

| Capability | What it allows |
| --- | --- |
| View campaigns | Read campaign settings, sequences, and analytics. |
| Manage campaigns | Create, edit, and archive campaigns. |
| View contacts | Read contacts, segments, and tags. |
| Manage contacts | Create, edit, and delete contacts. |
| Manage sequences | Edit step content and spacing inside a campaign. |
| View analytics | See deliverability and engagement reports. |
| Use integrations | Push contacts and deals to connected CRMs and tools. |

**People** (members and ownership):

| Capability | What it allows |
| --- | --- |
| Manage team | Invite, remove, and re-role members. |
| Transfer ownership | Hand workspace ownership to another member. |

**Sending** (mailboxes and campaign delivery):

| Capability | What it allows |
| --- | --- |
| Manage mailboxes | Connect, disconnect, and configure sending mailboxes. |
| Send campaigns | Start, pause, and resume campaigns. |
| Use unified inbox | Read and reply from the shared inbox. |

**Workspace** (settings, billing, API):

| Capability | What it allows |
| --- | --- |
| Manage settings | Edit workspace-wide settings. |
| Manage billing | View invoices and change the subscription plan. |
| Manage API keys | Create and revoke workspace API keys. |

### Who gets what

This is how the built-in roles map onto those capabilities. A check means the role grants the capability.

| Capability | Owner | Admin | Manager | Viewer |
| --- | --- | --- | --- | --- |
| View campaigns | Yes | Yes | Yes | Yes |
| Manage campaigns | Yes | Yes | Yes | No |
| View contacts | Yes | Yes | Yes | Yes |
| Manage contacts | Yes | Yes | Yes | No |
| Manage sequences | Yes | Yes | Yes | No |
| View analytics | Yes | Yes | Yes | Yes |
| Use integrations | Yes | Yes | Yes | No |
| Manage team | Yes | Yes | No | No |
| Transfer ownership | Yes | No | No | No |
| Manage mailboxes | Yes | Yes | Yes | No |
| Send campaigns | Yes | Yes | Yes | No |
| Use unified inbox | Yes | Yes | Yes | No |
| Manage settings | Yes | Yes | No | No |
| Manage billing | Yes | Yes | No | No |
| Manage API keys | Yes | Yes | No | No |

In short: **Admin** is the owner minus ownership transfer, **Manager** is everything operational without team, settings, billing, or API keys, and **Viewer** is read-only.

## Custom roles

Anyone with team management access can create additional roles on the **Roles & access** settings page:

1. Click **New role** and give it a name (up to 50 characters), a color for the role pickers, and an optional description. Only the name "owner" is reserved.
2. Pick a template under **Start from** to copy a permission bundle as a starting point, then toggle individual permissions on or off.
3. Save, then assign the role from the member roster's role picker or directly in the invite flow.

A few rules keep custom roles safe:

- **Editing a role updates everyone assigned to it, immediately.** The editor shows how many members will be affected before you save.
- **You can only grant permissions you hold yourself.** A manager with team access cannot mint a role stronger than their own and assign it to someone.
- **Ownership transfer can never be part of a custom role.** It stays exclusive to the owner.
- **Members can hold several roles at once.** Their effective access is the combined (union) permissions of every role assigned to them.
- **Deleting a role is always allowed.** It is removed from anyone holding it; their remaining roles still apply. A member left with no roles keeps their membership but has no permissions until reassigned.
- Each workspace can have up to 25 roles in total (including the seeded ones).

Custom roles apply everywhere permissions do: API access checks, dashboard visibility, and which realtime events a member's live dashboard receives.

## Removing members

To remove someone, the owner hovers (or taps on touch) their row in the roster and clicks the remove icon. You will be asked to confirm before the member is removed.

You cannot remove:

- the **owner**
- **yourself**

If you need to leave a workspace you own, transfer ownership first, then the new owner can remove you.

## Related guides

<Cards>
  <Card title="Campaigns" href="/guides/campaigns" />
  <Card title="Unified inbox" href="/guides/unibox" />
  <Card title="Deliverability" href="/guides/deliverability" />
  <Card title="Permissions reference (API keys)" href="/api/permissions" />
</Cards>

The roles on this page control what teammates can do in the dashboard. They are separate from **API key** permissions, which control what programmatic integrations can do. See the [Permissions reference](/api/permissions) for the API-key permission set.
