S3¶
Client¶
- class S3.Client¶
A low-level client representing Amazon Simple Storage Service (S3)
Note
For information about using the Amazon S3 API—including authentication, signing requests, code examples, and error handling—see the Amazon S3 Developer Guide.
Welcome to the Amazon S3 API Reference. This guide explains the Amazon Simple Storage Service (Amazon S3) application programming interface (API).
Welcome to the Amazon S3 API Reference. This guide explains the Amazon Simple Storage Service (Amazon S3) application programming interface (API).
You can use any toolkit that supports HTTP to use the REST API. You can even use a browser to fetch objects, as long as they are anonymously readable.
The REST API uses the standard HTTP headers and status codes, so that standard browsers and toolkits work as expected. In some areas, we have added functionality to HTTP (for example, we added headers to support access control). In these cases, we have done our best to add the new functionality in a way that matched the style of standard HTTP usage.
The current version of the Amazon S3 API is
2006-03-01.Amazon S3 supports the REST API.
Note
Support for SOAP over HTTP is deprecated, but it is still available over HTTPS. However, new Amazon S3 features will not be supported for SOAP. We recommend that you use either this REST API or the Amazon Web Services SDKs.
client = session.create_client('s3')
These are the available methods:
- abort_multipart_upload
- can_paginate
- close
- complete_multipart_upload
- copy_object
- create_bucket
- create_bucket_metadata_configuration
- create_bucket_metadata_table_configuration
- create_multipart_upload
- create_session
- delete_bucket
- delete_bucket_analytics_configuration
- delete_bucket_cors
- delete_bucket_encryption
- delete_bucket_intelligent_tiering_configuration
- delete_bucket_inventory_configuration
- delete_bucket_lifecycle
- delete_bucket_metadata_configuration
- delete_bucket_metadata_table_configuration
- delete_bucket_metrics_configuration
- delete_bucket_ownership_controls
- delete_bucket_policy
- delete_bucket_replication
- delete_bucket_tagging
- delete_bucket_website
- delete_object
- delete_object_annotation
- delete_object_tagging
- delete_objects
- delete_public_access_block
- generate_presigned_post
- generate_presigned_url
- get_bucket_abac
- get_bucket_accelerate_configuration
- get_bucket_acl
- get_bucket_analytics_configuration
- get_bucket_cors
- get_bucket_encryption
- get_bucket_intelligent_tiering_configuration
- get_bucket_inventory_configuration
- get_bucket_lifecycle
- get_bucket_lifecycle_configuration
- get_bucket_location
- get_bucket_logging
- get_bucket_metadata_configuration
- get_bucket_metadata_table_configuration
- get_bucket_metrics_configuration
- get_bucket_notification
- get_bucket_notification_configuration
- get_bucket_ownership_controls
- get_bucket_policy
- get_bucket_policy_status
- get_bucket_replication
- get_bucket_request_payment
- get_bucket_tagging
- get_bucket_versioning
- get_bucket_website
- get_object
- get_object_acl
- get_object_annotation
- get_object_attributes
- get_object_legal_hold
- get_object_lock_configuration
- get_object_retention
- get_object_tagging
- get_object_torrent
- get_paginator
- get_public_access_block
- get_waiter
- head_bucket
- head_object
- list_bucket_analytics_configurations
- list_bucket_intelligent_tiering_configurations
- list_bucket_inventory_configurations
- list_bucket_metrics_configurations
- list_buckets
- list_directory_buckets
- list_multipart_uploads
- list_object_annotations
- list_object_versions
- list_objects
- list_objects_v2
- list_parts
- put_bucket_abac
- put_bucket_accelerate_configuration
- put_bucket_acl
- put_bucket_analytics_configuration
- put_bucket_cors
- put_bucket_encryption
- put_bucket_intelligent_tiering_configuration
- put_bucket_inventory_configuration
- put_bucket_lifecycle
- put_bucket_lifecycle_configuration
- put_bucket_logging
- put_bucket_metrics_configuration
- put_bucket_notification
- put_bucket_notification_configuration
- put_bucket_ownership_controls
- put_bucket_policy
- put_bucket_replication
- put_bucket_request_payment
- put_bucket_tagging
- put_bucket_versioning
- put_bucket_website
- put_object
- put_object_acl
- put_object_annotation
- put_object_legal_hold
- put_object_lock_configuration
- put_object_retention
- put_object_tagging
- put_public_access_block
- rename_object
- restore_object
- select_object_content
- update_bucket_metadata_annotation_table_configuration
- update_bucket_metadata_inventory_table_configuration
- update_bucket_metadata_journal_table_configuration
- update_object_encryption
- upload_part
- upload_part_copy
- write_get_object_response
Client Exceptions¶
Client exceptions are available on a client instance via the exceptions property. For more detailed instructions and examples on the exact usage of client exceptions, see the error handling user guide.
The available client exceptions are:
- AccessDenied
- AnnotationLimitExceeded
- AnnotationNameTooLong
- BucketAlreadyExists
- BucketAlreadyOwnedByYou
- EncryptionTypeMismatch
- IdempotencyParameterMismatch
- InvalidAnnotationName
- InvalidObjectState
- InvalidPrefix
- InvalidRequest
- InvalidWriteOffset
- NoSuchAnnotation
- NoSuchBucket
- NoSuchKey
- NoSuchUpload
- ObjectAlreadyInActiveTierError
- ObjectNotInActiveTierError
- TooManyParts
- UnsupportedMediaType
Paginators¶
Paginators are available on a client instance via the get_paginator method. For more detailed instructions and examples on the usage of paginators, see the paginators user guide.
The available paginators are:
Waiters¶
Waiters are available on a client instance via the get_waiter method. For more detailed instructions and examples on the usage or waiters, see the waiters user guide.
The available waiters are:
Client Context Parameters¶
Client context parameters are configurable on a client instance via the client_context_params parameter in the Config object. For more detailed instructions and examples on the exact usage of context params see the configuration guide.
The available s3 client context params are:
disable_s3_express_session_auth(boolean) - Disables this client’s usage of Session Auth for S3Expressbuckets and reverts to using conventional SigV4 for those.