> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://docs.dropboxapi.com/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://docs.dropboxapi.com/_mcp/server.

# Configuration

Dropbox Object Store is S3-compatible, which means you can use any AWS CLI or SDK to interact with your buckets over the internet.

## Prerequisites

Before you begin, you'll need:

* **Access Key ID** - Provided by Dropbox
* **Secret Access Key** - Provided by Dropbox
* **Endpoint URL** - `https://seal.dropboxapi.com`
* **Region** - Use `us-east-1` for all requests

Contact your Dropbox representative to obtain credentials.

## Configure Credentials

First, install the AWS CLI if you haven't already. See [AWS CLI installation instructions](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) for your platform.

Then configure your credentials:

```bash
aws configure
```

When prompted, enter:

* **AWS Access Key ID**: Your Dropbox-provided access key
* **AWS Secret Access Key**: Your Dropbox-provided secret key
* **Default region name**: `us-east-1`
* **Default output format**: `json` (or press enter)

This creates `~/.aws/credentials` and `~/.aws/config` files that all AWS SDKs will automatically use.

**Alternative methods:**

* **Environment variables**: Set `AWS_ACCESS_KEY_ID`, `AWS_SECRET_ACCESS_KEY`, and `AWS_DEFAULT_REGION` (typically loaded from a file or secrets manager, not exported directly in shell)
* **Credentials file**: Manually edit `~/.aws/credentials` to add a profile
* **IAM roles**: If running on AWS infrastructure

## Using the SDKs

Once credentials are configured, your code only needs to specify the Object Store endpoint. The SDK automatically reads credentials from `~/.aws/credentials` or environment variables.

#### Python

```python
import boto3

# Create S3 client pointing to Object Store
s3_client = boto3.client(
    's3',
    endpoint_url='https://seal.dropboxapi.com',
    region_name='us-east-1'
)

# Test the connection
s3_client.head_bucket(Bucket='your-bucket-name')
print("Connected successfully!")
```

#### Node.js

```javascript
import { S3Client, HeadBucketCommand } from '@aws-sdk/client-s3';

// Create S3 client pointing to Object Store
const s3Client = new S3Client({
  endpoint: 'https://seal.dropboxapi.com',
  region: 'us-east-1'
});

// Test the connection
const command = new HeadBucketCommand({
  Bucket: 'your-bucket-name'
});
await s3Client.send(command);
console.log('Connected successfully!');
```

#### Go

```go
package main

import (
    "fmt"
    "github.com/aws/aws-sdk-go/aws"
    "github.com/aws/aws-sdk-go/aws/session"
    "github.com/aws/aws-sdk-go/service/s3"
)

func main() {
    // Create S3 client pointing to Object Store
    sess := session.Must(session.NewSession(&aws.Config{
        Endpoint: aws.String("https://seal.dropboxapi.com"),
        Region:   aws.String("us-east-1"),
    }))

    svc := s3.New(sess)

    // Test the connection
    _, err := svc.HeadBucket(&s3.HeadBucketInput{
        Bucket: aws.String("your-bucket-name"),
    })
    if err != nil {
        panic(err)
    }
    fmt.Println("Connected successfully!")
}
```

#### AWS CLI

```bash
# Test the connection
aws s3api head-bucket \
  --bucket your-bucket-name \
  --endpoint-url https://seal.dropboxapi.com
```

## Next Steps

* [Get started with basic operations](/object-storage/docs/getting-started)
* [Review API compatibility](/object-storage/docs/api-compatibility)