NAME

Amazon::S3::BucketV2 - Interface to additional Amazon S3 bucket operations

SYNOPSIS

use Amazon::S3;

my $s3 = Amazon::S3->new(
  { credentials => $credentials,
    region      => 'us-east-1',
  }
);

my $bucket = $s3->bucketv2(
  { bucket => 'example-bucket',
  }
);

my $result = $bucket->GetBucketVersioning();

$bucket->DeleteObject(
  key => 'obsolete.txt',
);

$bucket->DeleteObjects(
  body => {
    Delete => {
      Object => [
        { Key => 'one.txt' },
        { Key => 'two.txt' },
      ],
    },
  },
);

DESCRIPTION

Amazon::S3::BucketV2 provides access to S3 API operations that are not exposed as dedicated methods by Amazon::S3::Bucket.

These additional methods are available only on Amazon::S3::BucketV2 objects. Applications that need this API surface should construct the bucket with "bucketv2" in Amazon::S3 rather than "bucket" in Amazon::S3.

Its method names and request structure are intended to closely follow the corresponding operations documented by Amazon S3, making it easier to move from the AWS API documentation to this interface.

Amazon::S3::BucketV2 is a subclass of Amazon::S3::Bucket. All methods documented by Amazon::S3::Bucket remain available.

Instances are normally created with "bucketv2" in Amazon::S3.

The methods provided by this class are thin wrappers around S3 REST operations. They construct the request path, serialize an optional request body as XML, send the request through the associated Amazon::S3 object, and return the decoded response.

This document is primarily a method reference. The AWS S3 API documentation linked from each method remains the authoritative reference for operation-specific headers, query parameters, request bodies, and service behavior.

GENERATED METHOD CALLING CONVENTION

The S3 operation methods documented below are generated by Amazon::S3::BucketV2 and are called using their CamelCase names.

Each generated method accepts a list of key/value pairs:

my $result = $bucket->OperationName(
  key       => $key,
  body      => \%body,
  uri_param => \%uri_params,
  headers   => \%headers,
);

Only the parameters required by the S3 operation need to be supplied.

body

body => \%body

Optional hash reference representing the XML request body.

The hash is serialized with "create_xml_request" in Amazon::S3::Util before the request is sent.

For example:

$bucket->DeleteObjects(
  body => {
    Delete => {
      Object => [
        { Key => 'one.txt' },
        { Key => 'two.txt' },
      ],
      Quiet => 1,
    },
  },
);

When a body is supplied, Content-MD5 is calculated and added by default.

The structure required by body is defined by the corresponding AWS S3 API operation.

headers

headers => \%headers

Optional hash reference containing additional HTTP request headers.

Operation-specific headers are not inferred by this interface unless the underlying wrapper explicitly provides them. Supply any headers required by the corresponding S3 API operation.

key

key => $key

Optional object key.

Object-level operations normally require this parameter. Bucket-level operations normally do not.

uri_param

uri_param => \%uri_params

Optional hash reference containing query-string parameters required by the operation.

For example:

$bucket->DeleteObject(
  key       => 'example.txt',
  uri_param => {
    versionId => $version_id,
  },
);

The parameter name is uri_param, singular.

Return Value and Errors

On a successful request with a response body, the generated method returns the decoded S3 response when the response format is recognized.

JSON and XML response bodies are decoded automatically. Other successful response bodies are returned unchanged.

A successful request with no response body returns undef.

When S3 returns a non-2xx response, the method returns undef and records the parsed service error on the associated Amazon::S3 object.

The complete HTTP response is available through "last_response" in Amazon::S3::Bucket.

See "ERROR HANDLING" in Amazon::S3.

METHODS AND SUBROUTINES

CONSTRUCTOR

new

my $bucket = Amazon::S3::BucketV2->new(%options);

my $bucket = Amazon::S3::BucketV2->new(\%options);

Creates and returns a Amazon::S3::BucketV2 object.

The constructor is inherited from Amazon::S3::Bucket and accepts the same options, including account, bucket, region, logger, buffer_size, and verify_region.

Applications should normally construct this object using "bucketv2" in Amazon::S3.

GENERAL REQUEST METHOD

send_request

my $result = $bucket->send_request(%parameters);

my $result = $bucket->send_request(\%parameters);

Sends a bucket-scoped S3 request.

This is the common request implementation used by the generated operation methods.

The following parameters are supported:

api

Required.

API query component appended to the request path.

An empty string is valid for operations that do not use a named query component.

bucket

Optional bucket name.

The default is the bucket represented by this object.

content_key

Optional XML root element hint when data is supplied.

data

Optional Perl data structure serialized as XML using create_xml_request().

headers

Optional request headers.

key

Optional object key.

md5

Controls automatic Content-MD5 generation when data is supplied.

The default is true.

method

HTTP method.

The default is GET.

path

Optional complete request path.

When supplied, it replaces the path normally constructed from the bucket, key, and API name.

Any remaining parameters are encoded as query-string parameters.

Returns the decoded response using the same rules described under "Return Value and Errors".

HEAD OPERATIONS

HeadBucket

my $result = $bucket->HeadBucket();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadBucket.html.

HeadObject

my $result = $bucket->HeadObject(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_HeadObject.html.

GET BUCKET OPERATIONS

GetBucketAccelerateConfiguration

my $result = $bucket->GetBucketAccelerateConfiguration();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAccelerateConfiguration.html.

GetBucketAcl

my $result = $bucket->GetBucketAcl();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAcl.html.

GetBucketAnalytics

my $result = $bucket->GetBucketAnalytics();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketAnalyticsConfiguration.html.

GetBucketCors

my $result = $bucket->GetBucketCors();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketCors.html.

GetBucketEncryption

my $result = $bucket->GetBucketEncryption();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketEncryption.html.

GetBucketIntelligentTieringConfiguration

my $result = $bucket->GetBucketIntelligentTieringConfiguration();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketIntelligentTieringConfiguration.html.

GetBucketInventoryConfiguration

my $result = $bucket->GetBucketInventoryConfiguration();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketInventoryConfiguration.html.

GetBucketLifecycleConfiguration

my $result = $bucket->GetBucketLifecycleConfiguration();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html.

GetBucketLocation

my $result = $bucket->GetBucketLocation();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLocation.html.

GetBucketLogging

my $result = $bucket->GetBucketLogging();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLogging.html.

GetBucketMetricsConfiguration

my $result = $bucket->GetBucketMetricsConfiguration();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketMetricsConfiguration.html.

GetBucketNotificationConfiguration

my $result = $bucket->GetBucketNotificationConfiguration();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketNotificationConfiguration.html.

GetBucketOwnershipControls

my $result = $bucket->GetBucketOwnershipControls();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketOwnershipControls.html.

GetBucketPolicy

my $result = $bucket->GetBucketPolicy();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketPolicy.html.

GetBucketPolicyStatus

my $result = $bucket->GetBucketPolicyStatus();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketPolicyStatus.html.

GetBucketReplication

my $result = $bucket->GetBucketReplication();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketReplication.html.

GetBucketRequestPayment

my $result = $bucket->GetBucketRequestPayment();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketRequestPayment.html.

GetBucketTagging

my $result = $bucket->GetBucketTagging();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketTagging.html.

GetBucketVersioning

my $result = $bucket->GetBucketVersioning();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketVersioning.html.

GetBucketWebsite

my $result = $bucket->GetBucketWebsite();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketWebsite.html.

GET OBJECT OPERATIONS

GetObjectAcl

my $result = $bucket->GetObjectAcl(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAcl.html.

GetObjectAttributes

my $result = $bucket->GetObjectAttributes(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectAttributes.html.

GetObjectLegalHold

my $result = $bucket->GetObjectLegalHold(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectLegalHold.html.

GetObjectLockConfiguration

my $result = $bucket->GetObjectLockConfiguration(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectLockConfiguration.html.

GetObjectRetention

my $result = $bucket->GetObjectRetention(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectRetention.html.

GetObjectTagging

my $result = $bucket->GetObjectTagging(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTagging.html.

GetObjectTorrent

my $result = $bucket->GetObjectTorrent(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetObjectTorrent.html.

GetPublicAccessBlock

my $result = $bucket->GetPublicAccessBlock(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetPublicAccessBlock.html.

PUT BUCKET OPERATIONS

PutBucketCors

my $result = $bucket->PutBucketCors();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketCors.html.

PutBucketEncryption

my $result = $bucket->PutBucketEncryption();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketEncryption.html.

PutBucketIntelligentTieringConfiguration

my $result = $bucket->PutBucketIntelligentTieringConfiguration();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketIntelligentTieringConfiguration.html.

PutBucketLifecycle

my $result = $bucket->PutBucketLifecycle();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycle.html.

PutBucketLifecycleConfiguration

my $result = $bucket->PutBucketLifecycleConfiguration();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html.

PutBucketReplicationConfiguration

my $result = $bucket->PutBucketReplicationConfiguration();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketReplication.html.

PutBucketTagging

my $result = $bucket->PutBucketTagging();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketTagging.html.

PutBucketVersioning

my $result = $bucket->PutBucketVersioning();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketVersioning.html.

PUT OBJECT OPERATIONS

PutObject

my $result = $bucket->PutObject(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObject.html.

PutObjectAcl

my $result = $bucket->PutObjectAcl(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectAcl.html.

PutObjectLegalHold

my $result = $bucket->PutObjectLegalHold(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectLegalHold.html.

PutObjectLockConfiguration

my $result = $bucket->PutObjectLockConfiguration(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectLockConfiguration.html.

PutObjectRetention

my $result = $bucket->PutObjectRetention(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectRetention.html.

PutObjectTagging

my $result = $bucket->PutObjectTagging(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutObjectTagging.html.

PutPublicAccessBlock

my $result = $bucket->PutPublicAccessBlock(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutPublicAccessBlock.html.

RestoreObject

my $result = $bucket->RestoreObject(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html.

UploadPart

my $result = $bucket->UploadPart(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPart.html.

UploadPartCopy

my $result = $bucket->UploadPartCopy(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_UploadPartCopy.html.

DELETE BUCKET OPERATIONS

DeleteBucket

my $result = $bucket->DeleteBucket();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucket.html.

DeleteBucketAnalyticsConfiguration

my $result = $bucket->DeleteBucketAnalyticsConfiguration();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketAnalyticsConfiguration.html.

DeleteBucketCors

my $result = $bucket->DeleteBucketCors();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketCors.html.

DeleteBucketEncryption

my $result = $bucket->DeleteBucketEncryption();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketEncryption.html.

DeleteBucketIntelligentTiering

my $result = $bucket->DeleteBucketIntelligentTiering();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketIntelligentTieringConfiguration.html.

DeleteBucketInventoryConfiguration

my $result = $bucket->DeleteBucketInventoryConfiguration();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketInventoryConfiguration.html.

DeleteBucketLifecycle

my $result = $bucket->DeleteBucketLifecycle();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketLifecycle.html.

DeleteBucketMetricsConfiguration

my $result = $bucket->DeleteBucketMetricsConfiguration();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketMetricsConfiguration.html.

DeleteBucketOwnershipControls

my $result = $bucket->DeleteBucketOwnershipControls();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketOwnershipControls.html.

DeleteBucketPolicy

my $result = $bucket->DeleteBucketPolicy();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketPolicy.html.

DeleteBucketReplication

my $result = $bucket->DeleteBucketReplication();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketReplication.html.

DeleteBucketTagging

my $result = $bucket->DeleteBucketTagging();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketTagging.html.

DeleteBucketWebsite

my $result = $bucket->DeleteBucketWebsite();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketWebsite.html.

DeletePublicAccessBlock

my $result = $bucket->DeletePublicAccessBlock();

Bucket-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeletePublicAccessBlock.html.

DELETE OBJECT OPERATIONS

AbortMultipartUpload

my $result = $bucket->AbortMultipartUpload(
  key       => $key,
  uri_param => {
    uploadId => $upload_id,
  },
);

Aborts an in-progress multipart upload.

key and the uploadId query parameter are required.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_AbortMultipartUpload.html.

DeleteObject

my $result = $bucket->DeleteObject(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObject.html.

DeleteObjects

my $result = $bucket->DeleteObjects(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjects.html.

DeleteObjectTagging

my $result = $bucket->DeleteObjectTagging(
  key => $key,
);

Object-level S3 operation.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteObjectTagging.html.

LIST OPERATIONS

ListMultipartUploads

my $result = $bucket->ListMultipartUploads();

my $result = $bucket->ListMultipartUploads(
  uri_param => {
    'key-marker'       => $key_marker,
    'upload-id-marker' => $upload_id_marker,
    'max-uploads'      => 1000,
  },
);

Lists in-progress multipart uploads for the bucket.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

Pagination parameters may be supplied through uri_param.

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html.

ListObjectVersions

my $result = $bucket->ListObjectVersions();

my $result = $bucket->ListObjectVersions(
  uri_param => {
    'key-marker'        => $key_marker,
    'version-id-marker' => $version_id_marker,
    'max-keys'          => 1000,
  },
);

Lists object versions and delete markers for the bucket.

Accepts the generated-method parameters described in "GENERATED METHOD CALLING CONVENTION".

Pagination parameters may be supplied through uri_param.

See https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectVersions.html.

INHERITED METHODS

Amazon::S3::BucketV2 inherits the complete Amazon::S3::Bucket interface.

Use the parent-class convenience methods for common object operations, listing, ACL handling, multipart uploads, and bucket metadata when those interfaces are more convenient than the generic API wrappers documented here.

SEE ALSO

Amazon::S3

Amazon::S3::Bucket

Amazon::S3::Util

https://docs.aws.amazon.com/AmazonS3/latest/API/Welcome.html

AUTHOR

Rob Lauer - <bigfoot@cpan.org>