Supported S3 Requests

Prev Next

VAST Cluster supports a subset of S3 requests. These are listed below with references to guidelines for how to call them using some specific client interfaces.

Task

S3 Request

S3 Action

s3cmd Command

Boto 3 S3 Resource Usage

Boto 3 S3 Client Method

Bucket Operations

List the buckets on the S3 server

ListBuckets

ListAllMyBuckets

s3cmd ls

List All Buckets on the Server

list_buckets()

Create a bucket

CreateBucket

CreateBucket

s3cmd mbCreate a Bucket

Create a Bucket

create_bucket()

List the objects in bucket

ListObjects

or

ListObjectsV2

ListBucket

s3cmd ls

List Objects in a Bucket

list_objects()

Delete a bucket

DeleteBucket

DeleteBucket

s3cmd rbDelete a Bucket

Delete a Bucket

delete_bucket()

Return the region in which the bucket resides

GetBucketLocation

GetBucketLocation

N/A

get_bucket_location()

Return metadata from an object without returning the object itself.

HeadBucket

ListBucket

Return the policy for the bucket

GetBucketPolicy

GetBucketPolicy

Create a policy for the bucket

PutBucketPolicy

PutBucketPolicy

Delete a bucket policy

DeleteBucketPolicy

DeleteBucketPolicy

Bucket Access Control List (ACL) Operations

Note

For information about ACLs, see Managing S3 Access Control Lists (ACLs).S3 Access Control Rules (ACLs)

Set the ACL of a bucket

PutBucketAcl

PutBucketAcl

s3cmd setacl

Set the ACL of a Bucket

put_bucket_acl()

Return the ACL of a bucket

GetBucketAcl

GetBucketAcl

s3cmd info

Return the ACL of a bucket

get_bucket_acl()

Bucket Tagging Operations

Set tags on a bucket

PutBucketTagging

PutBucketTagging

put_bucket_tagging()

Return the tag set associated with a bucket

GetBucketTagging

GetBucketTagging

get_bucket_tagging()

Delete the tags from a bucket

DeleteBucketTagging

PutBucketTagging

delete_bucket_tagging()

Bucket Logging Operations

Configure bucket logging

PutBucketLogging

PutBucketLogging

Configure Bucket LoggingConfigure Bucket Logging

put_bucket_logging()Configure Bucket Logging

Return bucket logging confirmation

GetBucketLogging

GetBucketLogging

N/A

get_bucket_logging()

Bucket Event Notification Operations

Configure bucket event notifications

PutBucketNotificationConfiguration

PutBucketNotification

N/A

Configuring Bucket Event NotificationsConfiguring Bucket Event Notifications

put_bucket_notification_configuration()

Return bucket event notifications configuration

GetBucketNotificationConfiguration

GetBucketNotfication

N/A

Return Event Notification Configuration for a BucketReturn Event Notification Configuration for a Bucket

get_bucket_notification_configuration()

Object Operations

Create an object

PutObject

PutObject

s3cmd put

Create an Object

put_object()

Create a copy of an object

CopyObject

GetObject & PutObject

Note

Object rename is also supported with a VAST rename header. See Renaming Objects.

s3cmd cp

Create a copy of an object

copy_object()

Retrieve an object

GetObject

GetObject

s3cmd get

Retrieve an Object

get_object()

Retrieve metadata of an object without returning the object itself

HeadObject

GetObject

s3cmd info

Retrieve Object Metadata

head_object()

Delete an object

DeleteObject

DeleteObject

s3cmd del

Delete an Object

delete_object()

Delete multiple objects in a bucket

DeleteObjects

DeleteObject

N/A

Delete Multiple Objects

Deleting Multiple Objects

Object ACL Operations

Note

For information about ACLs, see Managing S3 Access Control Lists (ACLs).S3 Access Control Rules (ACLs)

Set ACL permissions on an existing object

PutObjectAcl

PutObjectAcl

s3cmd setacl

Set ACL Permissions on an Existing Object

put_object_acl()

Return the ACL of an object

GetObjectAcl

GetObjectAcl

s3cmd info

Return the ACL of an object

get_object_acl()

Upload Operations

Initiate upload of a file in multiple parts (multipart upload)

CreateMultipartUpload

PutObject

s3cmd put

Initiate a Multipart Upload

create_multipart_upload()

Abort a multipart upload

AbortMultipartUpload

AbortMultipartUpload

s3cmd abortmp

Abort a Multipart Upload

abort_multipart_upload()

Complete a multipart upload

CompleteMultipartUpload

PutObject

Automatically executed with s3cmd put for multipart uploads.

Complete a Multipart Upload

complete_multipart_upload()

Upload a part in a multipart upload.

UploadPart

PutObject

Automatically executed with s3cmd put for multipart uploads.

Upload a part in a Multipart Upload

upload_part()

Upload a part by copying data from an existing object as data source.

UploadPartCopy

PutObject, GetObject

N/A

Upload a part by copying data from an existing object as data source

upload_part_copy()

List the parts that have been uploaded for a specific multipart upload.

ListParts

ListMultipartUploadParts

s3cmd listmp

List Uploaded Parts for a Specific Multipart Upload

list_parts()

List multipart uploads

ListMultipartUploads

ListBucketMultipartUploads

s3cmd multipart

List Multipart Uploads

list_multipart_uploads()

Object Versioning Operations

Note

For information about object versioning, see Object Versioning.

Set versioning state on a bucket

Note

Once enabled, versioning cannot be disabled or suspended.

PutBucketVersion

PutBucketVersion

N/A

put_bucket_versioning()

Get versioning state of a bucket

GetBucketVersion

GetBucketVersion

N/A

get_bucket_versioning()

Return metadata about all versions of the objects in a bucket

ListObjectVersions

ListBucketVersions

N/A

N/A

list_object_versions()

Return object version

GetObject

GetObjectVersion

get_object()

Retrieve metadata of an object version without returning the object version itself

GetObject

GetObjectVersion

head_object()

Set object version ACL

PutObjectAcl

PutObjectVersionAcl

put_object_acl()

Return object version ACL

GetObjectAcl

GetObjectVersionAcl

get_object_acl()

Delete object(s) version

DeleteObject, DeleteObjects

DeleteObjectVersion

delete_object()

Object Locking Operations

Note

For information about object locking, see S3 Object Locking Overview.

Place an object lock configuration on a bucket

PutObjectLockConfiguration

PutBucketObjectLockConfiguration

N/A

put_object_lock_configuration()

Get the object lock configuration for a bucket

GetObjectLockConfiguration

GetBucketObjectLockConfiguration

N/A

get_object_lock_configuration()

Place an object retention configuration on an object

PutObjectRetention

PutObjectRetention

N/A

put_object_retention()

Get an object's retention settings

GetObjectRetention

GetObjectRetention

N/A

get_object_retention()

Apply a legal hold configuration to an object

PutObjectLegalHold

PutObjectLegalHold

N/A

put_object_legal_hold()

Get an object's current legal hold status

GetObjectLegalHold

GetObjectLegalHold

N/A

get_object_legal_hold()

Object Tagging Operations

Set a supplied tag-set to an object that already exists in a bucket

PutObjectTagging

PutObjectTagging

N/A

put_object_tagging()

Set a supplied tag-set to a version of an object that already exists in a bucket

PutObjectTagging

PutObjectVersionTagging

N/A

put_object_tagging()

Return the tag-set of an object

GetObjectTagging

GetObjectTagging

N/A

get_object_tagging()

Return the tag-set of a version of an object

GetObjectTagging

GetObjectVersionTagging

N/A

get_object_tagging()

Remove the tag-set from an object

DeleteObjectTagging

DeleteObjectTagging

N/A

delete_object_tagging()

Remove the tag-set from a version of an object

DeleteObjectTagging

DeleteObjectVersionTagging

N/A

delete_object_tagging()