# Storage Connections

**Note about OAuth**

Some storage provides require OAuth based authentication. Currently this cannot be done using the API.

#### Getting existing storage connections

## Get all storage connections

<mark style="color:blue;">`GET`</mark> `https://api.couchdrop.io/manage/account/storage`

Returns a list of all storage connections configured in Couchdrop

#### Headers

| Name                                    | Type   | Description |
| --------------------------------------- | ------ | ----------- |
| token<mark style="color:red;">\*</mark> | String | API Token   |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    "storage":[
        {...}
    ]
}
```

{% endtab %}
{% endtabs %}

#### Create or Update a storage connection

## Create/Update Storage

<mark style="color:green;">`POST`</mark> `https://api.couchdrop.io/manage/account/storage`

This method is used to create and/or update storage settings. For param details, see the sub-artices.&#x20;

#### Headers

| Name                                    | Type   | Description |
| --------------------------------------- | ------ | ----------- |
| token<mark style="color:red;">\*</mark> | String | API Token   |

#### Request Body

| Name                                          | Type   | Description                                                                                                                                     |
| --------------------------------------------- | ------ | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| id                                            | String | ID of existing storage connection to update. If not specified, Couchdrop will create a new storage entity.                                      |
| path<mark style="color:red;">\*</mark>        | String | Path to mount storage as in Couchdrop                                                                                                           |
| store\_type<mark style="color:red;">\*</mark> | String | Store type. See available store types below.                                                                                                    |
| subpath                                       | String | Map this folder/path to Couchdrop. If not specified, we will map the root directory of the storage connection into the folder specified in path |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    "result":{
        ...
    }
}
```

{% endtab %}
{% endtabs %}

The store types and their require auth is below. Api authentication can not be provided with OAuth without the assistance of support.&#x20;

| store\_type          | Name/Provider                                                                               | Auth Type             |
| -------------------- | ------------------------------------------------------------------------------------------- | --------------------- |
| azure                | Azure Files - [Azure Connections](/administration/storage-connections/azure-connections.md) | Static Keys           |
| azureblob            | Azure Blob - [Azure Connections](/administration/storage-connections/azure-connections.md)  | Static Keys           |
| googledrive          | Individual Google Drive                                                                     | OAuth                 |
| googledrive\_domain  | Google Workspace                                                                            | API Domain Delegation |
| gcloud               | Google GCS - [GCS Connections](/administration/storage-connections/gcs-connections.md)      | Static Keys           |
| dropboxfull          | Personal Dropbox                                                                            | OAuth                 |
| dropboxfullbusiness  | Team Dropbox                                                                                | OAuth                 |
| digitalocean         | Digital Ocean Spaces                                                                        | Static Keys           |
| wasabi               | Wasabi S3 Storage                                                                           | Static Keys           |
| seagate\_lyve\_cloud | Seagate S3 Storage                                                                          | Static Keys           |
| sftp                 | SFTP - [SFTP Connections](/administration/storage-connections/sftp-connections.md)          | Username/Password     |
| ftp                  | FTP/s - [FTP Connections](/administration/storage-connections/ftp-connections.md)           | Username/Password     |
| s3                   | AWS S3 - [S3 Connections](/administration/storage-connections/s3-connections.md)            | Static Keys           |
| s3\_compatible       | Custom S3 - [S3 Connections](/administration/storage-connections/s3-connections.md)         | Static Keys           |
| box                  | Box                                                                                         | OAuth                 |
| backblazeb2          | Backblaze B2 Storage                                                                        | Static Key            |
| onedrive             | Microsoft Onedrive                                                                          | OAuth                 |
| sharepoint           | Microsoft Sharepoint                                                                        | OAuth                 |
| filebase             | Filebase                                                                                    | Keys                  |
| egnyte               | Egnyte                                                                                      | OAuth                 |
| idrive               | IDrive S3                                                                                   | Keys                  |
| sharefile            | Citrix Sharefile                                                                            | OAuth                 |
| huddle               | Ideagen Huddle                                                                              | OAuth                 |
| hosted               | Couchdrop Hosted Storage                                                                    | --                    |

#### Removing a storage connection

## Remove a storage connection

<mark style="color:red;">`DELETE`</mark> `https://api.couchdrop.io/manage/account/storage`

#### Headers

| Name                                    | Type   | Description |
| --------------------------------------- | ------ | ----------- |
| token<mark style="color:red;">\*</mark> | String | API Token   |

#### Request Body

| Name                                 | Type   | Description           |
| ------------------------------------ | ------ | --------------------- |
| id<mark style="color:red;">\*</mark> | String | Storage connection ID |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://developers.couchdrop.io/administration/storage-connections.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
