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

# Organization Endpoints

> Organization CRUD, member management, roles, addresses, emails, and file uploads

> **Source:** `equa-server/modules/api/src/endpoints/organization-endpoints.ts`

# Organization Endpoints

Endpoints for creating and managing organizations, members, roles, addresses, emails, branches, authorizations, and tasks.

All organization endpoints require authentication. Most require specific RBAC permissions scoped to the organization.

## Organizations

### Create Organization

```
POST /v1/organization
```

| Field | Value    |
| ----- | -------- |
| Auth  | Required |

Create a new organization. The authenticated user becomes the owner.

**Request:**

```json theme={null}
{
  "name": "Acme Inc.",
  "type": "corporation"
}
```

***

### List User Organizations

```
GET /v1/organization
```

| Field | Value    |
| ----- | -------- |
| Auth  | Required |

List all organizations the authenticated user belongs to.

***

### Get Organization

```
GET /v1/organization/:organization
```

| Field      | Value                 |
| ---------- | --------------------- |
| Auth       | Required              |
| Permission | `canViewOrganization` |

Get details for a specific organization.

***

### Update Organization

```
PATCH /v1/organization/:organization
```

| Field      | Value                 |
| ---------- | --------------------- |
| Auth       | Required              |
| Permission | `canEditOrganization` |

Update organization settings.

***

### Get Organization Dashboard

```
GET /v1/organization/:organization/dashboard
```

| Field      | Value                 |
| ---------- | --------------------- |
| Auth       | Required              |
| Permission | `canViewOrganization` |

Get summary statistics for the organization dashboard.

***

### Get User Permissions

```
GET /v1/organization/:organization/user/:user
```

| Field | Value    |
| ----- | -------- |
| Auth  | Required |

Get the permissions a specific user has within an organization.

***

## Members

### List Members

```
GET /v1/organization/:organization/member
```

| Field      | Value                |
| ---------- | -------------------- |
| Auth       | Required             |
| Permission | `canViewSomeMembers` |

List all members of an organization.

***

### Get Member

```
GET /v1/organization/:organization/member/:member
```

| Field      | Value           |
| ---------- | --------------- |
| Auth       | Required        |
| Permission | `canViewMember` |

Get details for a specific member.

***

### Add Member

```
POST /v1/organization/:organization/member
```

| Field      | Value            |
| ---------- | ---------------- |
| Auth       | Required         |
| Permission | `canEditMembers` |

Add a new member to the organization.

***

### Invite Members

```
POST /v1/organization/:organization/member/invite
```

| Field      | Value            |
| ---------- | ---------------- |
| Auth       | Required         |
| Permission | `canEditMembers` |

Send email invitations to one or more people to join the organization.

**Request:**

```json theme={null}
{
  "emails": ["alice@example.com", "bob@example.com"]
}
```

***

### Update Member

```
PATCH /v1/organization/:organization/member/:member
```

| Field      | Value                 |
| ---------- | --------------------- |
| Auth       | Required              |
| Permission | `canEditOrganization` |

Update a member's details or role.

***

### Remove Member

```
DELETE /v1/organization/:organization/member/:member
```

| Field      | Value                 |
| ---------- | --------------------- |
| Auth       | Required              |
| Permission | `canEditOrganization` |

Remove a member from the organization by member ID.

***

### Remove Member by User

```
DELETE /v1/organization/:organization/user/:user
```

| Field      | Value                 |
| ---------- | --------------------- |
| Auth       | Required              |
| Permission | `canEditOrganization` |

Remove a member from the organization by user ID.

***

### Get Member Limit

```
GET /v1/organization/:organization/structure/member/limit
```

| Field      | Value            |
| ---------- | ---------------- |
| Auth       | Required         |
| Permission | `canViewMembers` |

Get the member limit for the organization based on the current subscription plan.

***

### Get Entity Members

```
GET /v1/entity/:entity/member
```

| Field | Value    |
| ----- | -------- |
| Auth  | Required |

Get members associated with a specific entity.

***

## Roles

### Create Role

```
POST /v1/organization/:organization/role
```

| Field      | Value            |
| ---------- | ---------------- |
| Auth       | Required         |
| Permission | `canEditMembers` |

***

### List Roles

```
GET /v1/organization/:organization/role
```

| Field      | Value            |
| ---------- | ---------------- |
| Auth       | Required         |
| Permission | `canViewMembers` |

***

### Get Role

```
GET /v1/organization/:organization/role/:role
```

| Field      | Value            |
| ---------- | ---------------- |
| Auth       | Required         |
| Permission | `canViewMembers` |

***

### Update Role

```
PUT /v1/organization/:organization/role/:role
```

| Field      | Value            |
| ---------- | ---------------- |
| Auth       | Required         |
| Permission | `canEditMembers` |

***

### Delete Role

```
DELETE /v1/organization/:organization/role/:role
```

| Field      | Value            |
| ---------- | ---------------- |
| Auth       | Required         |
| Permission | `canEditMembers` |

***

### Assign Role to Member

```
PUT /v1/organization/:organization/role/:role/member
```

| Field      | Value            |
| ---------- | ---------------- |
| Auth       | Required         |
| Permission | `canEditMembers` |

***

## Authorizations

### List Authorizations

```
GET /v1/authorization
```

| Field | Value    |
| ----- | -------- |
| Auth  | Required |

***

### Create Authorization

```
POST /v1/organization/:organization/authorization
```

| Field | Value    |
| ----- | -------- |
| Auth  | Required |

***

### Delete Authorization

```
DELETE /v1/organization/:organization/authorization/:authorization
```

| Field      | Value             |
| ---------- | ----------------- |
| Auth       | Required          |
| Permission | `canEditCapTable` |

***

## Branches

### Create/Update Branch

```
PUT /v1/organization/:organization/branch/:branch
```

| Field      | Value             |
| ---------- | ----------------- |
| Auth       | Required          |
| Permission | `canEditCapTable` |

***

### Get Branch

```
GET /v1/organization/:organization/branch/:branch
```

| Field      | Value                 |
| ---------- | --------------------- |
| Auth       | Required              |
| Permission | `canViewOrganization` |

***

### List Branches

```
GET /v1/organization/:organization/branch
```

| Field      | Value                 |
| ---------- | --------------------- |
| Auth       | Required              |
| Permission | `canViewOrganization` |

***

## Addresses

### Create Address

```
POST /v1/entity/:entity/address
```

| Field      | Value                  |
| ---------- | ---------------------- |
| Auth       | Required               |
| Permission | `canEditEntityAddress` |

***

### Update Address

```
PUT /v1/entity/:entity/address/:address
```

| Field      | Value                  |
| ---------- | ---------------------- |
| Auth       | Required               |
| Permission | `canEditEntityAddress` |

***

### Delete Address

```
DELETE /v1/entity/:entity/address/:address
```

| Field      | Value                  |
| ---------- | ---------------------- |
| Auth       | Required               |
| Permission | `canEditEntityAddress` |

***

### List Addresses

```
GET /v1/entity/:entity/address
```

| Field      | Value                  |
| ---------- | ---------------------- |
| Auth       | Required               |
| Permission | `canViewEntityAddress` |

***

### Get Address

```
GET /v1/entity/:entity/address/:address
```

| Field      | Value                  |
| ---------- | ---------------------- |
| Auth       | Required               |
| Permission | `canViewEntityAddress` |

***

## Emails

### Create Email

```
POST /v1/entity/:entity/email
```

| Field      | Value                  |
| ---------- | ---------------------- |
| Auth       | Required               |
| Permission | `canEditEntityAddress` |

Also syncs billing email addresses with Chargify.

***

### Update Email

```
PUT /v1/entity/:entity/email/:email
```

| Field      | Value                  |
| ---------- | ---------------------- |
| Auth       | Required               |
| Permission | `canEditEntityAddress` |

***

### Delete Email

```
DELETE /v1/entity/:entity/email/:email
```

| Field      | Value                  |
| ---------- | ---------------------- |
| Auth       | Required               |
| Permission | `canEditEntityAddress` |

***

### Batch Create Emails

```
POST /v1/entity/:entity/email/many
```

| Field      | Value                  |
| ---------- | ---------------------- |
| Auth       | Required               |
| Permission | `canEditEntityAddress` |

Create multiple email records in a single request.

***

### List Emails

```
GET /v1/entity/:entity/email
```

| Field      | Value                  |
| ---------- | ---------------------- |
| Auth       | Required               |
| Permission | `canViewEntityAddress` |

***

### Get Email

```
GET /v1/entity/:entity/email/:email
```

| Field      | Value                  |
| ---------- | ---------------------- |
| Auth       | Required               |
| Permission | `canViewEntityAddress` |

***

## Tasks

### Update Task

```
PUT /v1/entity/:entity/task/:type
```

| Field | Value    |
| ----- | -------- |
| Auth  | Required |

***

### Get Tasks

```
GET /v1/entity/:entity/task
```

| Field | Value    |
| ----- | -------- |
| Auth  | Required |

***

## Files

### Upload Organization Document

```
POST /v1/organization/:organization/file
```

| Field      | Value              |
| ---------- | ------------------ |
| Auth       | Required           |
| Permission | `canEditDocuments` |

Upload a file to the organization. Uses `multipart/form-data`. Max file size is configurable via `AWS_S3_UPLOAD_SIZE_LIMIT_MB` (default 10 MB).

***

### Download File

```
GET /v1/file/:file/content
```

| Field      | Value         |
| ---------- | ------------- |
| Auth       | Required      |
| Permission | `canViewFile` |

Download a file as an attachment.

***

### View File Inline

```
GET /v1/file/:file/content/:name
```

| Field      | Value         |
| ---------- | ------------- |
| Auth       | Required      |
| Permission | `canViewFile` |

View a file inline in the browser (Content-Disposition: inline).

***

## Support

### Contact Support

```
POST /v1/support/contact
```

| Field | Value    |
| ----- | -------- |
| Auth  | Required |

Send a support email from the authenticated user.
