Table of Contents
A low-level client representing Amazon Simple Storage Service (S3):
client = session.create_client('s3')
These are the available methods:
Aborts a multipart upload.
To verify that all parts have been removed, so you don't get charged for the part storage, you should call the List Parts operation and ensure the parts list is empty.
See also: AWS API Documentation
Request Syntax
response = client.abort_multipart_upload(
Bucket='string',
Key='string',
UploadId='string',
RequestPayer='requester'
)
dict
Response Syntax
{
'RequestCharged': 'requester'
}
Response Structure
Check if an operation can be paginated.
Completes a multipart upload by assembling previously uploaded parts.
See also: AWS API Documentation
Request Syntax
response = client.complete_multipart_upload(
Bucket='string',
Key='string',
MultipartUpload={
'Parts': [
{
'ETag': 'string',
'PartNumber': 123
},
]
},
UploadId='string',
RequestPayer='requester'
)
dict
Response Syntax
{
'Location': 'string',
'Bucket': 'string',
'Key': 'string',
'Expiration': 'string',
'ETag': 'string',
'ServerSideEncryption': 'AES256'|'aws:kms',
'VersionId': 'string',
'SSEKMSKeyId': 'string',
'RequestCharged': 'requester'
}
Response Structure
Creates a copy of an object that is already stored in Amazon S3.
See also: AWS API Documentation
Request Syntax
response = client.copy_object(
ACL='private'|'public-read'|'public-read-write'|'authenticated-read'|'aws-exec-read'|'bucket-owner-read'|'bucket-owner-full-control',
Bucket='string',
CacheControl='string',
ContentDisposition='string',
ContentEncoding='string',
ContentLanguage='string',
ContentType='string',
CopySource='string' or {'Bucket': 'string', 'Key': 'string', 'VersionId': 'string'},
CopySourceIfMatch='string',
CopySourceIfModifiedSince=datetime(2015, 1, 1),
CopySourceIfNoneMatch='string',
CopySourceIfUnmodifiedSince=datetime(2015, 1, 1),
Expires=datetime(2015, 1, 1),
GrantFullControl='string',
GrantRead='string',
GrantReadACP='string',
GrantWriteACP='string',
Key='string',
Metadata={
'string': 'string'
},
MetadataDirective='COPY'|'REPLACE',
TaggingDirective='COPY'|'REPLACE',
ServerSideEncryption='AES256'|'aws:kms',
StorageClass='STANDARD'|'REDUCED_REDUNDANCY'|'STANDARD_IA'|'ONEZONE_IA',
WebsiteRedirectLocation='string',
SSECustomerAlgorithm='string',
SSECustomerKey='string',
SSEKMSKeyId='string',
CopySourceSSECustomerAlgorithm='string',
CopySourceSSECustomerKey='string',
RequestPayer='requester',
Tagging='string'
)
A map of metadata to store with the object in S3.
dict
Response Syntax
{
'CopyObjectResult': {
'ETag': 'string',
'LastModified': datetime(2015, 1, 1)
},
'Expiration': 'string',
'CopySourceVersionId': 'string',
'VersionId': 'string',
'ServerSideEncryption': 'AES256'|'aws:kms',
'SSECustomerAlgorithm': 'string',
'SSECustomerKeyMD5': 'string',
'SSEKMSKeyId': 'string',
'RequestCharged': 'requester'
}
Response Structure
Creates a new bucket.
See also: AWS API Documentation
Request Syntax
response = client.create_bucket(
ACL='private'|'public-read'|'public-read-write'|'authenticated-read',
Bucket='string',
CreateBucketConfiguration={
'LocationConstraint': 'EU'|'eu-west-1'|'us-west-1'|'us-west-2'|'ap-south-1'|'ap-southeast-1'|'ap-southeast-2'|'ap-northeast-1'|'sa-east-1'|'cn-north-1'|'eu-central-1'
},
GrantFullControl='string',
GrantRead='string',
GrantReadACP='string',
GrantWrite='string',
GrantWriteACP='string'
)
dict
Response Syntax
{
'Location': 'string'
}
Response Structure
Initiates a multipart upload and returns an upload ID.
Note: After you initiate multipart upload and upload one or more parts, you must either complete or abort multipart upload in order to stop getting charged for storage of the uploaded parts. Only after you either complete or abort multipart upload, Amazon S3 frees up the parts storage and stops charging you for the parts storage.
See also: AWS API Documentation
Request Syntax
response = client.create_multipart_upload(
ACL='private'|'public-read'|'public-read-write'|'authenticated-read'|'aws-exec-read'|'bucket-owner-read'|'bucket-owner-full-control',
Bucket='string',
CacheControl='string',
ContentDisposition='string',
ContentEncoding='string',
ContentLanguage='string',
ContentType='string',
Expires=datetime(2015, 1, 1),
GrantFullControl='string',
GrantRead='string',
GrantReadACP='string',
GrantWriteACP='string',
Key='string',
Metadata={
'string': 'string'
},
ServerSideEncryption='AES256'|'aws:kms',
StorageClass='STANDARD'|'REDUCED_REDUNDANCY'|'STANDARD_IA'|'ONEZONE_IA',
WebsiteRedirectLocation='string',
SSECustomerAlgorithm='string',
SSECustomerKey='string',
SSEKMSKeyId='string',
RequestPayer='requester',
Tagging='string'
)
A map of metadata to store with the object in S3.
dict
Response Syntax
{
'AbortDate': datetime(2015, 1, 1),
'AbortRuleId': 'string',
'Bucket': 'string',
'Key': 'string',
'UploadId': 'string',
'ServerSideEncryption': 'AES256'|'aws:kms',
'SSECustomerAlgorithm': 'string',
'SSECustomerKeyMD5': 'string',
'SSEKMSKeyId': 'string',
'RequestCharged': 'requester'
}
Response Structure
Deletes the bucket. All objects (including all object versions and Delete Markers) in the bucket must be deleted before the bucket itself can be deleted.
See also: AWS API Documentation
Request Syntax
response = client.delete_bucket(
Bucket='string'
)
Deletes an analytics configuration for the bucket (specified by the analytics configuration ID).
See also: AWS API Documentation
Request Syntax
response = client.delete_bucket_analytics_configuration(
Bucket='string',
Id='string'
)
None
Deletes the cors configuration information set for the bucket.
See also: AWS API Documentation
Request Syntax
response = client.delete_bucket_cors(
Bucket='string'
)
Deletes the server-side encryption configuration from the bucket.
See also: AWS API Documentation
Request Syntax
response = client.delete_bucket_encryption(
Bucket='string'
)
Deletes an inventory configuration (identified by the inventory ID) from the bucket.
See also: AWS API Documentation
Request Syntax
response = client.delete_bucket_inventory_configuration(
Bucket='string',
Id='string'
)
None
Deletes the lifecycle configuration from the bucket.
See also: AWS API Documentation
Request Syntax
response = client.delete_bucket_lifecycle(
Bucket='string'
)
Deletes a metrics configuration (specified by the metrics configuration ID) from the bucket.
See also: AWS API Documentation
Request Syntax
response = client.delete_bucket_metrics_configuration(
Bucket='string',
Id='string'
)
None
Deletes the policy from the bucket.
See also: AWS API Documentation
Request Syntax
response = client.delete_bucket_policy(
Bucket='string'
)
Deletes the replication configuration from the bucket.
See also: AWS API Documentation
Request Syntax
response = client.delete_bucket_replication(
Bucket='string'
)
Deletes the tags from the bucket.
See also: AWS API Documentation
Request Syntax
response = client.delete_bucket_tagging(
Bucket='string'
)
This operation removes the website configuration from the bucket.
See also: AWS API Documentation
Request Syntax
response = client.delete_bucket_website(
Bucket='string'
)
Removes the null version (if there is one) of an object and inserts a delete marker, which becomes the latest version of the object. If there isn't a null version, Amazon S3 does not remove any objects.
See also: AWS API Documentation
Request Syntax
response = client.delete_object(
Bucket='string',
Key='string',
MFA='string',
VersionId='string',
RequestPayer='requester'
)
dict
Response Syntax
{
'DeleteMarker': True|False,
'VersionId': 'string',
'RequestCharged': 'requester'
}
Response Structure
Removes the tag-set from an existing object.
See also: AWS API Documentation
Request Syntax
response = client.delete_object_tagging(
Bucket='string',
Key='string',
VersionId='string'
)
dict
Response Syntax
{
'VersionId': 'string'
}
Response Structure
This operation enables you to delete multiple objects from a bucket using a single HTTP request. You may specify up to 1000 keys.
See also: AWS API Documentation
Request Syntax
response = client.delete_objects(
Bucket='string',
Delete={
'Objects': [
{
'Key': 'string',
'VersionId': 'string'
},
],
'Quiet': True|False
},
MFA='string',
RequestPayer='requester'
)
[REQUIRED]
dict
Response Syntax
{
'Deleted': [
{
'Key': 'string',
'VersionId': 'string',
'DeleteMarker': True|False,
'DeleteMarkerVersionId': 'string'
},
],
'RequestCharged': 'requester',
'Errors': [
{
'Key': 'string',
'VersionId': 'string',
'Code': 'string',
'Message': 'string'
},
]
}
Response Structure
Builds the url and the form fields used for a presigned s3 post
A dictionary of prefilled form fields to build on top of. Elements that may be included are acl, Cache-Control, Content-Type, Content-Disposition, Content-Encoding, Expires, success_action_redirect, redirect, success_action_status, and x-amz-meta-.
Note that if a particular element is included in the fields dictionary it will not be automatically added to the conditions list. You must specify a condition for the element as well.
A list of conditions to include in the policy. Each element can be either a list or a structure. For example:
]
Conditions that are included may pertain to acl, content-length-range, Cache-Control, Content-Type, Content-Disposition, Content-Encoding, Expires, success_action_redirect, redirect, success_action_status, and/or x-amz-meta-.
Note that if you include a condition, you must specify the a valid value in the fields dictionary as well. A value will not be added automatically to the fields dictionary based on the conditions.
dict
A dictionary with two elements: url and fields. Url is the url to post to. Fields is a dictionary filled with the form fields and respective values to use when submitting the post. For example:
'key': 'mykey', 'signature': 'mysignature', 'policy': 'mybase64 encoded policy'}
}
Generate a presigned url given a client, its method, and arguments
The presigned url
Returns the accelerate configuration of a bucket.
See also: AWS API Documentation
Request Syntax
response = client.get_bucket_accelerate_configuration(
Bucket='string'
)
{
'Status': 'Enabled'|'Suspended'
}
Response Structure
Gets the access control policy for the bucket.
See also: AWS API Documentation
Request Syntax
response = client.get_bucket_acl(
Bucket='string'
)
{
'Owner': {
'DisplayName': 'string',
'ID': 'string'
},
'Grants': [
{
'Grantee': {
'DisplayName': 'string',
'EmailAddress': 'string',
'ID': 'string',
'Type': 'CanonicalUser'|'AmazonCustomerByEmail'|'Group',
'URI': 'string'
},
'Permission': 'FULL_CONTROL'|'WRITE'|'WRITE_ACP'|'READ'|'READ_ACP'
},
]
}
Response Structure
Gets an analytics configuration for the bucket (specified by the analytics configuration ID).
See also: AWS API Documentation
Request Syntax
response = client.get_bucket_analytics_configuration(
Bucket='string',
Id='string'
)
dict
Response Syntax
{
'AnalyticsConfiguration': {
'Id': 'string',
'Filter': {
'Prefix': 'string',
'Tag': {
'Key': 'string',
'Value': 'string'
},
'And': {
'Prefix': 'string',
'Tags': [
{
'Key': 'string',
'Value': 'string'
},
]
}
},
'StorageClassAnalysis': {
'DataExport': {
'OutputSchemaVersion': 'V_1',
'Destination': {
'S3BucketDestination': {
'Format': 'CSV',
'BucketAccountId': 'string',
'Bucket': 'string',
'Prefix': 'string'
}
}
}
}
}
}
Response Structure
Returns the cors configuration for the bucket.
See also: AWS API Documentation
Request Syntax
response = client.get_bucket_cors(
Bucket='string'
)
{
'CORSRules': [
{
'AllowedHeaders': [
'string',
],
'AllowedMethods': [
'string',
],
'AllowedOrigins': [
'string',
],
'ExposeHeaders': [
'string',
],
'MaxAgeSeconds': 123
},
]
}
Response Structure
Returns the server-side encryption configuration of a bucket.
See also: AWS API Documentation
Request Syntax
response = client.get_bucket_encryption(
Bucket='string'
)
{
'ServerSideEncryptionConfiguration': {
'Rules': [
{
'ApplyServerSideEncryptionByDefault': {
'SSEAlgorithm': 'AES256'|'aws:kms',
'KMSMasterKeyID': 'string'
}
},
]
}
}
Response Structure
Returns an inventory configuration (identified by the inventory ID) from the bucket.
See also: AWS API Documentation
Request Syntax
response = client.get_bucket_inventory_configuration(
Bucket='string',
Id='string'
)
dict
Response Syntax
{
'InventoryConfiguration': {
'Destination': {
'S3BucketDestination': {
'AccountId': 'string',
'Bucket': 'string',
'Format': 'CSV'|'ORC',
'Prefix': 'string',
'Encryption': {
'SSES3': {},
'SSEKMS': {
'KeyId': 'string'
}
}
}
},
'IsEnabled': True|False,
'Filter': {
'Prefix': 'string'
},
'Id': 'string',
'IncludedObjectVersions': 'All'|'Current',
'OptionalFields': [
'Size'|'LastModifiedDate'|'StorageClass'|'ETag'|'IsMultipartUploaded'|'ReplicationStatus'|'EncryptionStatus',
],
'Schedule': {
'Frequency': 'Daily'|'Weekly'
}
}
}
Response Structure
Deprecated, see the GetBucketLifecycleConfiguration operation.
Danger
This operation is deprecated and may not function as expected. This operation should not be used going forward and is only kept for the purpose of backwards compatiblity.
See also: AWS API Documentation
Request Syntax
response = client.get_bucket_lifecycle(
Bucket='string'
)
{
'Rules': [
{
'Expiration': {
'Date': datetime(2015, 1, 1),
'Days': 123,
'ExpiredObjectDeleteMarker': True|False
},
'ID': 'string',
'Prefix': 'string',
'Status': 'Enabled'|'Disabled',
'Transition': {
'Date': datetime(2015, 1, 1),
'Days': 123,
'StorageClass': 'GLACIER'|'STANDARD_IA'|'ONEZONE_IA'
},
'NoncurrentVersionTransition': {
'NoncurrentDays': 123,
'StorageClass': 'GLACIER'|'STANDARD_IA'|'ONEZONE_IA'
},
'NoncurrentVersionExpiration': {
'NoncurrentDays': 123
},
'AbortIncompleteMultipartUpload': {
'DaysAfterInitiation': 123
}
},
]
}
Response Structure
Returns the lifecycle configuration information set on the bucket.
See also: AWS API Documentation
Request Syntax
response = client.get_bucket_lifecycle_configuration(
Bucket='string'
)
{
'Rules': [
{
'Expiration': {
'Date': datetime(2015, 1, 1),
'Days': 123,
'ExpiredObjectDeleteMarker': True|False
},
'ID': 'string',
'Prefix': 'string',
'Filter': {
'Prefix': 'string',
'Tag': {
'Key': 'string',
'Value': 'string'
},
'And': {
'Prefix': 'string',
'Tags': [
{
'Key': 'string',
'Value': 'string'
},
]
}
},
'Status': 'Enabled'|'Disabled',
'Transitions': [
{
'Date': datetime(2015, 1, 1),
'Days': 123,
'StorageClass': 'GLACIER'|'STANDARD_IA'|'ONEZONE_IA'
},
],
'NoncurrentVersionTransitions': [
{
'NoncurrentDays': 123,
'StorageClass': 'GLACIER'|'STANDARD_IA'|'ONEZONE_IA'
},
],
'NoncurrentVersionExpiration': {
'NoncurrentDays': 123
},
'AbortIncompleteMultipartUpload': {
'DaysAfterInitiation': 123
}
},
]
}
Response Structure
Returns the region the bucket resides in.
See also: AWS API Documentation
Request Syntax
response = client.get_bucket_location(
Bucket='string'
)
{
'LocationConstraint': 'EU'|'eu-west-1'|'us-west-1'|'us-west-2'|'ap-south-1'|'ap-southeast-1'|'ap-southeast-2'|'ap-northeast-1'|'sa-east-1'|'cn-north-1'|'eu-central-1'
}
Response Structure
Returns the logging status of a bucket and the permissions users have to view and modify that status. To use GET, you must be the bucket owner.
See also: AWS API Documentation
Request Syntax
response = client.get_bucket_logging(
Bucket='string'
)
{
'LoggingEnabled': {
'TargetBucket': 'string',
'TargetGrants': [
{
'Grantee': {
'DisplayName': 'string',
'EmailAddress': 'string',
'ID': 'string',
'Type': 'CanonicalUser'|'AmazonCustomerByEmail'|'Group',
'URI': 'string'
},
'Permission': 'FULL_CONTROL'|'READ'|'WRITE'
},
],
'TargetPrefix': 'string'
}
}
Response Structure
Gets a metrics configuration (specified by the metrics configuration ID) from the bucket.
See also: AWS API Documentation
Request Syntax
response = client.get_bucket_metrics_configuration(
Bucket='string',
Id='string'
)
dict
Response Syntax
{
'MetricsConfiguration': {
'Id': 'string',
'Filter': {
'Prefix': 'string',
'Tag': {
'Key': 'string',
'Value': 'string'
},
'And': {
'Prefix': 'string',
'Tags': [
{
'Key': 'string',
'Value': 'string'
},
]
}
}
}
}
Response Structure
Deprecated, see the GetBucketNotificationConfiguration operation.
Danger
This operation is deprecated and may not function as expected. This operation should not be used going forward and is only kept for the purpose of backwards compatiblity.
See also: AWS API Documentation
Request Syntax
response = client.get_bucket_notification(
Bucket='string'
)
{
'TopicConfiguration': {
'Id': 'string',
'Events': [
's3:ReducedRedundancyLostObject'|'s3:ObjectCreated:*'|'s3:ObjectCreated:Put'|'s3:ObjectCreated:Post'|'s3:ObjectCreated:Copy'|'s3:ObjectCreated:CompleteMultipartUpload'|'s3:ObjectRemoved:*'|'s3:ObjectRemoved:Delete'|'s3:ObjectRemoved:DeleteMarkerCreated',
],
'Event': 's3:ReducedRedundancyLostObject'|'s3:ObjectCreated:*'|'s3:ObjectCreated:Put'|'s3:ObjectCreated:Post'|'s3:ObjectCreated:Copy'|'s3:ObjectCreated:CompleteMultipartUpload'|'s3:ObjectRemoved:*'|'s3:ObjectRemoved:Delete'|'s3:ObjectRemoved:DeleteMarkerCreated',
'Topic': 'string'
},
'QueueConfiguration': {
'Id': 'string',
'Event': 's3:ReducedRedundancyLostObject'|'s3:ObjectCreated:*'|'s3:ObjectCreated:Put'|'s3:ObjectCreated:Post'|'s3:ObjectCreated:Copy'|'s3:ObjectCreated:CompleteMultipartUpload'|'s3:ObjectRemoved:*'|'s3:ObjectRemoved:Delete'|'s3:ObjectRemoved:DeleteMarkerCreated',
'Events': [
's3:ReducedRedundancyLostObject'|'s3:ObjectCreated:*'|'s3:ObjectCreated:Put'|'s3:ObjectCreated:Post'|'s3:ObjectCreated:Copy'|'s3:ObjectCreated:CompleteMultipartUpload'|'s3:ObjectRemoved:*'|'s3:ObjectRemoved:Delete'|'s3:ObjectRemoved:DeleteMarkerCreated',
],
'Queue': 'string'
},
'CloudFunctionConfiguration': {
'Id': 'string',
'Event': 's3:ReducedRedundancyLostObject'|'s3:ObjectCreated:*'|'s3:ObjectCreated:Put'|'s3:ObjectCreated:Post'|'s3:ObjectCreated:Copy'|'s3:ObjectCreated:CompleteMultipartUpload'|'s3:ObjectRemoved:*'|'s3:ObjectRemoved:Delete'|'s3:ObjectRemoved:DeleteMarkerCreated',
'Events': [
's3:ReducedRedundancyLostObject'|'s3:ObjectCreated:*'|'s3:ObjectCreated:Put'|'s3:ObjectCreated:Post'|'s3:ObjectCreated:Copy'|'s3:ObjectCreated:CompleteMultipartUpload'|'s3:ObjectRemoved:*'|'s3:ObjectRemoved:Delete'|'s3:ObjectRemoved:DeleteMarkerCreated',
],
'CloudFunction': 'string',
'InvocationRole': 'string'
}
}
Response Structure
Returns the notification configuration of a bucket.
See also: AWS API Documentation
Request Syntax
response = client.get_bucket_notification_configuration(
Bucket='string'
)
{
'TopicConfigurations': [
{
'Id': 'string',
'TopicArn': 'string',
'Events': [
's3:ReducedRedundancyLostObject'|'s3:ObjectCreated:*'|'s3:ObjectCreated:Put'|'s3:ObjectCreated:Post'|'s3:ObjectCreated:Copy'|'s3:ObjectCreated:CompleteMultipartUpload'|'s3:ObjectRemoved:*'|'s3:ObjectRemoved:Delete'|'s3:ObjectRemoved:DeleteMarkerCreated',
],
'Filter': {
'Key': {
'FilterRules': [
{
'Name': 'prefix'|'suffix',
'Value': 'string'
},
]
}
}
},
],
'QueueConfigurations': [
{
'Id': 'string',
'QueueArn': 'string',
'Events': [
's3:ReducedRedundancyLostObject'|'s3:ObjectCreated:*'|'s3:ObjectCreated:Put'|'s3:ObjectCreated:Post'|'s3:ObjectCreated:Copy'|'s3:ObjectCreated:CompleteMultipartUpload'|'s3:ObjectRemoved:*'|'s3:ObjectRemoved:Delete'|'s3:ObjectRemoved:DeleteMarkerCreated',
],
'Filter': {
'Key': {
'FilterRules': [
{
'Name': 'prefix'|'suffix',
'Value': 'string'
},
]
}
}
},
],
'LambdaFunctionConfigurations': [
{
'Id': 'string',
'LambdaFunctionArn': 'string',
'Events': [
's3:ReducedRedundancyLostObject'|'s3:ObjectCreated:*'|'s3:ObjectCreated:Put'|'s3:ObjectCreated:Post'|'s3:ObjectCreated:Copy'|'s3:ObjectCreated:CompleteMultipartUpload'|'s3:ObjectRemoved:*'|'s3:ObjectRemoved:Delete'|'s3:ObjectRemoved:DeleteMarkerCreated',
],
'Filter': {
'Key': {
'FilterRules': [
{
'Name': 'prefix'|'suffix',
'Value': 'string'
},
]
}
}
},
]
}
Response Structure
Returns the policy of a specified bucket.
See also: AWS API Documentation
Request Syntax
response = client.get_bucket_policy(
Bucket='string'
)
{
'Policy': 'string'
}
Response Structure
Returns the replication configuration of a bucket.
See also: AWS API Documentation
Request Syntax
response = client.get_bucket_replication(
Bucket='string'
)
{
'ReplicationConfiguration': {
'Role': 'string',
'Rules': [
{
'ID': 'string',
'Prefix': 'string',
'Status': 'Enabled'|'Disabled',
'SourceSelectionCriteria': {
'SseKmsEncryptedObjects': {
'Status': 'Enabled'|'Disabled'
}
},
'Destination': {
'Bucket': 'string',
'Account': 'string',
'StorageClass': 'STANDARD'|'REDUCED_REDUNDANCY'|'STANDARD_IA'|'ONEZONE_IA',
'AccessControlTranslation': {
'Owner': 'Destination'
},
'EncryptionConfiguration': {
'ReplicaKmsKeyID': 'string'
}
}
},
]
}
}
Response Structure
Returns the request payment configuration of a bucket.
See also: AWS API Documentation
Request Syntax
response = client.get_bucket_request_payment(
Bucket='string'
)
{
'Payer': 'Requester'|'BucketOwner'
}
Response Structure
Returns the tag set associated with the bucket.
See also: AWS API Documentation
Request Syntax
response = client.get_bucket_tagging(
Bucket='string'
)
{
'TagSet': [
{
'Key': 'string',
'Value': 'string'
},
]
}
Response Structure
Returns the versioning state of a bucket.
See also: AWS API Documentation
Request Syntax
response = client.get_bucket_versioning(
Bucket='string'
)
{
'Status': 'Enabled'|'Suspended',
'MFADelete': 'Enabled'|'Disabled'
}
Response Structure
Returns the website configuration for a bucket.
See also: AWS API Documentation
Request Syntax
response = client.get_bucket_website(
Bucket='string'
)
{
'RedirectAllRequestsTo': {
'HostName': 'string',
'Protocol': 'http'|'https'
},
'IndexDocument': {
'Suffix': 'string'
},
'ErrorDocument': {
'Key': 'string'
},
'RoutingRules': [
{
'Condition': {
'HttpErrorCodeReturnedEquals': 'string',
'KeyPrefixEquals': 'string'
},
'Redirect': {
'HostName': 'string',
'HttpRedirectCode': 'string',
'Protocol': 'http'|'https',
'ReplaceKeyPrefixWith': 'string',
'ReplaceKeyWith': 'string'
}
},
]
}
Response Structure
Retrieves objects from Amazon S3.
See also: AWS API Documentation
Request Syntax
response = client.get_object(
Bucket='string',
IfMatch='string',
IfModifiedSince=datetime(2015, 1, 1),
IfNoneMatch='string',
IfUnmodifiedSince=datetime(2015, 1, 1),
Key='string',
Range='string',
ResponseCacheControl='string',
ResponseContentDisposition='string',
ResponseContentEncoding='string',
ResponseContentLanguage='string',
ResponseContentType='string',
ResponseExpires=datetime(2015, 1, 1),
VersionId='string',
SSECustomerAlgorithm='string',
SSECustomerKey='string',
RequestPayer='requester',
PartNumber=123
)
dict
Response Syntax
{
'Body': StreamingBody(),
'DeleteMarker': True|False,
'AcceptRanges': 'string',
'Expiration': 'string',
'Restore': 'string',
'LastModified': datetime(2015, 1, 1),
'ContentLength': 123,
'ETag': 'string',
'MissingMeta': 123,
'VersionId': 'string',
'CacheControl': 'string',
'ContentDisposition': 'string',
'ContentEncoding': 'string',
'ContentLanguage': 'string',
'ContentRange': 'string',
'ContentType': 'string',
'Expires': datetime(2015, 1, 1),
'WebsiteRedirectLocation': 'string',
'ServerSideEncryption': 'AES256'|'aws:kms',
'Metadata': {
'string': 'string'
},
'SSECustomerAlgorithm': 'string',
'SSECustomerKeyMD5': 'string',
'SSEKMSKeyId': 'string',
'StorageClass': 'STANDARD'|'REDUCED_REDUNDANCY'|'STANDARD_IA'|'ONEZONE_IA',
'RequestCharged': 'requester',
'ReplicationStatus': 'COMPLETE'|'PENDING'|'FAILED'|'REPLICA',
'PartsCount': 123,
'TagCount': 123
}
Response Structure
Returns the access control list (ACL) of an object.
See also: AWS API Documentation
Request Syntax
response = client.get_object_acl(
Bucket='string',
Key='string',
VersionId='string',
RequestPayer='requester'
)
dict
Response Syntax
{
'Owner': {
'DisplayName': 'string',
'ID': 'string'
},
'Grants': [
{
'Grantee': {
'DisplayName': 'string',
'EmailAddress': 'string',
'ID': 'string',
'Type': 'CanonicalUser'|'AmazonCustomerByEmail'|'Group',
'URI': 'string'
},
'Permission': 'FULL_CONTROL'|'WRITE'|'WRITE_ACP'|'READ'|'READ_ACP'
},
],
'RequestCharged': 'requester'
}
Response Structure
Returns the tag-set of an object.
See also: AWS API Documentation
Request Syntax
response = client.get_object_tagging(
Bucket='string',
Key='string',
VersionId='string'
)
dict
Response Syntax
{
'VersionId': 'string',
'TagSet': [
{
'Key': 'string',
'Value': 'string'
},
]
}
Response Structure
Return torrent files from a bucket.
See also: AWS API Documentation
Request Syntax
response = client.get_object_torrent(
Bucket='string',
Key='string',
RequestPayer='requester'
)
dict
Response Syntax
{
'Body': StreamingBody(),
'RequestCharged': 'requester'
}
Response Structure
Create a paginator for an operation.
Returns an object that can wait for some condition.
This operation is useful to determine if a bucket exists and you have permission to access it.
See also: AWS API Documentation
Request Syntax
response = client.head_bucket(
Bucket='string'
)
The HEAD operation retrieves metadata from an object without returning the object itself. This operation is useful if you're only interested in an object's metadata. To use HEAD, you must have READ access to the object.
See also: AWS API Documentation
Request Syntax
response = client.head_object(
Bucket='string',
IfMatch='string',
IfModifiedSince=datetime(2015, 1, 1),
IfNoneMatch='string',
IfUnmodifiedSince=datetime(2015, 1, 1),
Key='string',
Range='string',
VersionId='string',
SSECustomerAlgorithm='string',
SSECustomerKey='string',
RequestPayer='requester',
PartNumber=123
)
dict
Response Syntax
{
'DeleteMarker': True|False,
'AcceptRanges': 'string',
'Expiration': 'string',
'Restore': 'string',
'LastModified': datetime(2015, 1, 1),
'ContentLength': 123,
'ETag': 'string',
'MissingMeta': 123,
'VersionId': 'string',
'CacheControl': 'string',
'ContentDisposition': 'string',
'ContentEncoding': 'string',
'ContentLanguage': 'string',
'ContentType': 'string',
'Expires': datetime(2015, 1, 1),
'WebsiteRedirectLocation': 'string',
'ServerSideEncryption': 'AES256'|'aws:kms',
'Metadata': {
'string': 'string'
},
'SSECustomerAlgorithm': 'string',
'SSECustomerKeyMD5': 'string',
'SSEKMSKeyId': 'string',
'StorageClass': 'STANDARD'|'REDUCED_REDUNDANCY'|'STANDARD_IA'|'ONEZONE_IA',
'RequestCharged': 'requester',
'ReplicationStatus': 'COMPLETE'|'PENDING'|'FAILED'|'REPLICA',
'PartsCount': 123
}
Response Structure
Lists the analytics configurations for the bucket.
See also: AWS API Documentation
Request Syntax
response = client.list_bucket_analytics_configurations(
Bucket='string',
ContinuationToken='string'
)
dict
Response Syntax
{
'IsTruncated': True|False,
'ContinuationToken': 'string',
'NextContinuationToken': 'string',
'AnalyticsConfigurationList': [
{
'Id': 'string',
'Filter': {
'Prefix': 'string',
'Tag': {
'Key': 'string',
'Value': 'string'
},
'And': {
'Prefix': 'string',
'Tags': [
{
'Key': 'string',
'Value': 'string'
},
]
}
},
'StorageClassAnalysis': {
'DataExport': {
'OutputSchemaVersion': 'V_1',
'Destination': {
'S3BucketDestination': {
'Format': 'CSV',
'BucketAccountId': 'string',
'Bucket': 'string',
'Prefix': 'string'
}
}
}
}
},
]
}
Response Structure
Returns a list of inventory configurations for the bucket.
See also: AWS API Documentation
Request Syntax
response = client.list_bucket_inventory_configurations(
Bucket='string',
ContinuationToken='string'
)
dict
Response Syntax
{
'ContinuationToken': 'string',
'InventoryConfigurationList': [
{
'Destination': {
'S3BucketDestination': {
'AccountId': 'string',
'Bucket': 'string',
'Format': 'CSV'|'ORC',
'Prefix': 'string',
'Encryption': {
'SSES3': {},
'SSEKMS': {
'KeyId': 'string'
}
}
}
},
'IsEnabled': True|False,
'Filter': {
'Prefix': 'string'
},
'Id': 'string',
'IncludedObjectVersions': 'All'|'Current',
'OptionalFields': [
'Size'|'LastModifiedDate'|'StorageClass'|'ETag'|'IsMultipartUploaded'|'ReplicationStatus'|'EncryptionStatus',
],
'Schedule': {
'Frequency': 'Daily'|'Weekly'
}
},
],
'IsTruncated': True|False,
'NextContinuationToken': 'string'
}
Response Structure
Lists the metrics configurations for the bucket.
See also: AWS API Documentation
Request Syntax
response = client.list_bucket_metrics_configurations(
Bucket='string',
ContinuationToken='string'
)
dict
Response Syntax
{
'IsTruncated': True|False,
'ContinuationToken': 'string',
'NextContinuationToken': 'string',
'MetricsConfigurationList': [
{
'Id': 'string',
'Filter': {
'Prefix': 'string',
'Tag': {
'Key': 'string',
'Value': 'string'
},
'And': {
'Prefix': 'string',
'Tags': [
{
'Key': 'string',
'Value': 'string'
},
]
}
}
},
]
}
Response Structure
Returns a list of all buckets owned by the authenticated sender of the request.
See also: AWS API Documentation
Request Syntax
response = client.list_buckets()
{
'Buckets': [
{
'Name': 'string',
'CreationDate': datetime(2015, 1, 1)
},
],
'Owner': {
'DisplayName': 'string',
'ID': 'string'
}
}
Response Structure
This operation lists in-progress multipart uploads.
See also: AWS API Documentation
Request Syntax
response = client.list_multipart_uploads(
Bucket='string',
Delimiter='string',
EncodingType='url',
KeyMarker='string',
MaxUploads=123,
Prefix='string',
UploadIdMarker='string'
)
dict
Response Syntax
{
'Bucket': 'string',
'KeyMarker': 'string',
'UploadIdMarker': 'string',
'NextKeyMarker': 'string',
'Prefix': 'string',
'Delimiter': 'string',
'NextUploadIdMarker': 'string',
'MaxUploads': 123,
'IsTruncated': True|False,
'Uploads': [
{
'UploadId': 'string',
'Key': 'string',
'Initiated': datetime(2015, 1, 1),
'StorageClass': 'STANDARD'|'REDUCED_REDUNDANCY'|'STANDARD_IA'|'ONEZONE_IA',
'Owner': {
'DisplayName': 'string',
'ID': 'string'
},
'Initiator': {
'ID': 'string',
'DisplayName': 'string'
}
},
],
'CommonPrefixes': [
{
'Prefix': 'string'
},
],
'EncodingType': 'url'
}
Response Structure
Returns metadata about all of the versions of objects in a bucket.
See also: AWS API Documentation
Request Syntax
response = client.list_object_versions(
Bucket='string',
Delimiter='string',
EncodingType='url',
KeyMarker='string',
MaxKeys=123,
Prefix='string',
VersionIdMarker='string'
)
dict
Response Syntax
{
'IsTruncated': True|False,
'KeyMarker': 'string',
'VersionIdMarker': 'string',
'NextKeyMarker': 'string',
'NextVersionIdMarker': 'string',
'Versions': [
{
'ETag': 'string',
'Size': 123,
'StorageClass': 'STANDARD',
'Key': 'string',
'VersionId': 'string',
'IsLatest': True|False,
'LastModified': datetime(2015, 1, 1),
'Owner': {
'DisplayName': 'string',
'ID': 'string'
}
},
],
'DeleteMarkers': [
{
'Owner': {
'DisplayName': 'string',
'ID': 'string'
},
'Key': 'string',
'VersionId': 'string',
'IsLatest': True|False,
'LastModified': datetime(2015, 1, 1)
},
],
'Name': 'string',
'Prefix': 'string',
'Delimiter': 'string',
'MaxKeys': 123,
'CommonPrefixes': [
{
'Prefix': 'string'
},
],
'EncodingType': 'url'
}
Response Structure
Returns some or all (up to 1000) of the objects in a bucket. You can use the request parameters as selection criteria to return a subset of the objects in a bucket.
See also: AWS API Documentation
Request Syntax
response = client.list_objects(
Bucket='string',
Delimiter='string',
EncodingType='url',
Marker='string',
MaxKeys=123,
Prefix='string',
RequestPayer='requester'
)
dict
Response Syntax
{
'IsTruncated': True|False,
'Marker': 'string',
'NextMarker': 'string',
'Contents': [
{
'Key': 'string',
'LastModified': datetime(2015, 1, 1),
'ETag': 'string',
'Size': 123,
'StorageClass': 'STANDARD'|'REDUCED_REDUNDANCY'|'GLACIER'|'STANDARD_IA'|'ONEZONE_IA',
'Owner': {
'DisplayName': 'string',
'ID': 'string'
}
},
],
'Name': 'string',
'Prefix': 'string',
'Delimiter': 'string',
'MaxKeys': 123,
'CommonPrefixes': [
{
'Prefix': 'string'
},
],
'EncodingType': 'url'
}
Response Structure
Returns some or all (up to 1000) of the objects in a bucket. You can use the request parameters as selection criteria to return a subset of the objects in a bucket. Note: ListObjectsV2 is the revised List Objects API and we recommend you use this revised API for new application development.
See also: AWS API Documentation
Request Syntax
response = client.list_objects_v2(
Bucket='string',
Delimiter='string',
EncodingType='url',
MaxKeys=123,
Prefix='string',
ContinuationToken='string',
FetchOwner=True|False,
StartAfter='string',
RequestPayer='requester'
)
dict
Response Syntax
{
'IsTruncated': True|False,
'Contents': [
{
'Key': 'string',
'LastModified': datetime(2015, 1, 1),
'ETag': 'string',
'Size': 123,
'StorageClass': 'STANDARD'|'REDUCED_REDUNDANCY'|'GLACIER'|'STANDARD_IA'|'ONEZONE_IA',
'Owner': {
'DisplayName': 'string',
'ID': 'string'
}
},
],
'Name': 'string',
'Prefix': 'string',
'Delimiter': 'string',
'MaxKeys': 123,
'CommonPrefixes': [
{
'Prefix': 'string'
},
],
'EncodingType': 'url',
'KeyCount': 123,
'ContinuationToken': 'string',
'NextContinuationToken': 'string',
'StartAfter': 'string'
}
Response Structure
Lists the parts that have been uploaded for a specific multipart upload.
See also: AWS API Documentation
Request Syntax
response = client.list_parts(
Bucket='string',
Key='string',
MaxParts=123,
PartNumberMarker=123,
UploadId='string',
RequestPayer='requester'
)
dict
Response Syntax
{
'AbortDate': datetime(2015, 1, 1),
'AbortRuleId': 'string',
'Bucket': 'string',
'Key': 'string',
'UploadId': 'string',
'PartNumberMarker': 123,
'NextPartNumberMarker': 123,
'MaxParts': 123,
'IsTruncated': True|False,
'Parts': [
{
'PartNumber': 123,
'LastModified': datetime(2015, 1, 1),
'ETag': 'string',
'Size': 123
},
],
'Initiator': {
'ID': 'string',
'DisplayName': 'string'
},
'Owner': {
'DisplayName': 'string',
'ID': 'string'
},
'StorageClass': 'STANDARD'|'REDUCED_REDUNDANCY'|'STANDARD_IA'|'ONEZONE_IA',
'RequestCharged': 'requester'
}
Response Structure
Sets the accelerate configuration of an existing bucket.
See also: AWS API Documentation
Request Syntax
response = client.put_bucket_accelerate_configuration(
Bucket='string',
AccelerateConfiguration={
'Status': 'Enabled'|'Suspended'
}
)
[REQUIRED] Specifies the Accelerate Configuration you want to set for the bucket.
None
Sets the permissions on a bucket using access control lists (ACL).
See also: AWS API Documentation
Request Syntax
response = client.put_bucket_acl(
ACL='private'|'public-read'|'public-read-write'|'authenticated-read',
AccessControlPolicy={
'Grants': [
{
'Grantee': {
'DisplayName': 'string',
'EmailAddress': 'string',
'ID': 'string',
'Type': 'CanonicalUser'|'AmazonCustomerByEmail'|'Group',
'URI': 'string'
},
'Permission': 'FULL_CONTROL'|'WRITE'|'WRITE_ACP'|'READ'|'READ_ACP'
},
],
'Owner': {
'DisplayName': 'string',
'ID': 'string'
}
},
Bucket='string',
GrantFullControl='string',
GrantRead='string',
GrantReadACP='string',
GrantWrite='string',
GrantWriteACP='string'
)
None
Sets an analytics configuration for the bucket (specified by the analytics configuration ID).
See also: AWS API Documentation
Request Syntax
response = client.put_bucket_analytics_configuration(
Bucket='string',
Id='string',
AnalyticsConfiguration={
'Id': 'string',
'Filter': {
'Prefix': 'string',
'Tag': {
'Key': 'string',
'Value': 'string'
},
'And': {
'Prefix': 'string',
'Tags': [
{
'Key': 'string',
'Value': 'string'
},
]
}
},
'StorageClassAnalysis': {
'DataExport': {
'OutputSchemaVersion': 'V_1',
'Destination': {
'S3BucketDestination': {
'Format': 'CSV',
'BucketAccountId': 'string',
'Bucket': 'string',
'Prefix': 'string'
}
}
}
}
}
)
[REQUIRED] The configuration and any analyses for the analytics filter.
None
Sets the cors configuration for a bucket.
See also: AWS API Documentation
Request Syntax
response = client.put_bucket_cors(
Bucket='string',
CORSConfiguration={
'CORSRules': [
{
'AllowedHeaders': [
'string',
],
'AllowedMethods': [
'string',
],
'AllowedOrigins': [
'string',
],
'ExposeHeaders': [
'string',
],
'MaxAgeSeconds': 123
},
]
},
)
[REQUIRED]
None
Creates a new server-side encryption configuration (or replaces an existing one, if present).
See also: AWS API Documentation
Request Syntax
response = client.put_bucket_encryption(
Bucket='string',
ContentMD5='string',
ServerSideEncryptionConfiguration={
'Rules': [
{
'ApplyServerSideEncryptionByDefault': {
'SSEAlgorithm': 'AES256'|'aws:kms',
'KMSMasterKeyID': 'string'
}
},
]
}
)
[REQUIRED] Container for server-side encryption configuration rules. Currently S3 supports one rule only.
None
Adds an inventory configuration (identified by the inventory ID) from the bucket.
See also: AWS API Documentation
Request Syntax
response = client.put_bucket_inventory_configuration(
Bucket='string',
Id='string',
InventoryConfiguration={
'Destination': {
'S3BucketDestination': {
'AccountId': 'string',
'Bucket': 'string',
'Format': 'CSV'|'ORC',
'Prefix': 'string',
'Encryption': {
'SSES3': {}
,
'SSEKMS': {
'KeyId': 'string'
}
}
}
},
'IsEnabled': True|False,
'Filter': {
'Prefix': 'string'
},
'Id': 'string',
'IncludedObjectVersions': 'All'|'Current',
'OptionalFields': [
'Size'|'LastModifiedDate'|'StorageClass'|'ETag'|'IsMultipartUploaded'|'ReplicationStatus'|'EncryptionStatus',
],
'Schedule': {
'Frequency': 'Daily'|'Weekly'
}
}
)
[REQUIRED] Specifies the inventory configuration.
None
Deprecated, see the PutBucketLifecycleConfiguration operation.
Danger
This operation is deprecated and may not function as expected. This operation should not be used going forward and is only kept for the purpose of backwards compatiblity.
See also: AWS API Documentation
Request Syntax
response = client.put_bucket_lifecycle(
Bucket='string',
LifecycleConfiguration={
'Rules': [
{
'Expiration': {
'Date': datetime(2015, 1, 1),
'Days': 123,
'ExpiredObjectDeleteMarker': True|False
},
'ID': 'string',
'Prefix': 'string',
'Status': 'Enabled'|'Disabled',
'Transition': {
'Date': datetime(2015, 1, 1),
'Days': 123,
'StorageClass': 'GLACIER'|'STANDARD_IA'|'ONEZONE_IA'
},
'NoncurrentVersionTransition': {
'NoncurrentDays': 123,
'StorageClass': 'GLACIER'|'STANDARD_IA'|'ONEZONE_IA'
},
'NoncurrentVersionExpiration': {
'NoncurrentDays': 123
},
'AbortIncompleteMultipartUpload': {
'DaysAfterInitiation': 123
}
},
]
}
)
None
Sets lifecycle configuration for your bucket. If a lifecycle configuration exists, it replaces it.
See also: AWS API Documentation
Request Syntax
response = client.put_bucket_lifecycle_configuration(
Bucket='string',
LifecycleConfiguration={
'Rules': [
{
'Expiration': {
'Date': datetime(2015, 1, 1),
'Days': 123,
'ExpiredObjectDeleteMarker': True|False
},
'ID': 'string',
'Prefix': 'string',
'Filter': {
'Prefix': 'string',
'Tag': {
'Key': 'string',
'Value': 'string'
},
'And': {
'Prefix': 'string',
'Tags': [
{
'Key': 'string',
'Value': 'string'
},
]
}
},
'Status': 'Enabled'|'Disabled',
'Transitions': [
{
'Date': datetime(2015, 1, 1),
'Days': 123,
'StorageClass': 'GLACIER'|'STANDARD_IA'|'ONEZONE_IA'
},
],
'NoncurrentVersionTransitions': [
{
'NoncurrentDays': 123,
'StorageClass': 'GLACIER'|'STANDARD_IA'|'ONEZONE_IA'
},
],
'NoncurrentVersionExpiration': {
'NoncurrentDays': 123
},
'AbortIncompleteMultipartUpload': {
'DaysAfterInitiation': 123
}
},
]
}
)
None
Set the logging parameters for a bucket and to specify permissions for who can view and modify the logging parameters. To set the logging status of a bucket, you must be the bucket owner.
See also: AWS API Documentation
Request Syntax
response = client.put_bucket_logging(
Bucket='string',
BucketLoggingStatus={
'LoggingEnabled': {
'TargetBucket': 'string',
'TargetGrants': [
{
'Grantee': {
'DisplayName': 'string',
'EmailAddress': 'string',
'ID': 'string',
'Type': 'CanonicalUser'|'AmazonCustomerByEmail'|'Group',
'URI': 'string'
},
'Permission': 'FULL_CONTROL'|'READ'|'WRITE'
},
],
'TargetPrefix': 'string'
}
},
)
[REQUIRED]
None
Sets a metrics configuration (specified by the metrics configuration ID) for the bucket.
See also: AWS API Documentation
Request Syntax
response = client.put_bucket_metrics_configuration(
Bucket='string',
Id='string',
MetricsConfiguration={
'Id': 'string',
'Filter': {
'Prefix': 'string',
'Tag': {
'Key': 'string',
'Value': 'string'
},
'And': {
'Prefix': 'string',
'Tags': [
{
'Key': 'string',
'Value': 'string'
},
]
}
}
}
)
[REQUIRED] Specifies the metrics configuration.
None
Deprecated, see the PutBucketNotificationConfiguraiton operation.
Danger
This operation is deprecated and may not function as expected. This operation should not be used going forward and is only kept for the purpose of backwards compatiblity.
See also: AWS API Documentation
Request Syntax
response = client.put_bucket_notification(
Bucket='string',
NotificationConfiguration={
'TopicConfiguration': {
'Id': 'string',
'Events': [
's3:ReducedRedundancyLostObject'|'s3:ObjectCreated:*'|'s3:ObjectCreated:Put'|'s3:ObjectCreated:Post'|'s3:ObjectCreated:Copy'|'s3:ObjectCreated:CompleteMultipartUpload'|'s3:ObjectRemoved:*'|'s3:ObjectRemoved:Delete'|'s3:ObjectRemoved:DeleteMarkerCreated',
],
'Event': 's3:ReducedRedundancyLostObject'|'s3:ObjectCreated:*'|'s3:ObjectCreated:Put'|'s3:ObjectCreated:Post'|'s3:ObjectCreated:Copy'|'s3:ObjectCreated:CompleteMultipartUpload'|'s3:ObjectRemoved:*'|'s3:ObjectRemoved:Delete'|'s3:ObjectRemoved:DeleteMarkerCreated',
'Topic': 'string'
},
'QueueConfiguration': {
'Id': 'string',
'Event': 's3:ReducedRedundancyLostObject'|'s3:ObjectCreated:*'|'s3:ObjectCreated:Put'|'s3:ObjectCreated:Post'|'s3:ObjectCreated:Copy'|'s3:ObjectCreated:CompleteMultipartUpload'|'s3:ObjectRemoved:*'|'s3:ObjectRemoved:Delete'|'s3:ObjectRemoved:DeleteMarkerCreated',
'Events': [
's3:ReducedRedundancyLostObject'|'s3:ObjectCreated:*'|'s3:ObjectCreated:Put'|'s3:ObjectCreated:Post'|'s3:ObjectCreated:Copy'|'s3:ObjectCreated:CompleteMultipartUpload'|'s3:ObjectRemoved:*'|'s3:ObjectRemoved:Delete'|'s3:ObjectRemoved:DeleteMarkerCreated',
],
'Queue': 'string'
},
'CloudFunctionConfiguration': {
'Id': 'string',
'Event': 's3:ReducedRedundancyLostObject'|'s3:ObjectCreated:*'|'s3:ObjectCreated:Put'|'s3:ObjectCreated:Post'|'s3:ObjectCreated:Copy'|'s3:ObjectCreated:CompleteMultipartUpload'|'s3:ObjectRemoved:*'|'s3:ObjectRemoved:Delete'|'s3:ObjectRemoved:DeleteMarkerCreated',
'Events': [
's3:ReducedRedundancyLostObject'|'s3:ObjectCreated:*'|'s3:ObjectCreated:Put'|'s3:ObjectCreated:Post'|'s3:ObjectCreated:Copy'|'s3:ObjectCreated:CompleteMultipartUpload'|'s3:ObjectRemoved:*'|'s3:ObjectRemoved:Delete'|'s3:ObjectRemoved:DeleteMarkerCreated',
],
'CloudFunction': 'string',
'InvocationRole': 'string'
}
}
)
[REQUIRED]
None
Enables notifications of specified events for a bucket.
See also: AWS API Documentation
Request Syntax
response = client.put_bucket_notification_configuration(
Bucket='string',
NotificationConfiguration={
'TopicConfigurations': [
{
'Id': 'string',
'TopicArn': 'string',
'Events': [
's3:ReducedRedundancyLostObject'|'s3:ObjectCreated:*'|'s3:ObjectCreated:Put'|'s3:ObjectCreated:Post'|'s3:ObjectCreated:Copy'|'s3:ObjectCreated:CompleteMultipartUpload'|'s3:ObjectRemoved:*'|'s3:ObjectRemoved:Delete'|'s3:ObjectRemoved:DeleteMarkerCreated',
],
'Filter': {
'Key': {
'FilterRules': [
{
'Name': 'prefix'|'suffix',
'Value': 'string'
},
]
}
}
},
],
'QueueConfigurations': [
{
'Id': 'string',
'QueueArn': 'string',
'Events': [
's3:ReducedRedundancyLostObject'|'s3:ObjectCreated:*'|'s3:ObjectCreated:Put'|'s3:ObjectCreated:Post'|'s3:ObjectCreated:Copy'|'s3:ObjectCreated:CompleteMultipartUpload'|'s3:ObjectRemoved:*'|'s3:ObjectRemoved:Delete'|'s3:ObjectRemoved:DeleteMarkerCreated',
],
'Filter': {
'Key': {
'FilterRules': [
{
'Name': 'prefix'|'suffix',
'Value': 'string'
},
]
}
}
},
],
'LambdaFunctionConfigurations': [
{
'Id': 'string',
'LambdaFunctionArn': 'string',
'Events': [
's3:ReducedRedundancyLostObject'|'s3:ObjectCreated:*'|'s3:ObjectCreated:Put'|'s3:ObjectCreated:Post'|'s3:ObjectCreated:Copy'|'s3:ObjectCreated:CompleteMultipartUpload'|'s3:ObjectRemoved:*'|'s3:ObjectRemoved:Delete'|'s3:ObjectRemoved:DeleteMarkerCreated',
],
'Filter': {
'Key': {
'FilterRules': [
{
'Name': 'prefix'|'suffix',
'Value': 'string'
},
]
}
}
},
]
}
)
[REQUIRED] Container for specifying the notification configuration of the bucket. If this element is empty, notifications are turned off on the bucket.
None
Replaces a policy on a bucket. If the bucket already has a policy, the one in this request completely replaces it.
See also: AWS API Documentation
Request Syntax
response = client.put_bucket_policy(
Bucket='string',
ConfirmRemoveSelfBucketAccess=True|False,
Policy='string'
)
None
Creates a new replication configuration (or replaces an existing one, if present).
See also: AWS API Documentation
Request Syntax
response = client.put_bucket_replication(
Bucket='string',
ReplicationConfiguration={
'Role': 'string',
'Rules': [
{
'ID': 'string',
'Prefix': 'string',
'Status': 'Enabled'|'Disabled',
'SourceSelectionCriteria': {
'SseKmsEncryptedObjects': {
'Status': 'Enabled'|'Disabled'
}
},
'Destination': {
'Bucket': 'string',
'Account': 'string',
'StorageClass': 'STANDARD'|'REDUCED_REDUNDANCY'|'STANDARD_IA'|'ONEZONE_IA',
'AccessControlTranslation': {
'Owner': 'Destination'
},
'EncryptionConfiguration': {
'ReplicaKmsKeyID': 'string'
}
}
},
]
}
)
[REQUIRED] Container for replication rules. You can add as many as 1,000 rules. Total replication configuration size can be up to 2 MB.
None
Sets the request payment configuration for a bucket. By default, the bucket owner pays for downloads from the bucket. This configuration parameter enables the bucket owner (only) to specify that the person requesting the download will be charged for the download. Documentation on requester pays buckets can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html
See also: AWS API Documentation
Request Syntax
response = client.put_bucket_request_payment(
Bucket='string',
RequestPaymentConfiguration={
'Payer': 'Requester'|'BucketOwner'
}
)
[REQUIRED]
None
Sets the tags for a bucket.
See also: AWS API Documentation
Request Syntax
response = client.put_bucket_tagging(
Bucket='string',
Tagging={
'TagSet': [
{
'Key': 'string',
'Value': 'string'
},
]
}
)
[REQUIRED]
None
Sets the versioning state of an existing bucket. To set the versioning state, you must be the bucket owner.
See also: AWS API Documentation
Request Syntax
response = client.put_bucket_versioning(
Bucket='string',
MFA='string',
VersioningConfiguration={
'MFADelete': 'Enabled'|'Disabled',
'Status': 'Enabled'|'Suspended'
}
)
[REQUIRED]
None
Set the website configuration for a bucket.
See also: AWS API Documentation
Request Syntax
response = client.put_bucket_website(
Bucket='string',
WebsiteConfiguration={
'ErrorDocument': {
'Key': 'string'
},
'IndexDocument': {
'Suffix': 'string'
},
'RedirectAllRequestsTo': {
'HostName': 'string',
'Protocol': 'http'|'https'
},
'RoutingRules': [
{
'Condition': {
'HttpErrorCodeReturnedEquals': 'string',
'KeyPrefixEquals': 'string'
},
'Redirect': {
'HostName': 'string',
'HttpRedirectCode': 'string',
'Protocol': 'http'|'https',
'ReplaceKeyPrefixWith': 'string',
'ReplaceKeyWith': 'string'
}
},
]
}
)
[REQUIRED]
None
Adds an object to a bucket.
See also: AWS API Documentation
Request Syntax
response = client.put_object(
ACL='private'|'public-read'|'public-read-write'|'authenticated-read'|'aws-exec-read'|'bucket-owner-read'|'bucket-owner-full-control',
Body=b'bytes'|file,
Bucket='string',
CacheControl='string',
ContentDisposition='string',
ContentEncoding='string',
ContentLanguage='string',
ContentLength=123,
ContentMD5='string',
ContentType='string',
Expires=datetime(2015, 1, 1),
GrantFullControl='string',
GrantRead='string',
GrantReadACP='string',
GrantWriteACP='string',
Key='string',
Metadata={
'string': 'string'
},
ServerSideEncryption='AES256'|'aws:kms',
StorageClass='STANDARD'|'REDUCED_REDUNDANCY'|'STANDARD_IA'|'ONEZONE_IA',
WebsiteRedirectLocation='string',
SSECustomerAlgorithm='string',
SSECustomerKey='string',
SSEKMSKeyId='string',
RequestPayer='requester',
Tagging='string'
)
A map of metadata to store with the object in S3.
dict
Response Syntax
{
'Expiration': 'string',
'ETag': 'string',
'ServerSideEncryption': 'AES256'|'aws:kms',
'VersionId': 'string',
'SSECustomerAlgorithm': 'string',
'SSECustomerKeyMD5': 'string',
'SSEKMSKeyId': 'string',
'RequestCharged': 'requester'
}
Response Structure
uses the acl subresource to set the access control list (ACL) permissions for an object that already exists in a bucket
See also: AWS API Documentation
Request Syntax
response = client.put_object_acl(
ACL='private'|'public-read'|'public-read-write'|'authenticated-read'|'aws-exec-read'|'bucket-owner-read'|'bucket-owner-full-control',
AccessControlPolicy={
'Grants': [
{
'Grantee': {
'DisplayName': 'string',
'EmailAddress': 'string',
'ID': 'string',
'Type': 'CanonicalUser'|'AmazonCustomerByEmail'|'Group',
'URI': 'string'
},
'Permission': 'FULL_CONTROL'|'WRITE'|'WRITE_ACP'|'READ'|'READ_ACP'
},
],
'Owner': {
'DisplayName': 'string',
'ID': 'string'
}
},
Bucket='string',
GrantFullControl='string',
GrantRead='string',
GrantReadACP='string',
GrantWrite='string',
GrantWriteACP='string',
Key='string',
RequestPayer='requester',
VersionId='string'
)
dict
Response Syntax
{
'RequestCharged': 'requester'
}
Response Structure
Sets the supplied tag-set to an object that already exists in a bucket
See also: AWS API Documentation
Request Syntax
response = client.put_object_tagging(
Bucket='string',
Key='string',
VersionId='string',
ContentMD5='string',
Tagging={
'TagSet': [
{
'Key': 'string',
'Value': 'string'
},
]
}
)
[REQUIRED]
dict
Response Syntax
{
'VersionId': 'string'
}
Response Structure
Restores an archived copy of an object back into Amazon S3
See also: AWS API Documentation
Request Syntax
response = client.restore_object(
Bucket='string',
Key='string',
VersionId='string',
RestoreRequest={
'Days': 123,
'GlacierJobParameters': {
'Tier': 'Standard'|'Bulk'|'Expedited'
},
'Type': 'SELECT',
'Tier': 'Standard'|'Bulk'|'Expedited',
'Description': 'string',
'SelectParameters': {
'InputSerialization': {
'CSV': {
'FileHeaderInfo': 'USE'|'IGNORE'|'NONE',
'Comments': 'string',
'QuoteEscapeCharacter': 'string',
'RecordDelimiter': 'string',
'FieldDelimiter': 'string',
'QuoteCharacter': 'string',
'AllowQuotedRecordDelimiter': True|False
},
'CompressionType': 'NONE'|'GZIP',
'JSON': {
'Type': 'DOCUMENT'|'LINES'
}
},
'ExpressionType': 'SQL',
'Expression': 'string',
'OutputSerialization': {
'CSV': {
'QuoteFields': 'ALWAYS'|'ASNEEDED',
'QuoteEscapeCharacter': 'string',
'RecordDelimiter': 'string',
'FieldDelimiter': 'string',
'QuoteCharacter': 'string'
},
'JSON': {
'RecordDelimiter': 'string'
}
}
},
'OutputLocation': {
'S3': {
'BucketName': 'string',
'Prefix': 'string',
'Encryption': {
'EncryptionType': 'AES256'|'aws:kms',
'KMSKeyId': 'string',
'KMSContext': 'string'
},
'CannedACL': 'private'|'public-read'|'public-read-write'|'authenticated-read'|'aws-exec-read'|'bucket-owner-read'|'bucket-owner-full-control',
'AccessControlList': [
{
'Grantee': {
'DisplayName': 'string',
'EmailAddress': 'string',
'ID': 'string',
'Type': 'CanonicalUser'|'AmazonCustomerByEmail'|'Group',
'URI': 'string'
},
'Permission': 'FULL_CONTROL'|'WRITE'|'WRITE_ACP'|'READ'|'READ_ACP'
},
],
'Tagging': {
'TagSet': [
{
'Key': 'string',
'Value': 'string'
},
]
},
'UserMetadata': [
{
'Name': 'string',
'Value': 'string'
},
],
'StorageClass': 'STANDARD'|'REDUCED_REDUNDANCY'|'STANDARD_IA'|'ONEZONE_IA'
}
}
},
RequestPayer='requester'
)
Container for restore job parameters.
dict
Response Syntax
{
'RequestCharged': 'requester',
'RestoreOutputPath': 'string'
}
Response Structure
This operation filters the contents of an Amazon S3 object based on a simple Structured Query Language (SQL) statement. In the request, along with the SQL expression, you must also specify a data serialization format (JSON or CSV) of the object. Amazon S3 uses this to parse object data into records, and returns only records that match the specified SQL expression. You must also specify the data serialization format for the response.
See also: AWS API Documentation
Request Syntax
response = client.select_object_content(
Bucket='string',
Key='string',
SSECustomerAlgorithm='string',
SSECustomerKey='string',
Expression='string',
ExpressionType='SQL',
RequestProgress={
'Enabled': True|False
},
InputSerialization={
'CSV': {
'FileHeaderInfo': 'USE'|'IGNORE'|'NONE',
'Comments': 'string',
'QuoteEscapeCharacter': 'string',
'RecordDelimiter': 'string',
'FieldDelimiter': 'string',
'QuoteCharacter': 'string',
'AllowQuotedRecordDelimiter': True|False
},
'CompressionType': 'NONE'|'GZIP',
'JSON': {
'Type': 'DOCUMENT'|'LINES'
}
},
OutputSerialization={
'CSV': {
'QuoteFields': 'ALWAYS'|'ASNEEDED',
'QuoteEscapeCharacter': 'string',
'RecordDelimiter': 'string',
'FieldDelimiter': 'string',
'QuoteCharacter': 'string'
},
'JSON': {
'RecordDelimiter': 'string'
}
}
)
Specifies if periodic request progress information should be enabled.
[REQUIRED] Describes the format of the data in the object that is being queried.
[REQUIRED] Describes the format of the data that you want Amazon S3 to return in response.
dict
The response of this operation contains an EventStream member. When iterated the EventStream will yield events based on the structure below, where only one of the top level keys will be present for any given event.
Response Syntax
{
'Payload': EventStream({
'Records': {
'Payload': b'bytes'
},
'Stats': {
'Details': {
'BytesScanned': 123,
'BytesProcessed': 123,
'BytesReturned': 123
}
},
'Progress': {
'Details': {
'BytesScanned': 123,
'BytesProcessed': 123,
'BytesReturned': 123
}
},
'Cont': {},
'End': {}
})
}
Response Structure
Uploads a part in a multipart upload.
Note: After you initiate multipart upload and upload one or more parts, you must either complete or abort multipart upload in order to stop getting charged for storage of the uploaded parts. Only after you either complete or abort multipart upload, Amazon S3 frees up the parts storage and stops charging you for the parts storage.
See also: AWS API Documentation
Request Syntax
response = client.upload_part(
Body=b'bytes'|file,
Bucket='string',
ContentLength=123,
ContentMD5='string',
Key='string',
PartNumber=123,
UploadId='string',
SSECustomerAlgorithm='string',
SSECustomerKey='string',
RequestPayer='requester'
)
dict
Response Syntax
{
'ServerSideEncryption': 'AES256'|'aws:kms',
'ETag': 'string',
'SSECustomerAlgorithm': 'string',
'SSECustomerKeyMD5': 'string',
'SSEKMSKeyId': 'string',
'RequestCharged': 'requester'
}
Response Structure
Uploads a part by copying data from an existing object as data source.
See also: AWS API Documentation
Request Syntax
response = client.upload_part_copy(
Bucket='string',
CopySource='string' or {'Bucket': 'string', 'Key': 'string', 'VersionId': 'string'},
CopySourceIfMatch='string',
CopySourceIfModifiedSince=datetime(2015, 1, 1),
CopySourceIfNoneMatch='string',
CopySourceIfUnmodifiedSince=datetime(2015, 1, 1),
CopySourceRange='string',
Key='string',
PartNumber=123,
UploadId='string',
SSECustomerAlgorithm='string',
SSECustomerKey='string',
CopySourceSSECustomerAlgorithm='string',
CopySourceSSECustomerKey='string',
RequestPayer='requester'
)
dict
Response Syntax
{
'CopySourceVersionId': 'string',
'CopyPartResult': {
'ETag': 'string',
'LastModified': datetime(2015, 1, 1)
},
'ServerSideEncryption': 'AES256'|'aws:kms',
'SSECustomerAlgorithm': 'string',
'SSECustomerKeyMD5': 'string',
'SSEKMSKeyId': 'string',
'RequestCharged': 'requester'
}
Response Structure
The available paginators are:
paginator = client.get_paginator('list_multipart_uploads')
Creates an iterator that will paginate through responses from S3.Client.list_multipart_uploads().
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
Bucket='string',
Delimiter='string',
EncodingType='url',
Prefix='string',
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken from a previous response.
dict
Response Syntax
{
'Bucket': 'string',
'KeyMarker': 'string',
'UploadIdMarker': 'string',
'Prefix': 'string',
'Delimiter': 'string',
'MaxUploads': 123,
'IsTruncated': True|False,
'Uploads': [
{
'UploadId': 'string',
'Key': 'string',
'Initiated': datetime(2015, 1, 1),
'StorageClass': 'STANDARD'|'REDUCED_REDUNDANCY'|'STANDARD_IA'|'ONEZONE_IA',
'Owner': {
'DisplayName': 'string',
'ID': 'string'
},
'Initiator': {
'ID': 'string',
'DisplayName': 'string'
}
},
],
'CommonPrefixes': [
{
'Prefix': 'string'
},
],
'EncodingType': 'url',
'NextToken': 'string'
}
Response Structure
(dict) --
Bucket (string) -- Name of the bucket to which the multipart upload was initiated.
KeyMarker (string) -- The key at or after which the listing began.
UploadIdMarker (string) -- Upload ID after which listing began.
Prefix (string) -- When a prefix is provided in the request, this field contains the specified prefix. The result contains only keys starting with the specified prefix.
Delimiter (string) --
MaxUploads (integer) -- Maximum number of multipart uploads that could have been included in the response.
IsTruncated (boolean) -- Indicates whether the returned list of multipart uploads is truncated. A value of true indicates that the list was truncated. The list can be truncated if the number of multipart uploads exceeds the limit allowed or specified by max uploads.
Uploads (list) --
CommonPrefixes (list) --
EncodingType (string) -- Encoding type used by Amazon S3 to encode object keys in the response.
NextToken (string) --
A token to resume pagination.
paginator = client.get_paginator('list_object_versions')
Creates an iterator that will paginate through responses from S3.Client.list_object_versions().
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
Bucket='string',
Delimiter='string',
EncodingType='url',
Prefix='string',
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken from a previous response.
dict
Response Syntax
{
'IsTruncated': True|False,
'KeyMarker': 'string',
'VersionIdMarker': 'string',
'Versions': [
{
'ETag': 'string',
'Size': 123,
'StorageClass': 'STANDARD',
'Key': 'string',
'VersionId': 'string',
'IsLatest': True|False,
'LastModified': datetime(2015, 1, 1),
'Owner': {
'DisplayName': 'string',
'ID': 'string'
}
},
],
'DeleteMarkers': [
{
'Owner': {
'DisplayName': 'string',
'ID': 'string'
},
'Key': 'string',
'VersionId': 'string',
'IsLatest': True|False,
'LastModified': datetime(2015, 1, 1)
},
],
'Name': 'string',
'Prefix': 'string',
'Delimiter': 'string',
'MaxKeys': 123,
'CommonPrefixes': [
{
'Prefix': 'string'
},
],
'EncodingType': 'url',
'NextToken': 'string'
}
Response Structure
(dict) --
IsTruncated (boolean) -- A flag that indicates whether or not Amazon S3 returned all of the results that satisfied the search criteria. If your results were truncated, you can make a follow-up paginated request using the NextKeyMarker and NextVersionIdMarker response parameters as a starting place in another request to return the rest of the results.
KeyMarker (string) -- Marks the last Key returned in a truncated response.
VersionIdMarker (string) --
Versions (list) --
DeleteMarkers (list) --
Name (string) --
Prefix (string) --
Delimiter (string) --
MaxKeys (integer) --
CommonPrefixes (list) --
EncodingType (string) -- Encoding type used by Amazon S3 to encode object keys in the response.
NextToken (string) --
A token to resume pagination.
paginator = client.get_paginator('list_objects')
Creates an iterator that will paginate through responses from S3.Client.list_objects().
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
Bucket='string',
Delimiter='string',
EncodingType='url',
Prefix='string',
RequestPayer='requester',
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken from a previous response.
dict
Response Syntax
{
'IsTruncated': True|False,
'Marker': 'string',
'NextMarker': 'string',
'Contents': [
{
'Key': 'string',
'LastModified': datetime(2015, 1, 1),
'ETag': 'string',
'Size': 123,
'StorageClass': 'STANDARD'|'REDUCED_REDUNDANCY'|'GLACIER'|'STANDARD_IA'|'ONEZONE_IA',
'Owner': {
'DisplayName': 'string',
'ID': 'string'
}
},
],
'Name': 'string',
'Prefix': 'string',
'Delimiter': 'string',
'MaxKeys': 123,
'CommonPrefixes': [
{
'Prefix': 'string'
},
],
'EncodingType': 'url',
'NextToken': 'string'
}
Response Structure
(dict) --
IsTruncated (boolean) -- A flag that indicates whether or not Amazon S3 returned all of the results that satisfied the search criteria.
Marker (string) --
NextMarker (string) -- When response is truncated (the IsTruncated element value in the response is true), you can use the key name in this field as marker in the subsequent request to get next set of objects. Amazon S3 lists objects in alphabetical order Note: This element is returned only if you have delimiter request parameter specified. If response does not include the NextMaker and it is truncated, you can use the value of the last Key in the response as the marker in the subsequent request to get the next set of object keys.
Contents (list) --
Name (string) --
Prefix (string) --
Delimiter (string) --
MaxKeys (integer) --
CommonPrefixes (list) --
EncodingType (string) -- Encoding type used by Amazon S3 to encode object keys in the response.
NextToken (string) --
A token to resume pagination.
paginator = client.get_paginator('list_objects_v2')
Creates an iterator that will paginate through responses from S3.Client.list_objects_v2().
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
Bucket='string',
Delimiter='string',
EncodingType='url',
Prefix='string',
FetchOwner=True|False,
StartAfter='string',
RequestPayer='requester',
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken from a previous response.
dict
Response Syntax
{
'IsTruncated': True|False,
'Contents': [
{
'Key': 'string',
'LastModified': datetime(2015, 1, 1),
'ETag': 'string',
'Size': 123,
'StorageClass': 'STANDARD'|'REDUCED_REDUNDANCY'|'GLACIER'|'STANDARD_IA'|'ONEZONE_IA',
'Owner': {
'DisplayName': 'string',
'ID': 'string'
}
},
],
'Name': 'string',
'Prefix': 'string',
'Delimiter': 'string',
'MaxKeys': 123,
'CommonPrefixes': [
{
'Prefix': 'string'
},
],
'EncodingType': 'url',
'KeyCount': 123,
'ContinuationToken': 'string',
'StartAfter': 'string',
'NextToken': 'string'
}
Response Structure
(dict) --
IsTruncated (boolean) -- A flag that indicates whether or not Amazon S3 returned all of the results that satisfied the search criteria.
Contents (list) -- Metadata about each object returned.
Name (string) -- Name of the bucket to list.
Prefix (string) -- Limits the response to keys that begin with the specified prefix.
Delimiter (string) -- A delimiter is a character you use to group keys.
MaxKeys (integer) -- Sets the maximum number of keys returned in the response. The response might contain fewer keys but will never contain more.
CommonPrefixes (list) -- CommonPrefixes contains all (if there are any) keys between Prefix and the next occurrence of the string specified by delimiter
EncodingType (string) -- Encoding type used by Amazon S3 to encode object keys in the response.
KeyCount (integer) -- KeyCount is the number of keys returned with this request. KeyCount will always be less than equals to MaxKeys field. Say you ask for 50 keys, your result will include less than equals 50 keys
ContinuationToken (string) -- ContinuationToken indicates Amazon S3 that the list is being continued on this bucket with a token. ContinuationToken is obfuscated and is not a real key
StartAfter (string) -- StartAfter is where you want Amazon S3 to start listing from. Amazon S3 starts listing after this specified key. StartAfter can be any key in the bucket
NextToken (string) --
A token to resume pagination.
paginator = client.get_paginator('list_parts')
Creates an iterator that will paginate through responses from S3.Client.list_parts().
See also: AWS API Documentation
Request Syntax
response_iterator = paginator.paginate(
Bucket='string',
Key='string',
UploadId='string',
RequestPayer='requester',
PaginationConfig={
'MaxItems': 123,
'PageSize': 123,
'StartingToken': 'string'
}
)
A dictionary that provides parameters to control pagination.
The total number of items to return. If the total number of items available is more than the value specified in max-items then a NextToken will be provided in the output that you can use to resume pagination.
The size of each page.
A token to specify where to start paginating. This is the NextToken from a previous response.
dict
Response Syntax
{
'AbortDate': datetime(2015, 1, 1),
'AbortRuleId': 'string',
'Bucket': 'string',
'Key': 'string',
'UploadId': 'string',
'PartNumberMarker': 123,
'MaxParts': 123,
'IsTruncated': True|False,
'Parts': [
{
'PartNumber': 123,
'LastModified': datetime(2015, 1, 1),
'ETag': 'string',
'Size': 123
},
],
'Initiator': {
'ID': 'string',
'DisplayName': 'string'
},
'Owner': {
'DisplayName': 'string',
'ID': 'string'
},
'StorageClass': 'STANDARD'|'REDUCED_REDUNDANCY'|'STANDARD_IA'|'ONEZONE_IA',
'RequestCharged': 'requester',
'NextToken': 'string'
}
Response Structure
(dict) --
AbortDate (datetime) -- Date when multipart upload will become eligible for abort operation by lifecycle.
AbortRuleId (string) -- Id of the lifecycle rule that makes a multipart upload eligible for abort operation.
Bucket (string) -- Name of the bucket to which the multipart upload was initiated.
Key (string) -- Object key for which the multipart upload was initiated.
UploadId (string) -- Upload ID identifying the multipart upload whose parts are being listed.
PartNumberMarker (integer) -- Part number after which listing begins.
MaxParts (integer) -- Maximum number of parts that were allowed in the response.
IsTruncated (boolean) -- Indicates whether the returned list of parts is truncated.
Parts (list) --
Initiator (dict) -- Identifies who initiated the multipart upload.
Owner (dict) --
StorageClass (string) -- The class of storage used to store the object.
RequestCharged (string) -- If present, indicates that the requester was successfully charged for the request.
NextToken (string) --
A token to resume pagination.
The available waiters are:
waiter = client.get_waiter('bucket_exists')
Polls S3.Client.head_bucket() every 5 seconds until a successful state is reached. An error is returned after 20 failed checks.
See also: AWS API Documentation
Request Syntax
waiter.wait(
Bucket='string',
WaiterConfig={
'Delay': 123,
'MaxAttempts': 123
}
)
A dictionary that provides parameters to control waiting behavior.
The amount of time in seconds to wait between attempts. Default: 5
The maximum number of attempts to be made. Default: 20
None
waiter = client.get_waiter('bucket_not_exists')
Polls S3.Client.head_bucket() every 5 seconds until a successful state is reached. An error is returned after 20 failed checks.
See also: AWS API Documentation
Request Syntax
waiter.wait(
Bucket='string',
WaiterConfig={
'Delay': 123,
'MaxAttempts': 123
}
)
A dictionary that provides parameters to control waiting behavior.
The amount of time in seconds to wait between attempts. Default: 5
The maximum number of attempts to be made. Default: 20
None
waiter = client.get_waiter('object_exists')
Polls S3.Client.head_object() every 5 seconds until a successful state is reached. An error is returned after 20 failed checks.
See also: AWS API Documentation
Request Syntax
waiter.wait(
Bucket='string',
IfMatch='string',
IfModifiedSince=datetime(2015, 1, 1),
IfNoneMatch='string',
IfUnmodifiedSince=datetime(2015, 1, 1),
Key='string',
Range='string',
VersionId='string',
SSECustomerAlgorithm='string',
SSECustomerKey='string',
RequestPayer='requester',
PartNumber=123,
WaiterConfig={
'Delay': 123,
'MaxAttempts': 123
}
)
A dictionary that provides parameters to control waiting behavior.
The amount of time in seconds to wait between attempts. Default: 5
The maximum number of attempts to be made. Default: 20
None
waiter = client.get_waiter('object_not_exists')
Polls S3.Client.head_object() every 5 seconds until a successful state is reached. An error is returned after 20 failed checks.
See also: AWS API Documentation
Request Syntax
waiter.wait(
Bucket='string',
IfMatch='string',
IfModifiedSince=datetime(2015, 1, 1),
IfNoneMatch='string',
IfUnmodifiedSince=datetime(2015, 1, 1),
Key='string',
Range='string',
VersionId='string',
SSECustomerAlgorithm='string',
SSECustomerKey='string',
RequestPayer='requester',
PartNumber=123,
WaiterConfig={
'Delay': 123,
'MaxAttempts': 123
}
)
A dictionary that provides parameters to control waiting behavior.
The amount of time in seconds to wait between attempts. Default: 5
The maximum number of attempts to be made. Default: 20
None