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

# Tenancy

> How teams, hubs, and members scope data.

Membership.io is multi-tenant. The main rule is simple: admin data belongs to a team, and member experiences belong to a hub.

## Team-scoped admin routes

Admin routes include `team_id` in the path:

```text theme={null}
/api/v1/teams/{team_id}/contacts
/api/v1/teams/{team_id}/hubs
/api/v1/teams/{team_id}/products
/api/v1/teams/{team_id}/files
```

When you use a team API key, the key is bound to exactly one team. A key minted for Team A cannot operate on Team B.

## Hub-scoped member routes

Member-facing routes include `hub_id` or a hub slug:

```text theme={null}
/api/v1/hub/{hub_id}/content
/api/v1/hub/{hub_id}/pages/home
/api/v1/hubs/{slug}
```

The backend checks live membership and access rules for protected hub resources. Do not assume that a contact token alone means the member can see every hub resource.

## Common identifiers

| Identifier              | Meaning                            |
| ----------------------- | ---------------------------------- |
| `team_id`               | Creator-side tenant                |
| `hub_id`                | Member destination                 |
| `contact_id`            | Global person identity             |
| `team_contact_id`       | Contact's CRM record inside a team |
| `product_id`            | Sellable item                      |
| `price_id`              | Payment option for a product       |
| `media_id` or `file_id` | Uploaded media/file resource       |
