Data Types

S3Storage

Storage layer used for storing files in custom S3 buckets, as opposed to Upload's built-in storage.

This is a read/write storage layer.

Structure

Example

{
"bucket": {
"bucketName": "my-bucket",
"bucketRegion": "us-east-1",
"objectKeyPrefix": "an/example/key"
},
"credentials": {
"awsAccessKey": "AKIAIOSFODNN7EXAMPLE",
"awsSecretKey": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
},
"type": "S3",
"useAbsolutePaths": true,
"useDirectRawFileDelivery": true,
"useOriginAccessIdentity": true,
"useTransferAcceleration": true
}

Properties

bucket.bucketName

AWS S3 Bucket Name.

Type: String

Min Length: 1

Max Length: 61

Example: "my-bucket"

Required: Yes

bucket.bucketRegion

AWS Region.

Type: String

Allowed Values: "af-south-1", "ap-east-1", "ap-northeast-1", "ap-northeast-2", "ap-northeast-3", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ap-southeast-3", "ca-central-1", "eu-central-1", "eu-north-1", "eu-south-1", "eu-west-1", "eu-west-2", "eu-west-3", "me-south-1", "sa-east-1", "us-east-1", "us-east-2", "us-west-1", "us-west-2"

Min Length: 1

Max Length: 20

Example: "us-east-1"

Required: Yes

bucket.objectKeyPrefix

AWS S3 Object Key.

Type: String

Min Length: 0

Max Length: 1024

Example: "an/example/key"

Required: Yes

credentials.awsAccessKey

AWS Access Key.

Type: String

Length: 20

Example: "AKIAIOSFODNN7EXAMPLE"

Required: Yes

credentials.awsSecretKey

AWS Secret Access Key.

Type: String

Length: 40

Example: "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"

Required: Yes

type

The type of this storage layer.

Type: String

Value: "S3"

Required: Yes

useAbsolutePaths

If true then writes S3 objects with full filePath as key, prefixed with the objectKeyPrefix.

If false then writes S3 objects using a relative filePath in relation to folder's path, prefixed with the objectKeyPrefix.

Type: Boolean

Required: Yes

useDirectRawFileDelivery

If true then raw file downloads are routed directly via the Upload CDN's edge nodes to the custom S3 bucket.

If false then raw file downloads are routes via Upload's transformation pipelines, adding some latency to raw file downloads only.

Note: if set to true then you must configure a "AWS::S3::BucketPolicy" for your S3 bucket, permitting access to Upload's CloudFront distribution. Alternatively, your S3 bucket must allow public file downloads.

Type: Boolean

Required: Yes

useOriginAccessIdentity

Only applicable if useDirectRawFileDelivery is set to true.

Type: Boolean

Required: Yes

useTransferAcceleration

Enables S3 transfer acceleration, providing improved file upload speeds for larger files.

Note: this setting must also be enabled on the S3 bucket.

Type: Boolean

Required: Yes

Used by

Was this section helpful? Yes No

You are using an outdated browser.

This website requires a modern web browser -- the latest versions of these browsers are supported: