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

# Team

> List team members, send and manage invites, edit teams and read the activity log with an API key. Growth plan and up.

With an API key you act as the **store owner**. Accepting an invite and
switching stores are a person's own actions and stay in the dashboard. See
[Team members](/operations/team) for roles, areas and seats.

| Method | Path | What it does |
| - | - | - |
| `GET` | `/team` | Members, pending invites, teams and seat usage |
| `GET` | `/team/activity` | Activity log, newest first (`before`, `limit`) |
| `POST` | `/team/invites` | Invite `{ email, role, teamIds? }` |
| `POST` | `/team/invites/{id}/resend` | New link, 7 more days (once a minute, 5 times) |
| `DELETE` | `/team/invites/{id}` | Cancel an invite |
| `PATCH` | `/team/members/{id}` | Change `{ role?, teamIds?, status? }` |
| `DELETE` | `/team/members/{id}` | Remove someone |
| `POST` | `/team/teams` | Create a team `{ name, areas }` |
| `PATCH` | `/team/teams/{id}` | Rename or re-scope a team |
| `DELETE` | `/team/teams/{id}` | Delete a team |

Roles: `owner`, `admin`, `member`. Areas: `products`, `orders`, `emails`,
`marketing`, `analytics`, `developers`.

## Invite someone

```bash theme={"system"}
curl -X POST https://api.pocketsflow.com/team/invites \
  -H "Authorization: Bearer pk_live_…" \
  -H "Content-Type: application/json" \
  -d '{ "email": "sara@example.com", "role": "member", "teamIds": ["6710b2c49e3f1a0012cd56ef"] }'
```

```json theme={"system"}
{
  "invite": {
    "id": "6710b2c49e3f1a0012cd5699",
    "email": "sara@example.com",
    "role": "member",
    "teamIds": ["6710b2c49e3f1a0012cd56ef"],
    "expiresAt": "2026-10-23T12:00:00.000Z"
  },
  "emailSent": true
}
```

## Errors

| Status | `code` | Meaning |
| - | - | - |
| `403` | `FEATURE_LOCKED` | Your plan doesn't include team members (Growth and up) |
| `403` | `SEAT_LIMIT` | Every seat is taken (`details.limit`, `details.used`, `details.pending`) |
| `403` | `ROLE_FORBIDDEN` | Only owners give or change the owner role |
| `409` | `ALREADY_INVITED` / `ALREADY_MEMBER` | That email already has an invite or a seat |
| `409` | `LAST_OWNER` | The store would have no owner left |
| `429` | `INVITE_RATE_LIMITED` | More than 20 invites in an hour |

## MCP tools

The [MCP server](/api-reference/mcp-server) exposes the same operations:
`list_team_members`, `list_team_activity`, `invite_team_member`,
`resend_team_invite`, `cancel_team_invite`, `update_team_member`,
`remove_team_member`, `create_team`, `update_team`, `delete_team`.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.