Compressor APIStorageDigitalOcean Spaces

Storage - DigitalOcean Spaces

Integrate DigitalOcean Spaces with Compressor using our Secure Storage Connectors system. This approach keeps your DigitalOcean credentials secure within your Compressor Account, requiring only a connector reference ID in your API calls.

Authentication

Authentication is handled exclusively through Secure Storage Connectors. Create a connector in your Compressor Account dashboard by providing your DigitalOcean Spaces access keys, then reference it using its unique identifier in your API requests.

Authentication Configuration

{
    "store": {
        "id": "your-connector-id"
    }
}

Configuration Options

ParameterTypeRequiredDetails
bucketStringYesTarget Spaces bucket name.
regionStringYesDigitalOcean region hosting your Space.
pathStringNoObject destination path (omit leading slash). Defaults to root.
aclStringNoObject access permissions. Default: public-read.
metadataHashNoCustom Azure Blob metadata key-value pairs.
headersHashNoCustom HTTP Headers: Cache-Control, Content-Type, Content-Encoding, Content-Disposition.

Implementation Example

Below is a complete API request demonstrating DigitalOcean Spaces integration:

curl https://api.compressor.app/1.0/fetch \
  -X POST \
  -u your-api-key: \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://www.website.com/image.jpg",
    "image": {
      "resize": {
        "width": 640,
        "height": 480,
        "mode": "fit"
      }
    },
    "store": {
      "id": "your-connector-id",
      "bucket": "my-bucket",
      "region": "ams3",
      "path": "assets/image.jpg",
      "headers": {
        "Cache-Control": "max-age=2592000000"
      }
    }
  }'

API Response

Successful requests return the Azure Blob Storage URL in the response.

{
  "id": "38a8bb5e-7b50-4a22-a0a6-b9602fccb225",
  "url": "https://my-bucket.ams3.digitaloceanspaces.com/assets/image.jpg",
  "input": {
    "name": "image.jpg",
    "type": "image",
    ...
  },
  "output": {
    "name": "image.jpg",
    "type": "image",
    ...
  }
}

Permissions Requirements

When setting up your connector credentials, ensure that the Spaces access key and secret you provide have appropriate permissions to write objects to your target Space. The credentials must have sufficient access rights to enable Compressor to upload and manage objects on your behalf.

On this page