S3 / Client / put_object_retention

put_object_retention#

S3.Client.put_object_retention(**kwargs)#

Places an Object Retention configuration on an object. For more information, see Locking Objects. Users or accounts require the s3:PutObjectRetention permission in order to place an Object Retention configuration on objects.

This action is not supported by Amazon S3 on Outposts.

See also: AWS API Documentation

Request Syntax

response = client.put_object_retention(
    Bucket='string',
    Key='string',
    Retention={
        'Mode': 'GOVERNANCE'|'COMPLIANCE',
        'RetainUntilDate': datetime(2015, 1, 1)
    },
    RequestPayer='requester',
    VersionId='string',
    BypassGovernanceRetention=True|False,
    ContentMD5='string',
    ExpectedBucketOwner='string'
)
Parameters:
  • Bucket (string) –

    [REQUIRED]

    The bucket name that contains the object you want to apply this Object Retention configuration to.

    Access points - When you use this action with an access point, you must provide the alias of the access point in place of the bucket name or specify the access point ARN. When using the access point ARN, 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 Amazon Web Services SDKs, you provide the access point ARN in place of the bucket name. For more information about access point ARNs, see Using access points in the Amazon S3 User Guide.

  • Key (string) –

    [REQUIRED]

    The key name for the object that you want to apply this Object Retention configuration to.

  • Retention (dict) –

    The container element for the Object Retention configuration.

    • Mode (string) –

      Indicates the Retention mode for the specified object.

    • RetainUntilDate (datetime) –

      The date on which this Object Lock Retention will expire.

  • RequestPayer (string) – Ignored by COS if present.

  • VersionId (string) – The version ID for the object that you want to apply this Object Retention configuration to.

  • BypassGovernanceRetention (boolean) – Ignored by COS if present.

  • ContentMD5 (string) –

    The MD5 hash for the request body.

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

  • ExpectedBucketOwner (string) – Ignored by COS if present.

Return type:

dict

Returns:

Response Syntax

{
    'RequestCharged': 'requester'
}

Response Structure

  • (dict) –

    • RequestCharged (string) –

      If present, indicates that the requester was successfully charged for the request.