# DigitalOcean Spaces

> Connect DigitalOcean Spaces to BucketMate Web with Spaces access keys

Canonical: https://docs.bucketmate.app/web/providers/connect-digitalocean-spaces

BucketMate Web connects to DigitalOcean Spaces through the S3-compatible Spaces endpoint for your region. Make sure the companion browser extension is connected before testing the connection.

## Prerequisites

- DigitalOcean account
- Space
- Spaces access key
- Spaces secret key
- Space region
- BucketMate browser extension

## Endpoint and region

Use the endpoint for your Spaces region:

```text
https://<region>.digitaloceanspaces.com
```

Examples:

| Region | Endpoint |
| --- | --- |
| `nyc3` | `https://nyc3.digitaloceanspaces.com` |
| `sfo3` | `https://sfo3.digitaloceanspaces.com` |
| `ams3` | `https://ams3.digitaloceanspaces.com` |
| `sgp1` | `https://sgp1.digitaloceanspaces.com` |
| `fra1` | `https://fra1.digitaloceanspaces.com` |

## Connection steps

1. Open the DigitalOcean dashboard.
2. Go to API and create or copy Spaces access keys.
3. Open BucketMate Web.
4. Confirm the extension bridge is connected.
5. Choose **Add Connection**.
6. Select **DigitalOcean Spaces**.
7. Enter the endpoint for the Space region.
8. Enter the access key and secret key.
9. Select the matching region.
10. Use **Test Connection**.
11. Save the connection.

## Common issues and fixes

### ACL support is limited

Only `private` and `public-read` ACLs are supported. Fix by using those ACLs only.

### Cross-region copy is not supported

Cross-region and cross-cluster CopyObject or UploadPartCopy are not supported. Fix by keeping source and destination in the same region and cluster.

### Bucket list permission is restricted

If credentials can access only one Space, add the Space name in **Explicit Buckets**.

### Public URLs do not work

Copied direct URLs work only when the object is public or available through a configured CDN or custom domain. For private files, create a presigned share link in BucketMate Web.
