The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Paws::S3::PutObjectAcl - Arguments for method PutObjectAcl on Paws::S3

DESCRIPTION

This class represents the parameters used for calling the method PutObjectAcl on the Amazon Simple Storage Service service. Use the attributes of this class as arguments to method PutObjectAcl.

You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to PutObjectAcl.

SYNOPSIS

    my $s3 = Paws->service('S3');
   # To grant permissions using object ACL
   # The following example adds grants to an object ACL. The first permission
   # grants user1 and user2 FULL_CONTROL and the AllUsers group READ permission.
    my $PutObjectAclOutput = $s3->PutObjectAcl(
      'AccessControlPolicy' => {

      },
      'Bucket'           => 'examplebucket',
      'GrantFullControl' =>
        'emailaddress=user1@example.com,emailaddress=user2@example.com',
      'GrantRead' => 'uri=http://acs.amazonaws.com/groups/global/AllUsers',
      'Key'       => 'HappyFace.jpg'
    );

Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object. For the AWS API documentation, see https://docs.aws.amazon.com/goto/WebAPI/s3/PutObjectAcl

ATTRIBUTES

AccessControlPolicy => Paws::S3::AccessControlPolicy

Contains the elements that set the ACL permissions for an object per grantee.

ACL => Str

The canned ACL to apply to the object. For more information, see Canned ACL (https://docs.aws.amazon.com/AmazonS3/latest/dev/acl-overview.html#CannedACL).

Valid values are: "private", "public-read", "public-read-write", "authenticated-read", "aws-exec-read", "bucket-owner-read", "bucket-owner-full-control"

REQUIRED Bucket => Str

The bucket name that contains the object to which you want to attach the ACL.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) in the Amazon S3 User Guide.

ContentLength => Int

Size of the body in bytes.

ContentMD5 => Str

The base64-encoded 128-bit MD5 digest of the data. This header must be used as a message integrity check to verify that the request body was not corrupted in transit. For more information, go to RFC 1864.> (http://www.ietf.org/rfc/rfc1864.txt)

For requests made using the AWS Command Line Interface (CLI) or AWS SDKs, this field is calculated automatically.

ExpectedBucketOwner => Str

The account ID of the expected bucket owner. If the bucket is owned by a different account, the request will fail with an HTTP 403 (Access Denied) error.

GrantFullControl => Str

Allows grantee the read, write, read ACP, and write ACP permissions on the bucket.

This action is not supported by Amazon S3 on Outposts.

GrantRead => Str

Allows grantee to list the objects in the bucket.

This action is not supported by Amazon S3 on Outposts.

GrantReadACP => Str

Allows grantee to read the bucket ACL.

This action is not supported by Amazon S3 on Outposts.

GrantWrite => Str

Allows grantee to create new objects in the bucket.

For the bucket and object owners of existing objects, also allows deletions and overwrites of those objects.

GrantWriteACP => Str

Allows grantee to write the ACL for the applicable bucket.

This action is not supported by Amazon S3 on Outposts.

REQUIRED Key => Str

Key for which the PUT action was initiated.

When using this action with an access point, you must direct requests to the access point hostname. The access point hostname takes the form AccessPointName-AccountId.s3-accesspoint.Region.amazonaws.com. When using this action with an access point through the AWS SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points (https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-access-points.html) in the Amazon S3 User Guide.

When using this action with Amazon S3 on Outposts, you must direct requests to the S3 on Outposts hostname. The S3 on Outposts hostname takes the form AccessPointName-AccountId.outpostID.s3-outposts.Region.amazonaws.com. When using this action using S3 on Outposts through the AWS SDKs, you provide the Outposts bucket ARN in place of the bucket name. For more information about S3 on Outposts ARNs, see Using S3 on Outposts (https://docs.aws.amazon.com/AmazonS3/latest/userguide/S3onOutposts.html) in the Amazon S3 User Guide.

RequestPayer => Str

Valid values are: "requester"

VersionId => Str

VersionId used to reference a specific version of the object.

SEE ALSO

This class forms part of Paws, documenting arguments for method PutObjectAcl in Paws::S3

BUGS and CONTRIBUTIONS

The source code is located here: https://github.com/pplu/aws-sdk-perl

Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues