pub struct Client { /* private fields */ }
Expand description

Client for Amazon Simple Storage Service

Client for invoking operations on Amazon Simple Storage Service. Each operation on Amazon Simple Storage Service is a method on this this struct. .send() MUST be invoked on the generated operations to dispatch the request to the service.

Examples

Constructing a client and invoking an operation

    // create a shared configuration. This can be used & shared between multiple service clients.
    let shared_config = aws_config::load_from_env().await;
    let client = aws_sdk_s3::Client::new(&shared_config);
    // invoke an operation
    /* let rsp = client
        .<operation_name>().
        .<param>("some value")
        .send().await; */

Constructing a client with custom configuration

use aws_config::RetryConfig;
let shared_config = aws_config::load_from_env().await;
let config = aws_sdk_s3::config::Builder::from(&shared_config)
  .retry_config(RetryConfig::disabled())
  .build();
let client = aws_sdk_s3::Client::from_conf(config);

Implementations

Creates a client with the given service configuration.

Returns the client’s configuration.

Constructs a fluent builder for the AbortMultipartUpload operation.

Constructs a fluent builder for the CompleteMultipartUpload operation.

  • The fluent builder is configurable:
  • On success, responds with CompleteMultipartUploadOutput with field(s):
    • location(Option<String>):

      The URI that identifies the newly created object.

    • bucket(Option<String>):

      The name of the bucket that contains the newly created object. Does not return the access point ARN or access point alias if used.

      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 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.

      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 Amazon Web Services 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 in the Amazon S3 User Guide.

    • key(Option<String>):

      The object key of the newly created object.

    • expiration(Option<String>):

      If the object expiration is configured, this will contain the expiration date (expiry-date) and rule ID (rule-id). The value of rule-id is URL encoded.

    • e_tag(Option<String>):

      Entity tag that identifies the newly created object’s data. Objects with different object data will have different entity tags. The entity tag is an opaque string. The entity tag may or may not be an MD5 digest of the object data. If the entity tag is not an MD5 digest of the object data, it will contain one or more nonhexadecimal characters and/or will consist of less than 32 or more than 32 hexadecimal digits.

    • server_side_encryption(Option<ServerSideEncryption>):

      If you specified server-side encryption either with an Amazon S3-managed encryption key or an Amazon Web Services KMS key in your initiate multipart upload request, the response includes this header. It confirms the encryption algorithm that Amazon S3 used to encrypt the object.

    • version_id(Option<String>):

      Version ID of the newly created object, in case the bucket has versioning turned on.

    • ssekms_key_id(Option<String>):

      If present, specifies the ID of the Amazon Web Services Key Management Service (Amazon Web Services KMS) symmetric customer managed key that was used for the object.

    • bucket_key_enabled(bool):

      Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Amazon Web Services KMS (SSE-KMS).

    • request_charged(Option<RequestCharged>):

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

  • On failure, responds with SdkError<CompleteMultipartUploadError>

Constructs a fluent builder for the CopyObject operation.

Constructs a fluent builder for the CreateBucket operation.

Constructs a fluent builder for the CreateMultipartUpload operation.

Constructs a fluent builder for the DeleteBucket operation.

Constructs a fluent builder for the DeleteBucketAnalyticsConfiguration operation.

Constructs a fluent builder for the DeleteBucketCors operation.

Constructs a fluent builder for the DeleteBucketEncryption operation.

Constructs a fluent builder for the DeleteBucketIntelligentTieringConfiguration operation.

Constructs a fluent builder for the DeleteBucketInventoryConfiguration operation.

Constructs a fluent builder for the DeleteBucketLifecycle operation.

Constructs a fluent builder for the DeleteBucketMetricsConfiguration operation.

Constructs a fluent builder for the DeleteBucketOwnershipControls operation.

Constructs a fluent builder for the DeleteBucketPolicy operation.

Constructs a fluent builder for the DeleteBucketReplication operation.

Constructs a fluent builder for the DeleteBucketTagging operation.

Constructs a fluent builder for the DeleteBucketWebsite operation.

Constructs a fluent builder for the DeleteObject operation.

Constructs a fluent builder for the DeleteObjects operation.

Constructs a fluent builder for the DeleteObjectTagging operation.

Constructs a fluent builder for the DeletePublicAccessBlock operation.

Constructs a fluent builder for the GetBucketAccelerateConfiguration operation.

Constructs a fluent builder for the GetBucketAcl operation.

Constructs a fluent builder for the GetBucketAnalyticsConfiguration operation.

Constructs a fluent builder for the GetBucketCors operation.

Constructs a fluent builder for the GetBucketEncryption operation.

Constructs a fluent builder for the GetBucketIntelligentTieringConfiguration operation.

Constructs a fluent builder for the GetBucketInventoryConfiguration operation.

Constructs a fluent builder for the GetBucketLifecycleConfiguration operation.

Constructs a fluent builder for the GetBucketLocation operation.

Constructs a fluent builder for the GetBucketLogging operation.

Constructs a fluent builder for the GetBucketMetricsConfiguration operation.

Constructs a fluent builder for the GetBucketNotificationConfiguration operation.

Constructs a fluent builder for the GetBucketOwnershipControls operation.

Constructs a fluent builder for the GetBucketPolicy operation.

Constructs a fluent builder for the GetBucketPolicyStatus operation.

Constructs a fluent builder for the GetBucketReplication operation.

Constructs a fluent builder for the GetBucketRequestPayment operation.

Constructs a fluent builder for the GetBucketTagging operation.

Constructs a fluent builder for the GetBucketVersioning operation.

Constructs a fluent builder for the GetBucketWebsite operation.

Constructs a fluent builder for the GetObject operation.

Constructs a fluent builder for the GetObjectAcl operation.

Constructs a fluent builder for the GetObjectLegalHold operation.

Constructs a fluent builder for the GetObjectLockConfiguration operation.

Constructs a fluent builder for the GetObjectRetention operation.

Constructs a fluent builder for the GetObjectTagging operation.

Constructs a fluent builder for the GetObjectTorrent operation.

Constructs a fluent builder for the GetPublicAccessBlock operation.

Constructs a fluent builder for the HeadBucket operation.

  • The fluent builder is configurable:
    • bucket(impl Into<String>) / set_bucket(Option<String>):

      The bucket name.

      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 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.

      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 Amazon Web Services 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 in the Amazon S3 User Guide.

    • expected_bucket_owner(impl Into<String>) / set_expected_bucket_owner(Option<String>):

      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.

  • On success, responds with HeadBucketOutput
  • On failure, responds with SdkError<HeadBucketError>

Constructs a fluent builder for the HeadObject operation.

  • The fluent builder is configurable:
  • On success, responds with HeadObjectOutput with field(s):
    • delete_marker(bool):

      Specifies whether the object retrieved was (true) or was not (false) a Delete Marker. If false, this response header does not appear in the response.

    • accept_ranges(Option<String>):

      Indicates that a range of bytes was specified.

    • expiration(Option<String>):

      If the object expiration is configured (see PUT Bucket lifecycle), the response includes this header. It includes the expiry-date and rule-id key-value pairs providing object expiration information. The value of the rule-id is URL encoded.

    • restore(Option<String>):

      If the object is an archived object (an object whose storage class is GLACIER), the response includes this header if either the archive restoration is in progress (see RestoreObject or an archive copy is already restored.

      If an archive copy is already restored, the header value indicates when Amazon S3 is scheduled to delete the object copy. For example:

      x-amz-restore: ongoing-request=“false”, expiry-date=“Fri, 21 Dec 2012 00:00:00 GMT”

      If the object restoration is in progress, the header returns the value ongoing-request=“true”.

      For more information about archiving objects, see Transitioning Objects: General Considerations.

    • archive_status(Option<ArchiveStatus>):

      The archive state of the head object.

    • last_modified(Option<DateTime>):

      Creation date of the object.

    • content_length(i64):

      Size of the body in bytes.

    • e_tag(Option<String>):

      An ETag is an opaque identifier assigned by a web server to a specific version of a resource found at a URL.

    • missing_meta(i32):

      This is set to the number of metadata entries not returned in x-amz-meta headers. This can happen if you create metadata using an API like SOAP that supports more flexible metadata than the REST API. For example, using SOAP, you can create metadata whose values are not legal HTTP headers.

    • version_id(Option<String>):

      Version of the object.

    • cache_control(Option<String>):

      Specifies caching behavior along the request/reply chain.

    • content_disposition(Option<String>):

      Specifies presentational information for the object.

    • content_encoding(Option<String>):

      Specifies what content encodings have been applied to the object and thus what decoding mechanisms must be applied to obtain the media-type referenced by the Content-Type header field.

    • content_language(Option<String>):

      The language the content is in.

    • content_type(Option<String>):

      A standard MIME type describing the format of the object data.

    • expires(Option<DateTime>):

      The date and time at which the object is no longer cacheable.

    • website_redirect_location(Option<String>):

      If the bucket is configured as a website, redirects requests for this object to another object in the same bucket or to an external URL. Amazon S3 stores the value of this header in the object metadata.

    • server_side_encryption(Option<ServerSideEncryption>):

      If the object is stored using server-side encryption either with an Amazon Web Services KMS key or an Amazon S3-managed encryption key, the response includes this header with the value of the server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256, aws:kms).

    • metadata(Option<HashMap<String, String>>):

      A map of metadata to store with the object in S3.

    • sse_customer_algorithm(Option<String>):

      If server-side encryption with a customer-provided encryption key was requested, the response will include this header confirming the encryption algorithm used.

    • sse_customer_key_md5(Option<String>):

      If server-side encryption with a customer-provided encryption key was requested, the response will include this header to provide round-trip message integrity verification of the customer-provided encryption key.

    • ssekms_key_id(Option<String>):

      If present, specifies the ID of the Amazon Web Services Key Management Service (Amazon Web Services KMS) symmetric customer managed key that was used for the object.

    • bucket_key_enabled(bool):

      Indicates whether the object uses an S3 Bucket Key for server-side encryption with Amazon Web Services KMS (SSE-KMS).

    • storage_class(Option<StorageClass>):

      Provides storage class information of the object. Amazon S3 returns this header for all objects except for S3 Standard storage class objects.

      For more information, see Storage Classes.

    • request_charged(Option<RequestCharged>):

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

    • replication_status(Option<ReplicationStatus>):

      Amazon S3 can return this header if your request involves a bucket that is either a source or a destination in a replication rule.

      In replication, you have a source bucket on which you configure replication and destination bucket or buckets where Amazon S3 stores object replicas. When you request an object (GetObject) or object metadata (HeadObject) from these buckets, Amazon S3 will return the x-amz-replication-status header in the response as follows:

      • If requesting an object from the source bucket — Amazon S3 will return the x-amz-replication-status header if the object in your request is eligible for replication.

        For example, suppose that in your replication configuration, you specify object prefix TaxDocs requesting Amazon S3 to replicate objects with key prefix TaxDocs. Any objects you upload with this key name prefix, for example TaxDocs/document1.pdf, are eligible for replication. For any object request with this key name prefix, Amazon S3 will return the x-amz-replication-status header with value PENDING, COMPLETED or FAILED indicating object replication status.

      • If requesting an object from a destination bucket — Amazon S3 will return the x-amz-replication-status header with value REPLICA if the object in your request is a replica that Amazon S3 created and there is no replica modification replication in progress.

      • When replicating objects to multiple destination buckets the x-amz-replication-status header acts differently. The header of the source object will only return a value of COMPLETED when replication is successful to all destinations. The header will remain at value PENDING until replication has completed for all destinations. If one or more destinations fails replication the header will return FAILED.

      For more information, see Replication.

    • parts_count(i32):

      The count of parts this object has.

    • object_lock_mode(Option<ObjectLockMode>):

      The Object Lock mode, if any, that’s in effect for this object. This header is only returned if the requester has the s3:GetObjectRetention permission. For more information about S3 Object Lock, see Object Lock.

    • object_lock_retain_until_date(Option<DateTime>):

      The date and time when the Object Lock retention period expires. This header is only returned if the requester has the s3:GetObjectRetention permission.

    • object_lock_legal_hold_status(Option<ObjectLockLegalHoldStatus>):

      Specifies whether a legal hold is in effect for this object. This header is only returned if the requester has the s3:GetObjectLegalHold permission. This header is not returned if the specified version of this object has never had a legal hold applied. For more information about S3 Object Lock, see Object Lock.

  • On failure, responds with SdkError<HeadObjectError>

Constructs a fluent builder for the ListBucketAnalyticsConfigurations operation.

Constructs a fluent builder for the ListBucketIntelligentTieringConfigurations operation.

Constructs a fluent builder for the ListBucketInventoryConfigurations operation.

Constructs a fluent builder for the ListBucketMetricsConfigurations operation.

Constructs a fluent builder for the ListBuckets operation.

Constructs a fluent builder for the ListMultipartUploads operation.

  • The fluent builder is configurable:
    • bucket(impl Into<String>) / set_bucket(Option<String>):

      The name of the bucket to which the multipart upload 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 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.

      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 Amazon Web Services 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 in the Amazon S3 User Guide.

    • delimiter(impl Into<String>) / set_delimiter(Option<String>):

      Character you use to group keys.

      All keys that contain the same string between the prefix, if specified, and the first occurrence of the delimiter after the prefix are grouped under a single result element, CommonPrefixes. If you don’t specify the prefix parameter, then the substring starts at the beginning of the key. The keys that are grouped under CommonPrefixes result element are not returned elsewhere in the response.

    • encoding_type(EncodingType) / set_encoding_type(Option<EncodingType>):

      Requests Amazon S3 to encode the object keys in the response and specifies the encoding method to use. An object key may contain any Unicode character; however, XML 1.0 parser cannot parse some characters, such as characters with an ASCII value from 0 to 10. For characters that are not supported in XML 1.0, you can add this parameter to request that Amazon S3 encode the keys in the response.

    • key_marker(impl Into<String>) / set_key_marker(Option<String>):

      Together with upload-id-marker, this parameter specifies the multipart upload after which listing should begin.

      If upload-id-marker is not specified, only the keys lexicographically greater than the specified key-marker will be included in the list.

      If upload-id-marker is specified, any multipart uploads for a key equal to the key-marker might also be included, provided those multipart uploads have upload IDs lexicographically greater than the specified upload-id-marker.

    • max_uploads(i32) / set_max_uploads(i32):

      Sets the maximum number of multipart uploads, from 1 to 1,000, to return in the response body. 1,000 is the maximum number of uploads that can be returned in a response.

    • prefix(impl Into<String>) / set_prefix(Option<String>):

      Lists in-progress uploads only for those keys that begin with the specified prefix. You can use prefixes to separate a bucket into different grouping of keys. (You can think of using prefix to make groups in the same way you’d use a folder in a file system.)

    • upload_id_marker(impl Into<String>) / set_upload_id_marker(Option<String>):

      Together with key-marker, specifies the multipart upload after which listing should begin. If key-marker is not specified, the upload-id-marker parameter is ignored. Otherwise, any multipart uploads for a key equal to the key-marker might be included in the list only if they have an upload ID lexicographically greater than the specified upload-id-marker.

    • expected_bucket_owner(impl Into<String>) / set_expected_bucket_owner(Option<String>):

      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.

  • On success, responds with ListMultipartUploadsOutput with field(s):
    • bucket(Option<String>):

      The name of the bucket to which the multipart upload was initiated. Does not return the access point ARN or access point alias if used.

    • key_marker(Option<String>):

      The key at or after which the listing began.

    • upload_id_marker(Option<String>):

      Upload ID after which listing began.

    • next_key_marker(Option<String>):

      When a list is truncated, this element specifies the value that should be used for the key-marker request parameter in a subsequent request.

    • prefix(Option<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(Option<String>):

      Contains the delimiter you specified in the request. If you don’t specify a delimiter in your request, this element is absent from the response.

    • next_upload_id_marker(Option<String>):

      When a list is truncated, this element specifies the value that should be used for the upload-id-marker request parameter in a subsequent request.

    • max_uploads(i32):

      Maximum number of multipart uploads that could have been included in the response.

    • is_truncated(bool):

      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(Option<Vec<MultipartUpload>>):

      Container for elements related to a particular multipart upload. A response can contain zero or more Upload elements.

    • common_prefixes(Option<Vec<CommonPrefix>>):

      If you specify a delimiter in the request, then the result returns each distinct key prefix containing the delimiter in a CommonPrefixes element. The distinct key prefixes are returned in the Prefix child element.

    • encoding_type(Option<EncodingType>):

      Encoding type used by Amazon S3 to encode object keys in the response.

      If you specify encoding-type request parameter, Amazon S3 includes this element in the response, and returns encoded key name values in the following response elements:

      Delimiter, KeyMarker, Prefix, NextKeyMarker, Key.

  • On failure, responds with SdkError<ListMultipartUploadsError>

Constructs a fluent builder for the ListObjects operation.

  • The fluent builder is configurable:
    • bucket(impl Into<String>) / set_bucket(Option<String>):

      The name of the bucket containing the objects.

      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 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.

      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 Amazon Web Services 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 in the Amazon S3 User Guide.

    • delimiter(impl Into<String>) / set_delimiter(Option<String>):

      A delimiter is a character you use to group keys.

    • encoding_type(EncodingType) / set_encoding_type(Option<EncodingType>):

      Requests Amazon S3 to encode the object keys in the response and specifies the encoding method to use. An object key may contain any Unicode character; however, XML 1.0 parser cannot parse some characters, such as characters with an ASCII value from 0 to 10. For characters that are not supported in XML 1.0, you can add this parameter to request that Amazon S3 encode the keys in the response.

    • marker(impl Into<String>) / set_marker(Option<String>):

      Marker is where you want Amazon S3 to start listing from. Amazon S3 starts listing after this specified key. Marker can be any key in the bucket.

    • max_keys(i32) / set_max_keys(i32):

      Sets the maximum number of keys returned in the response. By default the action returns up to 1,000 key names. The response might contain fewer keys but will never contain more.

    • prefix(impl Into<String>) / set_prefix(Option<String>):

      Limits the response to keys that begin with the specified prefix.

    • request_payer(RequestPayer) / set_request_payer(Option<RequestPayer>):

      Confirms that the requester knows that she or he will be charged for the list objects request. Bucket owners need not specify this parameter in their requests.

    • expected_bucket_owner(impl Into<String>) / set_expected_bucket_owner(Option<String>):

      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.

  • On success, responds with ListObjectsOutput with field(s):
    • is_truncated(bool):

      A flag that indicates whether Amazon S3 returned all of the results that satisfied the search criteria.

    • marker(Option<String>):

      Indicates where in the bucket listing begins. Marker is included in the response if it was sent with the request.

    • next_marker(Option<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 NextMarker 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(Option<Vec<Object>>):

      Metadata about each object returned.

    • name(Option<String>):

      The bucket name.

    • prefix(Option<String>):

      Keys that begin with the indicated prefix.

    • delimiter(Option<String>):

      Causes keys that contain the same string between the prefix and the first occurrence of the delimiter to be rolled up into a single result element in the CommonPrefixes collection. These rolled-up keys are not returned elsewhere in the response. Each rolled-up result counts as only one return against the MaxKeys value.

    • max_keys(i32):

      The maximum number of keys returned in the response body.

    • common_prefixes(Option<Vec<CommonPrefix>>):

      All of the keys (up to 1,000) rolled up in a common prefix count as a single return when calculating the number of returns.

      A response can contain CommonPrefixes only if you specify a delimiter.

      CommonPrefixes contains all (if there are any) keys between Prefix and the next occurrence of the string specified by the delimiter.

      CommonPrefixes lists keys that act like subdirectories in the directory specified by Prefix.

      For example, if the prefix is notes/ and the delimiter is a slash (/) as in notes/summer/july, the common prefix is notes/summer/. All of the keys that roll up into a common prefix count as a single return when calculating the number of returns.

    • encoding_type(Option<EncodingType>):

      Encoding type used by Amazon S3 to encode object keys in the response.

  • On failure, responds with SdkError<ListObjectsError>

Constructs a fluent builder for the ListObjectsV2 operation. This operation supports pagination; See into_paginator().

  • The fluent builder is configurable:
  • On success, responds with ListObjectsV2Output with field(s):
    • is_truncated(bool):

      Set to false if all of the results were returned. Set to true if more keys are available to return. If the number of results exceeds that specified by MaxKeys, all of the results might not be returned.

    • contents(Option<Vec<Object>>):

      Metadata about each object returned.

    • name(Option<String>):

      The bucket name.

      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 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.

      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 Amazon Web Services 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 in the Amazon S3 User Guide.

    • prefix(Option<String>):

      Keys that begin with the indicated prefix.

    • delimiter(Option<String>):

      Causes keys that contain the same string between the prefix and the first occurrence of the delimiter to be rolled up into a single result element in the CommonPrefixes collection. These rolled-up keys are not returned elsewhere in the response. Each rolled-up result counts as only one return against the MaxKeys value.

    • max_keys(i32):

      Sets the maximum number of keys returned in the response. By default the action returns up to 1,000 key names. The response might contain fewer keys but will never contain more.

    • common_prefixes(Option<Vec<CommonPrefix>>):

      All of the keys (up to 1,000) rolled up into a common prefix count as a single return when calculating the number of returns.

      A response can contain CommonPrefixes only if you specify a delimiter.

      CommonPrefixes contains all (if there are any) keys between Prefix and the next occurrence of the string specified by a delimiter.

      CommonPrefixes lists keys that act like subdirectories in the directory specified by Prefix.

      For example, if the prefix is notes/ and the delimiter is a slash (/) as in notes/summer/july, the common prefix is notes/summer/. All of the keys that roll up into a common prefix count as a single return when calculating the number of returns.

    • encoding_type(Option<EncodingType>):

      Encoding type used by Amazon S3 to encode object key names in the XML response.

      If you specify the encoding-type request parameter, Amazon S3 includes this element in the response, and returns encoded key name values in the following response elements:

      Delimiter, Prefix, Key, and StartAfter.

    • key_count(i32):

      KeyCount is the number of keys returned with this request. KeyCount will always be less than or equals to MaxKeys field. Say you ask for 50 keys, your result will include less than equals 50 keys

    • continuation_token(Option<String>):

      If ContinuationToken was sent with the request, it is included in the response.

    • next_continuation_token(Option<String>):

      NextContinuationToken is sent when isTruncated is true, which means there are more keys in the bucket that can be listed. The next list requests to Amazon S3 can be continued with this NextContinuationToken. NextContinuationToken is obfuscated and is not a real key

    • start_after(Option<String>):

      If StartAfter was sent with the request, it is included in the response.

  • On failure, responds with SdkError<ListObjectsV2Error>

Constructs a fluent builder for the ListObjectVersions operation.

  • The fluent builder is configurable:
  • On success, responds with ListObjectVersionsOutput with field(s):
    • is_truncated(bool):

      A flag that indicates whether 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.

    • key_marker(Option<String>):

      Marks the last key returned in a truncated response.

    • version_id_marker(Option<String>):

      Marks the last version of the key returned in a truncated response.

    • next_key_marker(Option<String>):

      When the number of responses exceeds the value of MaxKeys, NextKeyMarker specifies the first key not returned that satisfies the search criteria. Use this value for the key-marker request parameter in a subsequent request.

    • next_version_id_marker(Option<String>):

      When the number of responses exceeds the value of MaxKeys, NextVersionIdMarker specifies the first object version not returned that satisfies the search criteria. Use this value for the version-id-marker request parameter in a subsequent request.

    • versions(Option<Vec<ObjectVersion>>):

      Container for version information.

    • delete_markers(Option<Vec<DeleteMarkerEntry>>):

      Container for an object that is a delete marker.

    • name(Option<String>):

      The bucket name.

    • prefix(Option<String>):

      Selects objects that start with the value supplied by this parameter.

    • delimiter(Option<String>):

      The delimiter grouping the included keys. A delimiter is a character that you specify to group keys. All keys that contain the same string between the prefix and the first occurrence of the delimiter are grouped under a single result element in CommonPrefixes. These groups are counted as one result against the max-keys limitation. These keys are not returned elsewhere in the response.

    • max_keys(i32):

      Specifies the maximum number of objects to return.

    • common_prefixes(Option<Vec<CommonPrefix>>):

      All of the keys rolled up into a common prefix count as a single return when calculating the number of returns.

    • encoding_type(Option<EncodingType>):

      Encoding type used by Amazon S3 to encode object key names in the XML response.

      If you specify encoding-type request parameter, Amazon S3 includes this element in the response, and returns encoded key name values in the following response elements:

      KeyMarker, NextKeyMarker, Prefix, Key, and Delimiter.

  • On failure, responds with SdkError<ListObjectVersionsError>

Constructs a fluent builder for the ListParts operation. This operation supports pagination; See into_paginator().

  • The fluent builder is configurable:
  • On success, responds with ListPartsOutput with field(s):
    • abort_date(Option<DateTime>):

      If the bucket has a lifecycle rule configured with an action to abort incomplete multipart uploads and the prefix in the lifecycle rule matches the object name in the request, then the response includes this header indicating when the initiated multipart upload will become eligible for abort operation. For more information, see Aborting Incomplete Multipart Uploads Using a Bucket Lifecycle Policy.

      The response will also include the x-amz-abort-rule-id header that will provide the ID of the lifecycle configuration rule that defines this action.

    • abort_rule_id(Option<String>):

      This header is returned along with the x-amz-abort-date header. It identifies applicable lifecycle configuration rule that defines the action to abort incomplete multipart uploads.

    • bucket(Option<String>):

      The name of the bucket to which the multipart upload was initiated. Does not return the access point ARN or access point alias if used.

    • key(Option<String>):

      Object key for which the multipart upload was initiated.

    • upload_id(Option<String>):

      Upload ID identifying the multipart upload whose parts are being listed.

    • part_number_marker(Option<String>):

      When a list is truncated, this element specifies the last part in the list, as well as the value to use for the part-number-marker request parameter in a subsequent request.

    • next_part_number_marker(Option<String>):

      When a list is truncated, this element specifies the last part in the list, as well as the value to use for the part-number-marker request parameter in a subsequent request.

    • max_parts(i32):

      Maximum number of parts that were allowed in the response.

    • is_truncated(bool):

      Indicates whether the returned list of parts is truncated. A true value indicates that the list was truncated. A list can be truncated if the number of parts exceeds the limit returned in the MaxParts element.

    • parts(Option<Vec<Part>>):

      Container for elements related to a particular part. A response can contain zero or more Part elements.

    • initiator(Option<Initiator>):

      Container element that identifies who initiated the multipart upload. If the initiator is an Amazon Web Services account, this element provides the same information as the Owner element. If the initiator is an IAM User, this element provides the user ARN and display name.

    • owner(Option<Owner>):

      Container element that identifies the object owner, after the object is created. If multipart upload is initiated by an IAM user, this element provides the parent account ID and display name.

    • storage_class(Option<StorageClass>):

      Class of storage (STANDARD or REDUCED_REDUNDANCY) used to store the uploaded object.

    • request_charged(Option<RequestCharged>):

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

  • On failure, responds with SdkError<ListPartsError>

Constructs a fluent builder for the PutBucketAccelerateConfiguration operation.

Constructs a fluent builder for the PutBucketAcl operation.

Constructs a fluent builder for the PutBucketAnalyticsConfiguration operation.

Constructs a fluent builder for the PutBucketCors operation.

Constructs a fluent builder for the PutBucketEncryption operation.

Constructs a fluent builder for the PutBucketIntelligentTieringConfiguration operation.

Constructs a fluent builder for the PutBucketInventoryConfiguration operation.

Constructs a fluent builder for the PutBucketLifecycleConfiguration operation.

Constructs a fluent builder for the PutBucketLogging operation.

Constructs a fluent builder for the PutBucketMetricsConfiguration operation.

Constructs a fluent builder for the PutBucketNotificationConfiguration operation.

Constructs a fluent builder for the PutBucketOwnershipControls operation.

Constructs a fluent builder for the PutBucketPolicy operation.

Constructs a fluent builder for the PutBucketReplication operation.

Constructs a fluent builder for the PutBucketRequestPayment operation.

Constructs a fluent builder for the PutBucketTagging operation.

Constructs a fluent builder for the PutBucketVersioning operation.

Constructs a fluent builder for the PutBucketWebsite operation.

Constructs a fluent builder for the PutObject operation.

Constructs a fluent builder for the PutObjectAcl operation.

Constructs a fluent builder for the PutObjectLegalHold operation.

Constructs a fluent builder for the PutObjectLockConfiguration operation.

Constructs a fluent builder for the PutObjectRetention operation.

Constructs a fluent builder for the PutObjectTagging operation.

Constructs a fluent builder for the PutPublicAccessBlock operation.

Constructs a fluent builder for the RestoreObject operation.

Constructs a fluent builder for the SelectObjectContent operation.

Constructs a fluent builder for the UploadPart operation.

Constructs a fluent builder for the UploadPartCopy operation.

Constructs a fluent builder for the WriteGetObjectResponse operation.

Creates a client with the given service config and connector override.

Creates a new client from a shared config.

Creates a new client from the service Config.

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

Formats the value using the given formatter. Read more

Converts to this type from the input type.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The resulting type after obtaining ownership.

Creates owned data from borrowed data, usually by cloning. Read more

🔬 This is a nightly-only experimental API. (toowned_clone_into)

Uses borrowed data to replace owned data, usually by cloning. Read more

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more