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

# Team roles & permissions (/introduction/essentials/team-roles-and-permissions)

Your team in the [dashboard](https://app.onlyfansapi.com) can have as many members as you need, and every member is assigned a **role** that determines what they can see and do. This page explains each role, the permissions it grants by default, the full list of available permissions, and how to build your own custom roles.

## How roles & permissions work

* A team has **one Owner** and any number of members. Each member is assigned a single **role**.
* The **Owner** always has every permission. Ownership is set when the team is created or via an ownership transfer — it **cannot** be assigned by invite.
* **Permissions are granular** and named `category.action` (for example, `smart-links.manage`). A role is simply a named bundle of default permissions.
* **Extra permissions** can be granted on top of a role's defaults. These are additive — for example, you can give a Viewer one extra capability without switching them to a Custom role.
* A **Custom role** has no default permissions. You build it up entirely by ticking individual permissions from the grouped list.
* A member's **effective permissions** = their role's defaults **+** any extra permissions granted to them.

<Callout type="info">
  The roles you can assign when inviting or editing a member are **Admin**,
  **Member**, **Developer**, **Viewer**, and **Custom**. The **Owner** role is
  not in this list — it is set only at team creation or via ownership transfer.
</Callout>

## Choosing a role

| Role          | Summary                                                                                                                                                           |
| ------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Owner**     | Full control over the team, billing, and all settings. Always has every permission. Set at team creation or via ownership transfer; cannot be assigned by invite. |
| **Admin**     | Full access to everything except deleting the team.                                                                                                               |
| **Member**    | Create and manage accounts, links, pixels, reports, and creator tools. No team-management or billing access.                                                      |
| **Developer** | Create and use API keys, webhooks, and integrations. Mostly view-only on creator features.                                                                        |
| **Viewer**    | View-only access to all data and reports.                                                                                                                         |
| **Custom**    | A custom set of permissions you choose yourself.                                                                                                                  |

When deciding which role to assign:

* **Admin** — for trusted co-managers who should be able to do everything you can, except delete the team. Admin equals every permission except *Delete the team*.
* **Member** — for day-to-day operators. They get full operational access to accounts, links, pixels, free trials, reports, and developer/AI/creator tools, but **no** team management, **no** billing, and they **cannot** purchase credits.
* **Developer** — for engineers integrating with the API. They get full control of API keys, webhooks, integrations, and data exports, but are view-only on creator features (accounts, smart links, free trials, and so on).
* **Viewer** — for stakeholders who only need to look. Their defaults are exactly "all view permissions" — every `*.view` capability and nothing that creates, edits, deletes, or manages.
* **Custom** — when none of the presets fit. A Custom role starts empty; you tick individual permissions from the grouped list below.

<Callout>
  Need a role that's *almost* right? Instead of building a Custom role from
  scratch, assign the closest preset and grant a few **extra permissions** on
  top. See [Custom roles & extra permissions](#custom-roles--extra-permissions).
</Callout>

## Permissions reference

The tables below list every available permission, grouped by category. Each row shows what the permission allows, its internal key (useful for API and role automation), and whether each role gets it **by default** (✓) or not (—).

The **Owner** is granted every permission, so it is ✓ on every row. **Custom** roles start with **no** default permissions and are therefore omitted from the matrix.

### Team Management

| Permission                    | Allows                            | Key                   | Owner | Admin | Member | Developer | Viewer |
| ----------------------------- | --------------------------------- | --------------------- | :---: | :---: | :----: | :-------: | :----: |
| Edit team name & settings     | Edit the team's name and settings | `team.update`         |   ✓   |   ✓   |    —   |     —     |    —   |
| Delete the team               | Permanently delete the team       | `team.delete`         |   ✓   |   —   |    —   |     —     |    —   |
| View team members             | See the list of team members      | `team.members.view`   |   ✓   |   ✓   |    —   |     —     |    ✓   |
| Invite, remove & change roles | Manage team membership and roles  | `team.members.manage` |   ✓   |   ✓   |    —   |     —     |    —   |

### Billing & Credits

| Permission                          | Allows                                           | Key              | Owner | Admin | Member | Developer | Viewer |
| ----------------------------------- | ------------------------------------------------ | ---------------- | :---: | :---: | :----: | :-------: | :----: |
| View plans, invoices & payment info | See billing plans, invoices, and payment details | `billing.view`   |   ✓   |   ✓   |    —   |     —     |    ✓   |
| Subscribe, cancel & manage payments | Subscribe, cancel, and manage payment methods    | `billing.manage` |   ✓   |   ✓   |    —   |     —     |    —   |
| View credit balance                 | See the current credit balance                   | `credits.view`   |   ✓   |   ✓   |    ✓   |     ✓     |    ✓   |
| Purchase credits                    | Buy additional credits                           | `credits.topup`  |   ✓   |   ✓   |    —   |     —     |    —   |
| View API usage & credit history     | See API usage and credit history                 | `usage.view`     |   ✓   |   ✓   |    ✓   |     ✓     |    ✓   |

### OnlyFans Accounts

| Permission                  | Allows                             | Key               | Owner | Admin | Member | Developer | Viewer |
| --------------------------- | ---------------------------------- | ----------------- | :---: | :---: | :----: | :-------: | :----: |
| View accounts               | See connected OnlyFans accounts    | `accounts.view`   |   ✓   |   ✓   |    ✓   |     ✓     |    ✓   |
| Add, edit & delete accounts | Connect, edit, and remove accounts | `accounts.manage` |   ✓   |   ✓   |    ✓   |     —     |    —   |

### Smart Links

| Permission                        | Allows                            | Key                  | Owner | Admin | Member | Developer | Viewer |
| --------------------------------- | --------------------------------- | -------------------- | :---: | :---: | :----: | :-------: | :----: |
| View smart links & reports        | See smart links and their reports | `smart-links.view`   |   ✓   |   ✓   |    ✓   |     ✓     |    ✓   |
| Create, edit & delete smart links | Manage smart links                | `smart-links.manage` |   ✓   |   ✓   |    ✓   |     —     |    —   |

### Postbacks

| Permission                      | Allows                   | Key                | Owner | Admin | Member | Developer | Viewer |
| ------------------------------- | ------------------------ | ------------------ | :---: | :---: | :----: | :-------: | :----: |
| View postbacks                  | See configured postbacks | `postbacks.view`   |   ✓   |   ✓   |    ✓   |     ✓     |    ✓   |
| Create, edit & delete postbacks | Manage postbacks         | `postbacks.manage` |   ✓   |   ✓   |    ✓   |     —     |    —   |

### Meta Pixels

| Permission                        | Allows                     | Key                  | Owner | Admin | Member | Developer | Viewer |
| --------------------------------- | -------------------------- | -------------------- | :---: | :---: | :----: | :-------: | :----: |
| View meta pixels                  | See configured meta pixels | `meta-pixels.view`   |   ✓   |   ✓   |    ✓   |     ✓     |    ✓   |
| Create, edit & delete meta pixels | Manage meta pixels         | `meta-pixels.manage` |   ✓   |   ✓   |    ✓   |     —     |    —   |

### Free Trials

| Permission                        | Allows                              | Key                  | Owner | Admin | Member | Developer | Viewer |
| --------------------------------- | ----------------------------------- | -------------------- | :---: | :---: | :----: | :-------: | :----: |
| View free trials & analytics      | See free trials and their analytics | `free-trials.view`   |   ✓   |   ✓   |    ✓   |     ✓     |    ✓   |
| Create, edit & delete free trials | Manage free trials                  | `free-trials.manage` |   ✓   |   ✓   |    ✓   |     —     |    —   |

### Tracking Links

| Permission                           | Allows                                 | Key                     | Owner | Admin | Member | Developer | Viewer |
| ------------------------------------ | -------------------------------------- | ----------------------- | :---: | :---: | :----: | :-------: | :----: |
| View tracking links & analytics      | See tracking links and their analytics | `tracking-links.view`   |   ✓   |   ✓   |    ✓   |     ✓     |    ✓   |
| Create, edit & delete tracking links | Manage tracking links                  | `tracking-links.manage` |   ✓   |   ✓   |    ✓   |     —     |    —   |

### API Keys & Logs

| Permission                     | Allows                                | Key                 | Owner | Admin | Member | Developer | Viewer |
| ------------------------------ | ------------------------------------- | ------------------- | :---: | :---: | :----: | :-------: | :----: |
| View API keys                  | See API keys                          | `api-keys.view`     |   ✓   |   ✓   |    ✓   |     ✓     |    ✓   |
| Create, edit & delete API keys | Manage API keys                       | `api-keys.manage`   |   ✓   |   ✓   |    ✓   |     ✓     |    —   |
| View request logs              | See API request logs                  | `logs.view`         |   ✓   |   ✓   |    ✓   |     ✓     |    ✓   |
| Use API playground             | Access the interactive API playground | `playground.access` |   ✓   |   ✓   |    ✓   |     ✓     |    —   |

### Webhooks

| Permission                     | Allows                  | Key               | Owner | Admin | Member | Developer | Viewer |
| ------------------------------ | ----------------------- | ----------------- | :---: | :---: | :----: | :-------: | :----: |
| View webhooks                  | See configured webhooks | `webhooks.view`   |   ✓   |   ✓   |    ✓   |     ✓     |    ✓   |
| Create, edit & delete webhooks | Manage webhooks         | `webhooks.manage` |   ✓   |   ✓   |    ✓   |     ✓     |    —   |

### Integrations

| Permission                             | Allows                                | Key                        | Owner | Admin | Member | Developer | Viewer |
| -------------------------------------- | ------------------------------------- | -------------------------- | :---: | :---: | :----: | :-------: | :----: |
| View team integrations                 | See team integrations                 | `team-integrations.view`   |   ✓   |   ✓   |    ✓   |     ✓     |    ✓   |
| Manage team integrations               | Manage team integrations              | `team-integrations.manage` |   ✓   |   ✓   |    ✓   |     ✓     |    —   |
| Configure MCP / AI client integrations | Set up MCP and AI client integrations | `mcp.configure`            |   ✓   |   ✓   |    ✓   |     ✓     |    —   |

### AI Analytics

| Permission                        | Allows                                 | Key                            | Owner | Admin | Member | Developer | Viewer |
| --------------------------------- | -------------------------------------- | ------------------------------ | :---: | :---: | :----: | :-------: | :----: |
| View AI Analytics                 | See AI Analytics                       | `ai-analytics.view`            |   ✓   |   ✓   |    ✓   |     ✓     |    ✓   |
| View AI fan profile summaries     | See AI-generated fan profile summaries | `fan-profile-summary.view`     |   ✓   |   ✓   |    ✓   |     ✓     |    ✓   |
| Generate AI fan profile summaries | Generate AI fan profile summaries      | `fan-profile-summary.generate` |   ✓   |   ✓   |    ✓   |     —     |    —   |
| View fan notes                    | See fan notes                          | `fan-notes.view`               |   ✓   |   ✓   |    ✓   |     ✓     |    ✓   |
| Edit fan notes                    | Create and edit fan notes              | `fan-notes.manage`             |   ✓   |   ✓   |    ✓   |     —     |    —   |
| Configure daily payouts           | Configure daily payouts                | `daily-payouts.manage`         |   ✓   |   ✓   |    ✓   |     —     |    —   |

### Data Exports

| Permission                     | Allows                           | Key                  | Owner | Admin | Member | Developer | Viewer |
| ------------------------------ | -------------------------------- | -------------------- | :---: | :---: | :----: | :-------: | :----: |
| View data exports              | See data exports                 | `data-export.view`   |   ✓   |   ✓   |    ✓   |     ✓     |    ✓   |
| Create & download data exports | Create and download data exports | `data-export.manage` |   ✓   |   ✓   |    ✓   |     ✓     |    —   |

### Tools

| Permission                      | Allows                           | Key                   | Owner | Admin | Member | Developer | Viewer |
| ------------------------------- | -------------------------------- | --------------------- | :---: | :---: | :----: | :-------: | :----: |
| View AI voice messages          | See AI voice messages            | `ai-voice.view`       |   ✓   |   ✓   |    ✓   |     ✓     |    ✓   |
| Create & edit AI voice messages | Manage AI voice messages         | `ai-voice.manage`     |   ✓   |   ✓   |    ✓   |     —     |    —   |
| View housekeeping               | See housekeeping                 | `housekeeping.view`   |   ✓   |   ✓   |    ✓   |     ✓     |    ✓   |
| Start & configure housekeeping  | Start and configure housekeeping | `housekeeping.manage` |   ✓   |   ✓   |    ✓   |     —     |    —   |

## Custom roles & extra permissions

When the presets don't fit, you have two options:

### Custom roles

A **Custom** role starts with **no** permissions. You build it up entirely by ticking individual permissions from the grouped list above. Use this when a member needs a unique combination of capabilities that none of the presets provide.

### Extra permissions

Any role can be granted **individual extra permissions** beyond its defaults. These are **additive**, so you don't have to switch a member to a Custom role just to give them one more capability — for example, you can grant a **Viewer** a single `*.manage` permission while keeping all their view-only defaults.

A member's **effective access** is always: **role defaults** + **any extra permissions granted to them**

<Callout type="info" title="Email notification defaults">
  By default, **Owner**, **Admin**, and **Member** roles receive
  authentication-action-required emails (for example, when an account needs
  re-authentication).
</Callout>