> For the complete documentation index, see [llms.txt](https://docs.mikopbx.com/mikopbx/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.mikopbx.com/mikopbx/english/manual/maintenance/storage/digitalocean.md).

# Connecting DigitalOcean S3 Storage

### Creating a Bucket and Access Keys

1. Go to the DigitalOcean console ([link](https://cloud.digitalocean.com/)).
2. Navigate to **Manage** → **Spaces Object Storage**. Click **Create a Spaces Bucket** to create a new bucket.

<figure><img src="/files/HOEiSLaIYdiXFuvjdjEt" alt=""><figcaption><p>Spaces Object Storage section</p></figcaption></figure>

3. On the bucket creation page, under **Choose a datacenter region**, select the region closest to your MikoPBX server. Choose **Standard Storage**.

{% hint style="info" %}
Remember your region name (**sgp1** in the screenshot below) — you will need it later when configuring MikoPBX.
{% endhint %}

<figure><img src="/files/K155KteHhyPpRtBqKJwm" alt=""><figcaption><p>Bucket creation parameters #1</p></figcaption></figure>

4. In the **Choose a unique Spaces Bucket name** field, enter a name of your choice for the bucket.

Click **Subscribe & Create Bucket**.

<figure><img src="/files/jPHAS7a3OSBCruStYDxr" alt=""><figcaption><p>Bucket creation parameters #2</p></figcaption></figure>

5. Open the page of the newly created bucket by clicking its name in the **Buckets** section.

<figure><img src="/files/Jzsq6n8jyyWjGKX1wYIq" alt=""><figcaption><p>Created bucket in the Buckets section</p></figcaption></figure>

6. Go to the **Settings** tab.

<figure><img src="/files/P7KSgFq5YCAoHPZYhHxZ" alt=""><figcaption><p>Settings tab on the created bucket page</p></figcaption></figure>

7. Scroll down to the **Access Keys** section. Click **Create Access Key** to generate a new key pair.

<figure><img src="/files/d7IvTK4LwLSiqD1pdbnH" alt=""><figcaption><p>Access Keys section</p></figcaption></figure>

8. Fill in the required parameters for the new key:

* **Select access scope** — Limited Access.
* **Buckets** — select the bucket you created earlier.
* **Permissions** — Read/Write/Delete.
* **Give this access key a name** — enter an arbitrary name to identify this key pair.

Click **Create Access Key**.

<figure><img src="/files/2suzmXKq3X2DgUIDvdNL" alt=""><figcaption><p>Access key creation parameters</p></figcaption></figure>

Your key pair values (**Access Key ID** and **Secret Key**) will be displayed. Save these values — you will need them when configuring MikoPBX.

<figure><img src="/files/8MHvRjCX3hdaplxevA08" alt=""><figcaption><p>Access key pair</p></figcaption></figure>

### Connecting to MikoPBX

1. Go to the **Maintenance** → **Storage** tab.

<figure><img src="/files/0l83adZ15yWXCOalnTCy" alt=""><figcaption><p>Storage section in MikoPBX web-interface</p></figcaption></figure>

2. Open the **S3 Cloud Storage** tab and fill in the following fields:

* **Automatically upload recordings to cloud storage** — enable the toggle.
* **S3 Endpoint URL** — enter `https://sgp1.digitaloceanspaces.com`, replacing `sgp1` with your region.
* **S3 Region** — enter the region of your DigitalOcean bucket (e.g. `sgp1` in this guide).
* **S3 Bucket Name** — enter the name of the bucket you created in DigitalOcean (e.g. `mikopbx-s3-storage` in this guide).
* **Access Key** and **Secret Key** — paste the values obtained in the first part of this guide.

Use the **Local Storage (S3 mode)** slider to configure how long recordings are kept locally before being deleted after upload to the cloud.

{% hint style="info" %}
A shorter local retention period frees up disk space faster.
{% endhint %}

Click **Save**.

<figure><img src="/files/VGAm3zxdVgT9oq27SJRj" alt=""><figcaption><p>DigitalOcean S3 connection parameters</p></figcaption></figure>

After saving the settings, click **Test Connection**. If the connection is successful, you will see the message **"S3 connection successful"** and synchronization of call recordings will begin.

<figure><img src="/files/RciNLv0DKDW7UWJtLl0U" alt=""><figcaption><p>Successful connection</p></figcaption></figure>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## 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, and the optional `goal` query parameter:

```
GET https://docs.mikopbx.com/mikopbx/english/manual/maintenance/storage/digitalocean.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

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.
