> ## 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.

# Microsoft Endpoints

> Microsoft 365 integration for document storage and management via OneDrive/SharePoint

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

# Microsoft Endpoints

<Info>
  These endpoints are only available when Microsoft authentication is enabled.
  Requires the `MICROSOFT_*` environment variables to be configured.
  Source: `endpoints.ts` line 113 -- `if (isMicrosoftAuthEnabled(process.env))`
</Info>

Endpoints for integrating with Microsoft 365 (OneDrive/SharePoint) for document storage and management. These endpoints use Microsoft Graph API tokens to access group drives.

All Microsoft endpoints require authentication.

## List Documents

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

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

List all documents in the organization's Microsoft-connected document store.

<Note>
  This endpoint overlaps with the Data Room `GET /organization/:organization/document` endpoint. The server routes to the appropriate handler based on the organization's document storage configuration (Microsoft vs S3-based data room).
</Note>

***

## Get Document Content

```
GET /v1/organization/:organization/document/:document/content
```

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

Download a document as an attachment from Microsoft 365 or S3.

***

## View Document Inline

```
GET /v1/organization/:organization/document/:document/content/:name
```

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

View a document inline in the browser.

***

## Upload Document

```
POST /v1/organization/:organization/document
```

| Field        | Value                 |
| ------------ | --------------------- |
| Auth         | Required              |
| Permission   | `canEditDocuments`    |
| Content-Type | `multipart/form-data` |

Upload a single document to the Microsoft-connected document store.

***

## Upload Multiple Documents

```
POST /v1/organization/:organization/document/many
```

| Field        | Value                 |
| ------------ | --------------------- |
| Auth         | Required              |
| Permission   | `canEditDocuments`    |
| Content-Type | `multipart/form-data` |

Upload multiple documents in a single request.

***

## Create Folder

```
POST /v1/organization/:organization/folder
```

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

Create a new folder in the Microsoft-connected document store.

***

## Move Document

```
POST /v1/organization/:organization/document/:document/move
```

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

Move or rename a document in the Microsoft document store.

***

## Delete Document

```
DELETE /v1/organization/:organization/document/:document/
```

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

Delete a document from the Microsoft document store.
