Package: s3

import "../ibm-cos-sdk-go-v2/service/s3"

Overview

Package s3 provides the API client, operations, and parameter types for Amazon Simple Storage Service.

Sub-Packages

internal, types

Constants

const ServiceID = readonly

Value:

"S3"
const ServiceAPIVersion = readonly

Value:

"2006-03-01"

Variables

Value:

(*Client)(nil)

Type Summary collapse

Interface Summary collapse

Function Summary collapse

Type Details

AbortMultipartUploadOutput struct

Structure Fields:

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

AddLegalHoldOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

AuthResolverParameters struct

AuthResolverParameters contains the set of inputs necessary for auth scheme resolution.

Structure Fields:

Operation string

The name of the operation being invoked.

Region string

The region in which the operation is being invoked.

BucketExistsWaiterOptions struct

BucketExistsWaiterOptions are waiter options for BucketExistsWaiter

Structure Fields:

ClientOptions []func(*Options)

Functional options to be passed to all operations invoked by this client.

Function values that modify the inner APIOptions are applied after the waiter config’s own APIOptions modifiers.

MinDelay time.Duration

MinDelay is the minimum amount of time to delay between retries. If unset, BucketExistsWaiter will use default minimum delay of 5 seconds. Note that MinDelay must resolve to a value lesser than or equal to the MaxDelay.

MaxDelay time.Duration

MaxDelay is the maximum amount of time to delay between retries. If unset or set to zero, BucketExistsWaiter will use default max delay of 120 seconds. Note that MaxDelay must resolve to value greater than or equal to the MinDelay.

LogWaitAttempts bool

LogWaitAttempts is used to enable logging for waiter retry attempts

BucketExtended struct

Structure Fields:

CreationDate *time.Time
CreationTemplateId *string
LocationConstraint types.BucketLocationConstraint

Specifies the region where the bucket was created.

Name *string

The name of the bucket.

BucketNotExistsWaiterOptions struct

BucketNotExistsWaiterOptions are waiter options for BucketNotExistsWaiter

Structure Fields:

ClientOptions []func(*Options)

Functional options to be passed to all operations invoked by this client.

Function values that modify the inner APIOptions are applied after the waiter config’s own APIOptions modifiers.

MinDelay time.Duration

MinDelay is the minimum amount of time to delay between retries. If unset, BucketNotExistsWaiter will use default minimum delay of 5 seconds. Note that MinDelay must resolve to a value lesser than or equal to the MaxDelay.

MaxDelay time.Duration

MaxDelay is the maximum amount of time to delay between retries. If unset or set to zero, BucketNotExistsWaiter will use default max delay of 120 seconds. Note that MaxDelay must resolve to value greater than or equal to the MinDelay.

LogWaitAttempts bool

LogWaitAttempts is used to enable logging for waiter retry attempts

ChecksumValidationMetadata struct

ChecksumValidationMetadata contains metadata such as the checksum algorithm used for data integrity validation.

Structure Fields:

AlgorithmsUsed []string

AlgorithmsUsed is the set of the checksum algorithms used to validate the response payload. The response payload must be completely read in order for the checksum validation to be performed. An error is returned by the operation output’s response io.ReadCloser if the computed checksums are invalid.

CompleteMultipartUploadOutput struct

Structure Fields:

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

Access points are not supported by directory buckets.

BucketKeyEnabled *bool

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

ChecksumCRC32 *string

The Base64 encoded, 32-bit CRC32 checksum of the object. This checksum is only be present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it’s a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see object integrity[https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums]in the Amazon S3 User Guide.

ChecksumCRC32C *string

The Base64 encoded, 32-bit CRC32C checksum of the object. This checksum is only present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it’s a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see object integrity[https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums]in the Amazon S3 User Guide.

ChecksumCRC64NVME *string

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 64-bit CRC64NVME checksum of the object. The CRC64NVME checksum is always a full object checksum. For more information, see Checking object integrity in the Amazon S3 User Guide.

ChecksumSHA1 *string

The Base64 encoded, 160-bit SHA1 digest of the object. This will only be present if the object was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it’s a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see object integrity[https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums]in the Amazon S3 User Guide.

ChecksumSHA256 *string

The Base64 encoded, 256-bit SHA256 digest of the object. This will only be present if the object was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it’s a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see object integrity[https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums]in the Amazon S3 User Guide.

ChecksumType types.ChecksumType

The checksum type, which determines how part-level checksums are combined to create an object-level checksum for multipart objects. You can use this header as a data integrity check to verify that the checksum type that is received is the same checksum type that was specified during the CreateMultipartUpload request. For more information, see Checking object integrity in the Amazon S3 User Guide.

ETag *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. For more information about how the entity tag is calculated, see object integrity[https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html]in the Amazon S3 User Guide.

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

This functionality is not supported for directory buckets.

Key *string

The object key of the newly created object.

Location *string

The URI that identifies the newly created object.

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

SSEKMSKeyId *string

If present, indicates the ID of the KMS key that was used for object encryption.

ServerSideEncryption types.ServerSideEncryption

The server-side encryption algorithm used when storing this object in Amazon S3 (for example, AES256 , aws:kms ).

VersionId *string

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

This functionality is not supported for directory buckets.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

ComputedInputChecksumsMetadata struct

ComputedInputChecksumsMetadata provides information about the algorithms used to compute the checksum(s) of the input payload.

Structure Fields:

ComputedChecksums map[string]string

ComputedChecksums is a map of algorithm name to checksum value of the computed input payload’s checksums.

CopyObjectOutput struct

Structure Fields:

BucketKeyEnabled *bool

Indicates whether the copied object uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

CopyObjectResult *types.CopyObjectResult

Container for all response elements.

CopySourceVersionId *string

Version ID of the source object that was copied.

This functionality is not supported when the source object is in a directory bucket.

Expiration *string

If the object expiration is configured, the response includes this header.

Object expiration information is not returned in directory buckets and this header returns the value “ NotImplemented ” in all responses for directory buckets.

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

SSECustomerAlgorithm *string

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that’s used.

This functionality is not supported for directory buckets.

SSECustomerKeyMD5 *string

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

This functionality is not supported for directory buckets.

SSEKMSEncryptionContext *string

If present, indicates the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a Base64 encoded UTF-8 string holding JSON with the encryption context key-value pairs.

SSEKMSKeyId *string

If present, indicates the ID of the KMS key that was used for object encryption.

ServerSideEncryption types.ServerSideEncryption

The server-side encryption algorithm used when you store this object in Amazon S3 (for example, AES256 , aws:kms , aws:kms:dsse ).

VersionId *string

Version ID of the newly created copy.

This functionality is not supported for directory buckets.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

CreateBucketMetadataTableConfigurationOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

CreateBucketOutput struct

Structure Fields:

Location *string

A forward slash followed by the name of the bucket.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

CreateMultipartUploadOutput struct

Structure Fields:

AbortDate *time.Time

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, the response includes this header. The header indicates when the initiated multipart upload becomes eligible for an abort operation. For more information, see Incomplete Multipart Uploads Using a Bucket Lifecycle Configuration[https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html#mpu-abort-incomplete-mpu-lifecycle-config]in the Amazon S3 User Guide.

The response also includes the x-amz-abort-rule-id header that provides the ID of the lifecycle configuration rule that defines the abort action.

This functionality is not supported for directory buckets.

AbortRuleId *string

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

This functionality is not supported for directory buckets.

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

Access points are not supported by directory buckets.

BucketKeyEnabled *bool

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

ChecksumAlgorithm types.ChecksumAlgorithm

The algorithm that was used to create a checksum of the object.

ChecksumType types.ChecksumType

Indicates the checksum type that you want Amazon S3 to use to calculate the object’s checksum value. For more information, see Checking object integrity in the Amazon S3 User Guide.

Key *string

Object key for which the multipart upload was initiated.

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

SSECustomerAlgorithm *string

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that’s used.

This functionality is not supported for directory buckets.

SSECustomerKeyMD5 *string

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

This functionality is not supported for directory buckets.

SSEKMSEncryptionContext *string

If present, indicates the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a Base64 encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs.

SSEKMSKeyId *string

If present, indicates the ID of the KMS key that was used for object encryption.

ServerSideEncryption types.ServerSideEncryption

The server-side encryption algorithm used when you store this object in Amazon S3 (for example, AES256 , aws:kms ).

UploadId *string

ID for the initiated multipart upload.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

CreateSessionOutput struct

Structure Fields:

Credentials *types.SessionCredentials

The established temporary security credentials for the created session.

This member is required.

BucketKeyEnabled *bool

Indicates whether to use an S3 Bucket Key for server-side encryption with KMS keys (SSE-KMS).

SSEKMSEncryptionContext *string

If present, indicates the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a Base64 encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs. This value is stored as object metadata and automatically gets passed on to Amazon Web Services KMS for future GetObject operations on this object.

SSEKMSKeyId *string

If you specify x-amz-server-side-encryption with aws:kms , this header indicates the ID of the KMS symmetric encryption customer managed key that was used for object encryption.

ServerSideEncryption types.ServerSideEncryption

The server-side encryption algorithm used when you store objects in the directory bucket.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

DeleteBucketAnalyticsConfigurationOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

DeleteBucketCorsOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

DeleteBucketEncryptionOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

DeleteBucketIntelligentTieringConfigurationOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

DeleteBucketInventoryConfigurationOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

DeleteBucketLifecycleOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

DeleteBucketMetadataTableConfigurationOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

DeleteBucketMetricsConfigurationOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

DeleteBucketOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

DeleteBucketOwnershipControlsOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

DeleteBucketPolicyOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

DeleteBucketReplicationOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

DeleteBucketTaggingOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

DeleteBucketWebsiteOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

DeleteLegalHoldOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

DeleteObjectOutput struct

Structure Fields:

DeleteMarker *bool

Indicates whether the specified object version that was permanently deleted was (true) or was not (false) a delete marker before deletion. In a simple DELETE, this header indicates whether (true) or not (false) the current version of the object is a delete marker. To learn more about delete markers, see Working with delete markers.

This functionality is not supported for directory buckets.

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

VersionId *string

Returns the version ID of the delete marker created as a result of the DELETE operation.

This functionality is not supported for directory buckets.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

DeleteObjectTaggingOutput struct

Structure Fields:

VersionId *string

The versionId of the object the tag-set was removed from.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

DeleteObjectsOutput struct

Structure Fields:

Deleted []types.DeletedObject

Container element for a successful delete. It identifies the object that was successfully deleted.

Errors []types.Error

Container for a failed delete action that describes the object that Amazon S3 attempted to delete and the error it encountered.

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

DeletePublicAccessBlockOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

ExtendObjectRetentionOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketAccelerateConfigurationOutput struct

Structure Fields:

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

Status types.BucketAccelerateStatus

The accelerate configuration of the bucket.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketAclOutput struct

Structure Fields:

Grants []types.Grant

A list of grants.

Owner *types.Owner

Container for the bucket owner’s display name and ID.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketAnalyticsConfigurationOutput struct

Structure Fields:

AnalyticsConfiguration *types.AnalyticsConfiguration

The configuration and any analyses for the analytics filter.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketCorsOutput struct

Structure Fields:

CORSRules []types.CORSRule

A set of origins and methods (cross-origin access that you want to allow). You can add up to 100 rules to the configuration.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketEncryptionOutput struct

Structure Fields:

ServerSideEncryptionConfiguration *types.ServerSideEncryptionConfiguration

Specifies the default server-side-encryption configuration.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketIntelligentTieringConfigurationOutput struct

Structure Fields:

IntelligentTieringConfiguration *types.IntelligentTieringConfiguration

Container for S3 Intelligent-Tiering configuration.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketInventoryConfigurationOutput struct

Structure Fields:

InventoryConfiguration *types.InventoryConfiguration

Specifies the inventory configuration.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketLifecycleConfigurationOutput struct

Structure Fields:

Rules []types.LifecycleRule

Container for a lifecycle rule.

TransitionDefaultMinimumObjectSize types.TransitionDefaultMinimumObjectSize

Indicates which default minimum object size behavior is applied to the lifecycle configuration.

This parameter applies to general purpose buckets only. It isn’t supported for directory bucket lifecycle configurations.

  • all_storage_classes_128K - Objects smaller than 128 KB will not transition to any storage class by default.

  • varies_by_storage_class - Objects smaller than 128 KB will transition to Glacier Flexible Retrieval or Glacier Deep Archive storage classes. By default, all other storage classes will prevent transitions smaller than 128 KB.

To customize the minimum object size for any transition you can add a filter that specifies a custom ObjectSizeGreaterThan or ObjectSizeLessThan in the body of your transition rule. Custom filters always take precedence over the default transition behavior.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketLocationOutput struct

Structure Fields:

LocationConstraint types.BucketLocationConstraint

Specifies the Region where the bucket resides. For a list of all the Amazon S3 supported location constraints by Region, see Regions and Endpoints.

Buckets in Region us-east-1 have a LocationConstraint of null . Buckets with a LocationConstraint of EU reside in eu-west-1 .

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketLoggingOutput struct

Structure Fields:

LoggingEnabled *types.LoggingEnabled

Describes where logs are stored and the prefix that Amazon S3 assigns to all log object keys for a bucket. For more information, see Bucket logging[https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketPUTlogging.html]in the Amazon S3 API Reference.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketMetadataTableConfigurationOutput struct

Structure Fields:

GetBucketMetadataTableConfigurationResult *types.GetBucketMetadataTableConfigurationResult

The metadata table configuration for the general purpose bucket.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketMetricsConfigurationOutput struct

Structure Fields:

MetricsConfiguration *types.MetricsConfiguration

Specifies the metrics configuration.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketNotificationConfigurationOutput struct

A container for specifying the notification configuration of the bucket. If this element is empty, notifications are turned off for the bucket.

Structure Fields:

EventBridgeConfiguration *types.EventBridgeConfiguration

Enables delivery of events to Amazon EventBridge.

LambdaFunctionConfigurations []types.LambdaFunctionConfiguration

Describes the Lambda functions to invoke and the events for which to invoke them.

QueueConfigurations []types.QueueConfiguration

The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages.

TopicConfigurations []types.TopicConfiguration

The topic to which notifications are sent and the events for which notifications are generated.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketOwnershipControlsOutput struct

Structure Fields:

OwnershipControls *types.OwnershipControls

The OwnershipControls (BucketOwnerEnforced, BucketOwnerPreferred, or ObjectWriter) currently in effect for this Amazon S3 bucket.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketPolicyOutput struct

Structure Fields:

Policy *string

The bucket policy as a JSON document.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketPolicyStatusOutput struct

Structure Fields:

PolicyStatus *types.PolicyStatus

The policy status for the specified bucket.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketProtectionConfigurationOutput struct

Structure Fields:

IbmProtectionManagementState *string
ProtectionConfiguration *types.ProtectionConfiguration

Bucket protection configuration

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketReplicationOutput struct

Structure Fields:

ReplicationConfiguration *types.ReplicationConfiguration

A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketRequestPaymentOutput struct

Structure Fields:

Payer types.Payer

Specifies who pays for the download and request fees.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketTaggingOutput struct

Structure Fields:

TagSet []types.Tag

Contains the tag set.

This member is required.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketVersioningOutput struct

Structure Fields:

MFADelete types.MFADeleteStatus

Specifies whether MFA delete is enabled in the bucket versioning configuration. This element is only returned if the bucket has been configured with MFA delete. If the bucket has never been so configured, this element is not returned.

Status types.BucketVersioningStatus

The versioning state of the bucket.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetBucketWebsiteOutput struct

Structure Fields:

ErrorDocument *types.ErrorDocument

The object key name of the website error document to use for 4XX class errors.

IndexDocument *types.IndexDocument

The name of the index document for the website (for example index.html ).

RedirectAllRequestsTo *types.RedirectAllRequestsTo

Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket.

RoutingRules []types.RoutingRule

Rules that define when a redirect is applied and the redirect behavior.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetObjectAclOutput struct

Structure Fields:

Grants []types.Grant

A list of grants.

Owner *types.Owner

Container for the bucket owner’s display name and ID.

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetObjectAttributesOutput struct

Structure Fields:

Checksum *types.Checksum

The checksum or digest of the object.

DeleteMarker *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. To learn more about delete markers, see Working with delete markers.

This functionality is not supported for directory buckets.

ETag *string

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

LastModified *time.Time

Date and time when the object was last modified.

ObjectParts *types.GetObjectAttributesParts

A collection of parts associated with a multipart upload.

ObjectSize *int64

The size of the object in bytes.

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

StorageClass types.StorageClass

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

Directory buckets - Directory buckets only support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in Availability Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.

VersionId *string

The version ID of the object.

This functionality is not supported for directory buckets.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetObjectLegalHoldOutput struct

Structure Fields:

LegalHold *types.ObjectLockLegalHold

The current legal hold status for the specified object.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetObjectLockConfigurationOutput struct

Structure Fields:

ObjectLockConfiguration *types.ObjectLockConfiguration

The specified bucket’s Object Lock configuration.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetObjectOutput struct

Structure Fields:

AcceptRanges *string

Indicates that a range of bytes was specified in the request.

Body io.ReadCloser

Object data.

BucketKeyEnabled *bool

Indicates whether the object uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

CacheControl *string

Specifies caching behavior along the request/reply chain.

ChecksumCRC32 *string

The Base64 encoded, 32-bit CRC32 checksum of the object. This checksum is only present if the object was uploaded with the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

ChecksumCRC32C *string

The Base64 encoded, 32-bit CRC32C checksum of the object. This will only be present if the object was uploaded with the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

ChecksumCRC64NVME *string

The Base64 encoded, 64-bit CRC64NVME checksum of the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

ChecksumSHA1 *string

The Base64 encoded, 160-bit SHA1 digest of the object. This will only be present if the object was uploaded with the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

ChecksumSHA256 *string

The Base64 encoded, 256-bit SHA256 digest of the object. This will only be present if the object was uploaded with the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

ChecksumType types.ChecksumType

The checksum type, which determines how part-level checksums are combined to create an object-level checksum for multipart objects. You can use this header response to verify that the checksum type that is received is the same checksum type that was specified in the CreateMultipartUpload request. For more information, see object integrity[https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html]in the Amazon S3 User Guide.

ContentDisposition *string

Specifies presentational information for the object.

ContentEncoding *string

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

ContentLanguage *string

The language the content is in.

ContentLength *int64

Size of the body in bytes.

ContentRange *string

The portion of the object returned in the response.

ContentType *string

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

DeleteMarker *bool

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

  • If the current version of the object is a delete marker, Amazon S3 behaves as if the object was deleted and includes x-amz-delete-marker: true in the response.

  • If the specified version in the request is a delete marker, the response returns a 405 Method Not Allowed error and the Last-Modified: timestamp response header.

ETag *string

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

Expiration *string

If the object expiration is configured (see PutBucketLifecycleConfiguration[https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html]PutBucketLifecycleConfiguration ), 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.

Object expiration information is not returned in directory buckets and this header returns the value “ NotImplemented ” in all responses for directory buckets.

Expires *time.Time

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

Deprecated: This field is handled inconsistently across AWS SDKs. Prefer using the ExpiresString field which contains the unparsed value from the service response.

ExpiresString *string

The unparsed value of the Expires field from the service response. Prefer use of this value over the normal Expires response field where possible.

LastModified *time.Time

Date and time when the object was last modified.

General purpose buckets - When you specify a versionId of the object in your request, if the specified version in the request is a delete marker, the response returns a 405 Method Not Allowed error and the Last-Modified: timestamp response header.

Metadata map[string]string

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

Map keys will be normalized to lower-case.

MissingMeta *int32

This is set to the number of metadata entries not returned in the headers that are prefixed with x-amz-meta- . 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.

This functionality is not supported for directory buckets.

ObjectLockLegalHoldStatus types.ObjectLockLegalHoldStatus

Indicates whether this object has an active legal hold. This field is only returned if you have permission to view an object’s legal hold status.

This functionality is not supported for directory buckets.

ObjectLockMode types.ObjectLockMode

The Object Lock mode that’s currently in place for this object.

This functionality is not supported for directory buckets.

ObjectLockRetainUntilDate *time.Time

The date and time when this object’s Object Lock will expire.

This functionality is not supported for directory buckets.

PartsCount *int32

The count of parts this object has. This value is only returned if you specify partNumber in your request and the object was uploaded as a multipart upload.

ReplicationStatus types.ReplicationStatus

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

This functionality is not supported for directory buckets.

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

Restore *string

Provides information about object restoration action and expiration time of the restored object copy.

This functionality is not supported for directory buckets. Directory buckets only support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in Availability Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.

SSECustomerAlgorithm *string

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that’s used.

This functionality is not supported for directory buckets.

SSECustomerKeyMD5 *string

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

This functionality is not supported for directory buckets.

SSEKMSKeyId *string

If present, indicates the ID of the KMS key that was used for object encryption.

ServerSideEncryption types.ServerSideEncryption

The server-side encryption algorithm used when you store this object in Amazon S3.

StorageClass types.StorageClass

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

Directory buckets - Directory buckets only support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in Availability Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.

TagCount *int32

The number of tags, if any, on the object, when you have the relevant permission to read object tags.

You can use GetObjectTagging to retrieve the tag set associated with an object.

This functionality is not supported for directory buckets.

VersionId *string

Version ID of the object.

This functionality is not supported for directory buckets.

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

This functionality is not supported for directory buckets.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

IBMRestoredCopyStorageClass *string
IBMTransition *string

This header is only included if an object has transition metadata. This header will indicate the transition storage class and time of transition. If this header and the x-amz-restore header are both included, this header will indicate the time at which the object was originally archived.

RetentionExpirationDate *time.Time

Date on which it will be legal to delete or modify the object. You can only specify this or the Retention-Period header. If both are specified a 400 error will be returned. If neither is specified the bucket’s DefaultRetention period will be used.

RetentionLegalHoldCount *int64
RetentionPeriod *int64

Retention period to store on the object in seconds. If this field and Retention-Expiration-Date are specified a 400 error is returned. If neither is specified the bucket’s DefaultRetention period will be used. 0 is a legal value assuming the bucket’s minimum retention period is also 0.

GetObjectRetentionOutput struct

Structure Fields:

Retention *types.ObjectLockRetention

The container element for an object’s retention settings.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetObjectTaggingOutput struct

Structure Fields:

TagSet []types.Tag

Contains the tag set.

This member is required.

VersionId *string

The versionId of the object for which you got the tagging information.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetObjectTorrentOutput struct

Structure Fields:

Body io.ReadCloser

A Bencoded dictionary as defined by the BitTorrent specification

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

GetPublicAccessBlockOutput struct

Structure Fields:

PublicAccessBlockConfiguration *types.PublicAccessBlockConfiguration

The PublicAccessBlock configuration currently in effect for this Amazon S3 bucket.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

HeadBucketOutput struct

Structure Fields:

AccessPointAlias *bool

Indicates whether the bucket name used in the request is an access point alias.

For directory buckets, the value of this field is false .

BucketLocationName *string

The name of the location where the bucket will be created.

For directory buckets, the Zone ID of the Availability Zone or the Local Zone where the bucket is created. An example Zone ID value for an Availability Zone is usw2-az1 .

This functionality is only supported by directory buckets.

BucketLocationType types.LocationType

The type of location where the bucket is created.

This functionality is only supported by directory buckets.

BucketRegion *string

The Region that the bucket is located.

IBMSSEKPCrkId *string

The root key used by Key Protect to encrypt this bucket. This value must be the full CRN of the root key.

IBMSSEKPEnabled *bool

Specifies whether the Bucket has Key Protect enabled.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

HeadObjectOutput struct

Structure Fields:

AcceptRanges *string

Indicates that a range of bytes was specified.

ArchiveStatus types.ArchiveStatus

The archive state of the head object.

This functionality is not supported for directory buckets.

BucketKeyEnabled *bool

Indicates whether the object uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

CacheControl *string

Specifies caching behavior along the request/reply chain.

ChecksumCRC32 *string

The Base64 encoded, 32-bit CRC32 checksum of the object. This checksum is only be present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it’s a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see object integrity[https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums]in the Amazon S3 User Guide.

ChecksumCRC32C *string

The Base64 encoded, 32-bit CRC32C checksum of the object. This checksum is only present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it’s a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see object integrity[https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums]in the Amazon S3 User Guide.

ChecksumCRC64NVME *string

The Base64 encoded, 64-bit CRC64NVME checksum of the object. For more information, see Checking object integrity in the Amazon S3 User Guide.

ChecksumSHA1 *string

The Base64 encoded, 160-bit SHA1 digest of the object. This will only be present if the object was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it’s a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see object integrity[https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums]in the Amazon S3 User Guide.

ChecksumSHA256 *string

The Base64 encoded, 256-bit SHA256 digest of the object. This will only be present if the object was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it’s a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see object integrity[https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums]in the Amazon S3 User Guide.

ChecksumType types.ChecksumType

The checksum type, which determines how part-level checksums are combined to create an object-level checksum for multipart objects. You can use this header response to verify that the checksum type that is received is the same checksum type that was specified in CreateMultipartUpload request. For more information, see Checking object integrity in the Amazon S3 User Guide.

ContentDisposition *string

Specifies presentational information for the object.

ContentEncoding *string

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

ContentLanguage *string

The language the content is in.

ContentLength *int64

Size of the body in bytes.

ContentRange *string

The portion of the object returned in the response for a GET request.

ContentType *string

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

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

This functionality is not supported for directory buckets.

ETag *string

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

Expiration *string

If the object expiration is configured (see PutBucketLifecycleConfiguration[https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html]PutBucketLifecycleConfiguration ), 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.

Object expiration information is not returned in directory buckets and this header returns the value “ NotImplemented ” in all responses for directory buckets.

Expires *time.Time

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

Deprecated: This field is handled inconsistently across AWS SDKs. Prefer using the ExpiresString field which contains the unparsed value from the service response.

ExpiresString *string

The unparsed value of the Expires field from the service response. Prefer use of this value over the normal Expires response field where possible.

LastModified *time.Time

Date and time when the object was last modified.

Metadata map[string]string

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

Map keys will be normalized to lower-case.

MissingMeta *int32

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.

This functionality is not supported for directory buckets.

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

This functionality is not supported for directory buckets.

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

This functionality is not supported for directory buckets.

ObjectLockRetainUntilDate *time.Time

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

This functionality is not supported for directory buckets.

PartsCount *int32

The count of parts this object has. This value is only returned if you specify partNumber in your request and the object was uploaded as a multipart upload.

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

This functionality is not supported for directory buckets.

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

Restore *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[https://docs.aws.amazon.com/AmazonS3/latest/API/API_RestoreObject.html]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.

This functionality is not supported for directory buckets. Directory buckets only support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in Availability Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.

SSECustomerAlgorithm *string

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that’s used.

This functionality is not supported for directory buckets.

SSECustomerKeyMD5 *string

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

This functionality is not supported for directory buckets.

SSEKMSKeyId *string

If present, indicates the ID of the KMS key that was used for object encryption.

ServerSideEncryption types.ServerSideEncryption

The server-side encryption algorithm used when you store this object in Amazon S3 (for example, AES256 , aws:kms , aws:kms:dsse ).

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

Directory buckets - Directory buckets only support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in Availability Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.

VersionId *string

Version ID of the object.

This functionality is not supported for directory buckets.

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

This functionality is not supported for directory buckets.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

IBMRestoredCopyStorageClass *string

IBM Specific

IBMTransition *string

This header is only included if an object has transition metadata. This header will indicate the transition storage class and time of transition. If this header and the x-amz-restore header are both included, this header will indicate the time at which the object was originally archived.

RetentionExpirationDate *time.Time

Date on which it will be legal to delete or modify the object. You can only specify this or the Retention-Period header. If both are specified a 400 error will be returned. If neither is specified the bucket’s DefaultRetention period will be used.

RetentionLegalHoldCount *int64
RetentionPeriod *int64

Retention period to store on the object in seconds. If this field and Retention-Expiration-Date are specified a 400 error is returned. If neither is specified the bucket’s DefaultRetention period will be used. 0 is a legal value assuming the bucket’s minimum retention period is also 0.

ListBucketAnalyticsConfigurationsOutput struct

Structure Fields:

AnalyticsConfigurationList []types.AnalyticsConfiguration

The list of analytics configurations for a bucket.

ContinuationToken *string

The marker that is used as a starting point for this analytics configuration list response. This value is present if it was sent in the request.

IsTruncated *bool

Indicates whether the returned list of analytics configurations is complete. A value of true indicates that the list is not complete and the NextContinuationToken will be provided for a subsequent request.

NextContinuationToken *string

NextContinuationToken is sent when isTruncated is true, which indicates that there are more analytics configurations to list. The next request must include this NextContinuationToken . The token is obfuscated and is not a usable value.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

ListBucketIntelligentTieringConfigurationsOutput struct

Structure Fields:

ContinuationToken *string

The ContinuationToken that represents a placeholder from where this request should begin.

IntelligentTieringConfigurationList []types.IntelligentTieringConfiguration

The list of S3 Intelligent-Tiering configurations for a bucket.

IsTruncated *bool

Indicates whether the returned list of analytics configurations is complete. A value of true indicates that the list is not complete and the NextContinuationToken will be provided for a subsequent request.

NextContinuationToken *string

The marker used to continue this inventory configuration listing. Use the NextContinuationToken from this response to continue the listing in a subsequent request. The continuation token is an opaque value that Amazon S3 understands.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

ListBucketInventoryConfigurationsOutput struct

Structure Fields:

ContinuationToken *string

If sent in the request, the marker that is used as a starting point for this inventory configuration list response.

InventoryConfigurationList []types.InventoryConfiguration

The list of inventory configurations for a bucket.

IsTruncated *bool

Tells whether the returned list of inventory configurations is complete. A value of true indicates that the list is not complete and the NextContinuationToken is provided for a subsequent request.

NextContinuationToken *string

The marker used to continue this inventory configuration listing. Use the NextContinuationToken from this response to continue the listing in a subsequent request. The continuation token is an opaque value that Amazon S3 understands.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

ListBucketMetricsConfigurationsOutput struct

Structure Fields:

ContinuationToken *string

The marker that is used as a starting point for this metrics configuration list response. This value is present if it was sent in the request.

IsTruncated *bool

Indicates whether the returned list of metrics configurations is complete. A value of true indicates that the list is not complete and the NextContinuationToken will be provided for a subsequent request.

MetricsConfigurationList []types.MetricsConfiguration

The list of metrics configurations for a bucket.

NextContinuationToken *string

The marker used to continue a metrics configuration listing that has been truncated. Use the NextContinuationToken from a previously truncated list response to continue the listing. The continuation token is an opaque value that Amazon S3 understands.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

ListBucketsExtendedInput struct

Structure Fields:

IBMServiceInstanceId *string

Sets the IBM Service Instance Id in the request. Only Valid for IBM IAM Authentication

Marker *string

Specifies the bucket to start with when listing all buckets.

MaxKeys *int32

Sets the maximum number of keys returned in the response. The response might contain fewer keys but will never contain more.

Prefix *string

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

ContinuationToken *string
MaxBuckets *int32

ListBucketsExtendedOutput struct

Structure Fields:

Buckets []BucketExtended
IsTruncated *bool

Indicates whether the returned list of buckets is truncated.

Marker *string

The bucket at or after which the listing began.

MaxKeys *int32
Owner *types.Owner

Container for the owner’s display name and ID.

Prefix *string

When a prefix is provided in the request, this field contains the specified prefix. The result contains only buckets starting with the specified prefix.

ContinuationToken *string
ResultMetadata middleware.Metadata

ListBucketsExtendedPaginatorOptions struct

ListBucketsPaginatorOptions is the paginator options for ListBuckets

Structure Fields:

Limit int32

Maximum number of buckets to be returned in response. When the number is more than the count of buckets that are owned by an Amazon Web Services account, return all the buckets in response.

StopOnDuplicateToken bool

Set to true if pagination should stop if the service returns a pagination token that matches the most recent token provided to the service.

ListBucketsInput struct

Structure Fields:

BucketRegion *string

Limits the response to buckets that are located in the specified Amazon Web Services Region. The Amazon Web Services Region must be expressed according to the Amazon Web Services Region code, such as us-west-2 for the US West (Oregon) Region. For a list of the valid values for all of the Amazon Web Services Regions, see Regions and Endpoints.

Requests made to a Regional endpoint that is different from the bucket-region parameter are not supported. For example, if you want to limit the response to your buckets in Region us-west-2 , the request must be made to an endpoint in Region us-west-2 .

ContinuationToken *string

ContinuationToken indicates to Amazon S3 that the list is being continued on this bucket with a token. ContinuationToken is obfuscated and is not a real key. You can use this ContinuationToken for pagination of the list results.

Length Constraints: Minimum length of 0. Maximum length of 1024.

Required: No.

If you specify the bucket-region , prefix , or continuation-token query parameters without using max-buckets to set the maximum number of buckets returned in the response, Amazon S3 applies a default page size of 10,000 and provides a continuation token if there are more buckets.

MaxBuckets *int32

Maximum number of buckets to be returned in response. When the number is more than the count of buckets that are owned by an Amazon Web Services account, return all the buckets in response.

Prefix *string

Limits the response to bucket names that begin with the specified bucket name prefix.

IBMServiceInstanceId *string

Sets the IBM Service Instance Id in the request. Only Valid for IBM IAM Authentication

ListBucketsOutput struct

Structure Fields:

Buckets []types.Bucket

The list of buckets owned by the requester.

ContinuationToken *string

ContinuationToken is included in the response when there are more buckets that can be listed with pagination. The next ListBuckets request to Amazon S3 can be continued with this ContinuationToken . ContinuationToken is obfuscated and is not a real bucket.

Owner *types.Owner

The owner of the buckets listed.

Prefix *string

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

All bucket names in the response begin with the specified bucket name prefix.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

ListBucketsPaginatorOptions struct

ListBucketsPaginatorOptions is the paginator options for ListBuckets

Structure Fields:

Limit int32

Maximum number of buckets to be returned in response. When the number is more than the count of buckets that are owned by an Amazon Web Services account, return all the buckets in response.

StopOnDuplicateToken bool

Set to true if pagination should stop if the service returns a pagination token that matches the most recent token provided to the service.

ListDirectoryBucketsOutput struct

Structure Fields:

Buckets []types.Bucket

The list of buckets owned by the requester.

ContinuationToken *string

If ContinuationToken was sent with the request, it is included in the response. You can use the returned ContinuationToken for pagination of the list response.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

ListDirectoryBucketsPaginatorOptions struct

ListDirectoryBucketsPaginatorOptions is the paginator options for ListDirectoryBuckets

Structure Fields:

Limit int32

Maximum number of buckets to be returned in response. When the number is more than the count of buckets that are owned by an Amazon Web Services account, return all the buckets in response.

StopOnDuplicateToken bool

Set to true if pagination should stop if the service returns a pagination token that matches the most recent token provided to the service.

ListLegalHoldsOutput struct

Structure Fields:

CreateTime *time.Time
LegalHolds []types.LegalHold
RetentionPeriod *int64

Retention period to store on the object in seconds. The object can be neither overwritten nor deleted until the amount of time specified in the retention period has elapsed. If this field and Retention-Expiration-Date are specified a 400 error is returned. If neither is specified the bucket’s DefaultRetention period will be used. 0 is a legal value assuming the bucket’s minimum retention period is also 0.

RetentionPeriodExpirationDate *time.Time
ResultMetadata middleware.Metadata

ListMultipartUploadsOutput struct

Structure Fields:

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

CommonPrefixes []types.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.

Directory buckets - For directory buckets, only prefixes that end in a delimiter ( / ) are supported.

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

Directory buckets - For directory buckets, / is the only supported delimiter.

EncodingType types.EncodingType

Encoding type used by Amazon S3 to encode object keys in the 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 , KeyMarker , Prefix , NextKeyMarker , Key .

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

KeyMarker *string

The key at or after which the listing began.

MaxUploads *int32

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

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

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

This functionality is not supported for directory buckets.

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.

Directory buckets - For directory buckets, only prefixes that end in a delimiter ( / ) are supported.

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

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

This functionality is not supported for directory buckets.

Uploads []types.MultipartUpload

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

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

ListMultipartUploadsPaginatorOptions struct

ListMultipartUploadsPaginatorOptions is the paginator options for ListMultipartUploads

Structure Fields:

Limit int32

(Optional) The maximum number of Multipart Uploads that you want Amazon S3 to return.

StopOnDuplicateToken bool

Set to true if pagination should stop if the service returns a pagination token that matches the most recent token provided to the service.

ListObjectVersionsOutput struct

Structure Fields:

CommonPrefixes []types.CommonPrefix

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

DeleteMarkers []types.DeleteMarkerEntry

Container for an object that is a delete marker. To learn more about delete markers, see Working with delete markers.

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

EncodingType types.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:

KeyMarker, NextKeyMarker, Prefix, Key , and Delimiter .

IsTruncated *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 by 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.

MaxKeys *int32

Specifies the maximum number of objects to return.

Name *string

The bucket name.

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

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

Prefix *string

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

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

VersionIdMarker *string

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

Versions []types.ObjectVersion

Container for version information.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

ListObjectVersionsPaginatorOptions struct

ListObjectVersionsPaginatorOptions is the paginator options for ListObjectVersions

Structure Fields:

Limit int32

(Optional) The maximum number of Object Versions that you want Amazon S3 to return.

StopOnDuplicateToken bool

Set to true if pagination should stop if the service returns a pagination token that matches the most recent token provided to the service.

ListObjectsOutput struct

Structure Fields:

CommonPrefixes []types.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.

Contents []types.Object

Metadata about each object returned.

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

EncodingType types.EncodingType

Encoding type used by Amazon S3 to encode the object keys in the response. Responses are encoded only in UTF-8. An object key can contain any Unicode character. However, the XML 1.0 parser can’t parse certain characters, such as characters with an ASCII value from 0 to 10. For characters that aren’t supported in XML 1.0, you can add this parameter to request that Amazon S3 encode the keys in the response. For more information about characters to avoid in object key names, see Object key naming guidelines.

When using the URL encoding type, non-ASCII characters that are used in an object’s key name will be percent-encoded according to UTF-8 code values. For example, the object test_file(3).png will appear as test_file%283%29.png .

IsTruncated *bool

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

Marker *string

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

MaxKeys *int32

The maximum number of keys returned in the response body.

Name *string

The bucket name.

NextMarker *string

When the response is truncated (the IsTruncated element value in the response is true ), you can use the key name in this field as the marker parameter in the subsequent request to get the next set of objects. Amazon S3 lists objects in alphabetical order.

This element is returned only if you have the delimiter request parameter specified. If the response does not include the NextMarker element and it is truncated, you can use the value of the last Key element in the response as the marker parameter in the subsequent request to get the next set of object keys.

Prefix *string

Keys that begin with the indicated prefix.

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

IBMSSEKPCrkId *string

The root key used by Key Protect to encrypt this bucket. This value must be the full CRN of the root key.

IBMSSEKPEnabled *bool

Specifies whether the Bucket has Key Protect enabled.

ListObjectsV2Output struct

Structure Fields:

CommonPrefixes []types.CommonPrefix

All of the keys (up to 1,000) that share the same prefix are grouped together. When counting the total numbers of returns by this API operation, this group of keys is considered as one item.

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.

  • Directory buckets - For directory buckets, only prefixes that end in a delimiter ( / ) are supported.

  • Directory buckets - When you query ListObjectsV2 with a delimiter during in-progress multipart uploads, the CommonPrefixes response parameter contains the prefixes that are associated with the in-progress multipart uploads. For more information about multipart uploads, see Upload Overview[https://docs.aws.amazon.com/AmazonS3/latest/dev/mpuoverview.html]in the Amazon S3 User Guide.

Contents []types.Object

Metadata about each object returned.

ContinuationToken *string

If ContinuationToken was sent with the request, it is included in the response. You can use the returned ContinuationToken for pagination of the list response. You can use this ContinuationToken for pagination of the list results.

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

Directory buckets - For directory buckets, / is the only supported delimiter.

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

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

KeyCount *int32

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

MaxKeys *int32

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.

Name *string

The bucket name.

NextContinuationToken *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

Prefix *string

Keys that begin with the indicated prefix.

Directory buckets - For directory buckets, only prefixes that end in a delimiter ( / ) are supported.

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

StartAfter *string

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

This functionality is not supported for directory buckets.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

ListObjectsV2PaginatorOptions struct

ListObjectsV2PaginatorOptions is the paginator options for ListObjectsV2

Structure Fields:

Limit int32

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.

StopOnDuplicateToken bool

Set to true if pagination should stop if the service returns a pagination token that matches the most recent token provided to the service.

ListPartsOutput struct

Structure Fields:

AbortDate *time.Time

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

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.

This functionality is not supported for directory buckets.

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

This functionality is not supported for directory buckets.

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

ChecksumAlgorithm types.ChecksumAlgorithm

The algorithm that was used to create a checksum of the object.

ChecksumType types.ChecksumType

The checksum type, which determines how part-level checksums are combined to create an object-level checksum for multipart objects. You can use this header response to verify that the checksum type that is received is the same checksum type that was specified in CreateMultipartUpload request. For more information, see Checking object integrity in the Amazon S3 User Guide.

Initiator *types.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.

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

Key *string

Object key for which the multipart upload was initiated.

MaxParts *int32

Maximum number of parts that were allowed in the response.

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

Owner *types.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.

Directory buckets - The bucket owner is returned as the object owner for all the parts.

PartNumberMarker *string

Specifies the part after which listing should begin. Only parts with higher part numbers will be listed.

Parts []types.Part

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

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

StorageClass types.StorageClass

The class of storage used to store the uploaded object.

Directory buckets - Directory buckets only support EXPRESS_ONEZONE (the S3 Express One Zone storage class) in Availability Zones and ONEZONE_IA (the S3 One Zone-Infrequent Access storage class) in Dedicated Local Zones.

UploadId *string

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

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

ListPartsPaginatorOptions struct

ListPartsPaginatorOptions is the paginator options for ListParts

Structure Fields:

Limit int32

Sets the maximum number of parts to return.

StopOnDuplicateToken bool

Set to true if pagination should stop if the service returns a pagination token that matches the most recent token provided to the service.

ObjectExistsWaiterOptions struct

ObjectExistsWaiterOptions are waiter options for ObjectExistsWaiter

Structure Fields:

ClientOptions []func(*Options)

Functional options to be passed to all operations invoked by this client.

Function values that modify the inner APIOptions are applied after the waiter config’s own APIOptions modifiers.

MinDelay time.Duration

MinDelay is the minimum amount of time to delay between retries. If unset, ObjectExistsWaiter will use default minimum delay of 5 seconds. Note that MinDelay must resolve to a value lesser than or equal to the MaxDelay.

MaxDelay time.Duration

MaxDelay is the maximum amount of time to delay between retries. If unset or set to zero, ObjectExistsWaiter will use default max delay of 120 seconds. Note that MaxDelay must resolve to value greater than or equal to the MinDelay.

LogWaitAttempts bool

LogWaitAttempts is used to enable logging for waiter retry attempts

ObjectNotExistsWaiterOptions struct

ObjectNotExistsWaiterOptions are waiter options for ObjectNotExistsWaiter

Structure Fields:

ClientOptions []func(*Options)

Functional options to be passed to all operations invoked by this client.

Function values that modify the inner APIOptions are applied after the waiter config’s own APIOptions modifiers.

MinDelay time.Duration

MinDelay is the minimum amount of time to delay between retries. If unset, ObjectNotExistsWaiter will use default minimum delay of 5 seconds. Note that MinDelay must resolve to a value lesser than or equal to the MaxDelay.

MaxDelay time.Duration

MaxDelay is the maximum amount of time to delay between retries. If unset or set to zero, ObjectNotExistsWaiter will use default max delay of 120 seconds. Note that MaxDelay must resolve to value greater than or equal to the MinDelay.

LogWaitAttempts bool

LogWaitAttempts is used to enable logging for waiter retry attempts

PresignPostOptions struct

PresignPostOptions represent the options to be passed to a PresignPost sign request

Structure Fields:

ClientOptions []func(*Options)

ClientOptions are list of functional options to mutate client options used by the presign client.

PostPresigner PresignPost

PostPresigner to use. One will be created if none is provided

Expires time.Duration

Expires sets the expiration duration for the generated presign url. This should be the duration in seconds the presigned URL should be considered valid for. If not set or set to zero, presign url would default to expire after 900 seconds.

Conditions []interface{}

Conditions a list of extra conditions to pass to the policy document Available conditions can be found [here]

[here]docs.aws.amazon.com/AmazonS3/latest/API/sigv4-HTTPPOSTConstructPolicy.html#sigv4-PolicyConditions

PresignedPostRequest struct

PresignedPostRequest represents a presigned request to be sent using HTTP verb POST and FormData

Structure Fields:

URL string

Represents the Base URL to make a request to

Values map[string]string

Values is a key-value map of values to be sent as FormData these values are not encoded

PutBucketAccelerateConfigurationOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutBucketAclOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutBucketAnalyticsConfigurationOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutBucketCorsOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutBucketEncryptionOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutBucketIntelligentTieringConfigurationOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutBucketInventoryConfigurationOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutBucketLifecycleConfigurationOutput struct

Structure Fields:

TransitionDefaultMinimumObjectSize types.TransitionDefaultMinimumObjectSize

Indicates which default minimum object size behavior is applied to the lifecycle configuration.

This parameter applies to general purpose buckets only. It is not supported for directory bucket lifecycle configurations.

  • all_storage_classes_128K - Objects smaller than 128 KB will not transition to any storage class by default.

  • varies_by_storage_class - Objects smaller than 128 KB will transition to Glacier Flexible Retrieval or Glacier Deep Archive storage classes. By default, all other storage classes will prevent transitions smaller than 128 KB.

To customize the minimum object size for any transition you can add a filter that specifies a custom ObjectSizeGreaterThan or ObjectSizeLessThan in the body of your transition rule. Custom filters always take precedence over the default transition behavior.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutBucketLoggingOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutBucketMetricsConfigurationOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutBucketNotificationConfigurationOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutBucketOwnershipControlsOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutBucketPolicyOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutBucketProtectionConfigurationOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

PutBucketReplicationOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutBucketRequestPaymentOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutBucketTaggingOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutBucketVersioningOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutBucketWebsiteOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutObjectAclOutput struct

Structure Fields:

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutObjectLegalHoldOutput struct

Structure Fields:

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutObjectLockConfigurationOutput struct

Structure Fields:

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutObjectOutput struct

Structure Fields:

BucketKeyEnabled *bool

Indicates whether the uploaded object uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

ChecksumCRC32 *string

The Base64 encoded, 32-bit CRC32 checksum of the object. This checksum is only be present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it’s a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see object integrity[https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums]in the Amazon S3 User Guide.

ChecksumCRC32C *string

The Base64 encoded, 32-bit CRC32C checksum of the object. This checksum is only present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it’s a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see object integrity[https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums]in the Amazon S3 User Guide.

ChecksumCRC64NVME *string

The Base64 encoded, 64-bit CRC64NVME checksum of the object. This header is present if the object was uploaded with the CRC64NVME checksum algorithm, or if it was uploaded without a checksum (and Amazon S3 added the default checksum, CRC64NVME , to the uploaded object). For more information about how checksums are calculated with multipart uploads, see Checking object integrity in the Amazon S3 User Guide.

ChecksumSHA1 *string

The Base64 encoded, 160-bit SHA1 digest of the object. This will only be present if the object was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it’s a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see object integrity[https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums]in the Amazon S3 User Guide.

ChecksumSHA256 *string

The Base64 encoded, 256-bit SHA256 digest of the object. This will only be present if the object was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it’s a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see object integrity[https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums]in the Amazon S3 User Guide.

ChecksumType types.ChecksumType

This header specifies the checksum type of the object, which determines how part-level checksums are combined to create an object-level checksum for multipart objects. For PutObject uploads, the checksum type is always FULL_OBJECT . You can use this header as a data integrity check to verify that the checksum type that is received is the same checksum that was specified. For more information, see object integrity[https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html]in the Amazon S3 User Guide.

ETag *string

Entity tag for the uploaded object.

General purpose buckets - To ensure that data is not corrupted traversing the network, for objects where the ETag is the MD5 digest of the object, you can calculate the MD5 while putting an object to Amazon S3 and compare the returned ETag to the calculated MD5 value.

Directory buckets - The ETag for the object in a directory bucket isn’t the MD5 digest of the object.

Expiration *string

If the expiration is configured for the object (see PutBucketLifecycleConfiguration) in the Amazon S3 User Guide, the response includes this header. It includes the expiry-date and rule-id key-value pairs that provide information about object expiration. The value of the rule-id is URL-encoded.

Object expiration information is not returned in directory buckets and this header returns the value “ NotImplemented ” in all responses for directory buckets.

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

SSECustomerAlgorithm *string

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that’s used.

This functionality is not supported for directory buckets.

SSECustomerKeyMD5 *string

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

This functionality is not supported for directory buckets.

SSEKMSEncryptionContext *string

If present, indicates the Amazon Web Services KMS Encryption Context to use for object encryption. The value of this header is a Base64 encoded string of a UTF-8 encoded JSON, which contains the encryption context as key-value pairs. This value is stored as object metadata and automatically gets passed on to Amazon Web Services KMS for future GetObject operations on this object.

SSEKMSKeyId *string

If present, indicates the ID of the KMS key that was used for object encryption.

ServerSideEncryption types.ServerSideEncryption

The server-side encryption algorithm used when you store this object in Amazon S3.

Size *int64

The size of the object in bytes. This value is only be present if you append to an object.

This functionality is only supported for objects in the Amazon S3 Express One Zone storage class in directory buckets.

VersionId *string

Version ID of the object.

If you enable versioning for a bucket, Amazon S3 automatically generates a unique version ID for the object being stored. Amazon S3 returns this ID in the response. When you enable versioning for a bucket, if Amazon S3 receives multiple write requests for the same object simultaneously, it stores all of the objects. For more information about versioning, see Objects to Versioning-Enabled Buckets[https://docs.aws.amazon.com/AmazonS3/latest/dev/AddingObjectstoVersioningEnabledBuckets.html]in the Amazon S3 User Guide. For information about returning the versioning state of a bucket, see GetBucketVersioning.

This functionality is not supported for directory buckets.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutObjectRetentionOutput struct

Structure Fields:

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutObjectTaggingOutput struct

Structure Fields:

VersionId *string

The versionId of the object the tag-set was added to.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

PutPublicAccessBlockOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

ResolveEndpoint struct

Structure Fields:

Resolver EndpointResolver
Options EndpointResolverOptions

RestoreObjectOutput struct

Structure Fields:

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

RestoreOutputPath *string

Indicates the path in the provided S3 output location where Select results will be restored to.

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

UploadPartCopyOutput struct

Structure Fields:

BucketKeyEnabled *bool

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

CopyPartResult *types.CopyPartResult

Container for all response elements.

CopySourceVersionId *string

The version of the source object that was copied, if you have enabled versioning on the source bucket.

This functionality is not supported when the source object is in a directory bucket.

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

SSECustomerAlgorithm *string

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that’s used.

This functionality is not supported for directory buckets.

SSECustomerKeyMD5 *string

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

This functionality is not supported for directory buckets.

SSEKMSKeyId *string

If present, indicates the ID of the KMS key that was used for object encryption.

ServerSideEncryption types.ServerSideEncryption

The server-side encryption algorithm used when you store this object in Amazon S3 (for example, AES256 , aws:kms ).

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

UploadPartOutput struct

Structure Fields:

BucketKeyEnabled *bool

Indicates whether the multipart upload uses an S3 Bucket Key for server-side encryption with Key Management Service (KMS) keys (SSE-KMS).

ChecksumCRC32 *string

The Base64 encoded, 32-bit CRC32 checksum of the object. This checksum is only be present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it’s a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see object integrity[https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums]in the Amazon S3 User Guide.

ChecksumCRC32C *string

The Base64 encoded, 32-bit CRC32C checksum of the object. This checksum is only present if the checksum was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it’s a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see object integrity[https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums]in the Amazon S3 User Guide.

ChecksumCRC64NVME *string

This header can be used as a data integrity check to verify that the data received is the same data that was originally sent. This header specifies the Base64 encoded, 64-bit CRC64NVME checksum of the part. For more information, see object integrity[https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html]in the Amazon S3 User Guide.

ChecksumSHA1 *string

The Base64 encoded, 160-bit SHA1 digest of the object. This will only be present if the object was uploaded with the object. When you use the API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it’s a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see object integrity[https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums]in the Amazon S3 User Guide.

ChecksumSHA256 *string

The Base64 encoded, 256-bit SHA256 digest of the object. This will only be present if the object was uploaded with the object. When you use an API operation on an object that was uploaded using multipart uploads, this value may not be a direct checksum value of the full object. Instead, it’s a calculation based on the checksum values of each individual part. For more information about how checksums are calculated with multipart uploads, see object integrity[https://docs.aws.amazon.com/AmazonS3/latest/userguide/checking-object-integrity.html#large-object-checksums]in the Amazon S3 User Guide.

ETag *string

Entity tag for the uploaded object.

RequestCharged types.RequestCharged

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

This functionality is not supported for directory buckets.

SSECustomerAlgorithm *string

If server-side encryption with a customer-provided encryption key was requested, the response will include this header to confirm the encryption algorithm that’s used.

This functionality is not supported for directory buckets.

SSECustomerKeyMD5 *string

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

This functionality is not supported for directory buckets.

SSEKMSKeyId *string

If present, indicates the ID of the KMS key that was used for object encryption.

ServerSideEncryption types.ServerSideEncryption

The server-side encryption algorithm used when you store this object in Amazon S3 (for example, AES256 , aws:kms ).

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

WriteGetObjectResponseOutput struct

Structure Fields:

ResultMetadata middleware.Metadata

Metadata pertaining to the operation’s result.

Function Details

func EndpointResolverFromURL(url string, optFns ...func(*aws.Endpoint)) EndpointResolver

EndpointResolverFromURL returns an EndpointResolver configured using the provided endpoint url. By default, the resolved endpoint resolver uses the client region as signing region, and the endpoint source is set to EndpointSourceCustom.You can provide functional options to configure endpoint values for the resolved endpoint.



59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
// File 'service/s3/endpoints.go', line 59

func EndpointResolverFromURL(url string, optFns ...func(*aws.Endpoint)) EndpointResolver { e := aws.Endpoint{URL: url, Source: aws.EndpointSourceCustom} for _, fn := range optFns { fn(&e) } return EndpointResolverFunc( func(region string, options EndpointResolverOptions) (aws.Endpoint, error) { if len(e.SigningRegion) == 0 { e.SigningRegion = region } return e, nil }, ) }

func GetChecksumValidationMetadata(m middleware.Metadata) (ChecksumValidationMetadata, bool)

GetChecksumValidationMetadata returns the set of algorithms that will be used to validate the response payload with. The response payload must be completely read in order for the checksum validation to be performed. An error is returned by the operation output’s response io.ReadCloser if the computed checksums are invalid. Returns false if no checksum algorithm used metadata was found.



999
1000
1001
1002
1003
1004
1005
1006
1007
1008
// File 'service/s3/api_client.go', line 999

func GetChecksumValidationMetadata(m middleware.Metadata) (ChecksumValidationMetadata, bool) { values, ok := internalChecksum.GetOutputValidationAlgorithmsUsed(m) if !ok { return ChecksumValidationMetadata{}, false } return ChecksumValidationMetadata{ AlgorithmsUsed: append(make([]string, 0, len(values)), values...), }, true }

func GetComputedInputChecksumsMetadata(m middleware.Metadata) (ComputedInputChecksumsMetadata, bool)

GetComputedInputChecksumsMetadata retrieves from the result metadata the map of algorithms and input payload checksums values.



938
939
940
941
942
943
944
945
946
947
// File 'service/s3/api_client.go', line 938

func GetComputedInputChecksumsMetadata(m middleware.Metadata) (ComputedInputChecksumsMetadata, bool) { values, ok := internalChecksum.GetComputedInputChecksums(m) if !ok { return ComputedInputChecksumsMetadata{}, false } return ComputedInputChecksumsMetadata{ ComputedChecksums: values, }, true }

func GetHostIDMetadata(metadata middleware.Metadata) (string, bool)

GetHostIDMetadata retrieves the host id from middleware metadata returns host id as string along with a boolean indicating presence of hostId on middleware metadata.



1038
1039
1040
// File 'service/s3/api_client.go', line 1038

func GetHostIDMetadata(metadata middleware.Metadata) (string, bool) { return s3shared.GetHostIDMetadata(metadata) }

func New(options Options, optFns ...func(*Options)) *Client

New returns an initialized Client based on the functional options. Provide additional functional options to further configure the behavior of the client, such as changing the client’s endpoint or adding custom middleware behavior.



181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
// File 'service/s3/api_client.go', line 181

func New(options Options, optFns ...func(*Options)) *Client { options = options.Copy() resolveDefaultLogger(&options) setResolvedDefaultsMode(&options) resolveRetryer(&options) resolveHTTPClient(&options) resolveHTTPSignerV4(&options) resolveEndpointResolverV2(&options) resolveHTTPSignerV4a(&options) resolveTracerProvider(&options) resolveMeterProvider(&options) resolveAuthSchemeResolver(&options) for _, fn := range optFns { fn(&options) } finalizeRetryMaxAttempts(&options) ignoreAnonymousAuth(&options) resolveExpressCredentials(&options) finalizeServiceEndpointAuthResolver(&options) resolveAuthSchemes(&options) client := &Client{ options: options, } finalizeExpressCredentials(&options, client) initializeTimeOffsetResolver(client) return client }

func NewBucketExistsWaiter(client HeadBucketAPIClient, optFns ...func(*BucketExistsWaiterOptions)) *BucketExistsWaiter

NewBucketExistsWaiter constructs a BucketExistsWaiter.



357
358
359
360
361
362
363
364
365
366
367
368
369
370
// File 'service/s3/api_op_HeadBucket.go', line 357

func NewBucketExistsWaiter(client HeadBucketAPIClient, optFns ...func(*BucketExistsWaiterOptions)) *BucketExistsWaiter { options := BucketExistsWaiterOptions{} options.MinDelay = 5 * time.Second options.MaxDelay = 120 * time.Second options.Retryable = bucketExistsStateRetryable for _, fn := range optFns { fn(&options) } return &BucketExistsWaiter{ client: client, options: options, } }

func NewBucketNotExistsWaiter(client HeadBucketAPIClient, optFns ...func(*BucketNotExistsWaiterOptions)) *BucketNotExistsWaiter

NewBucketNotExistsWaiter constructs a BucketNotExistsWaiter.



532
533
534
535
536
537
538
539
540
541
542
543
544
545
// File 'service/s3/api_op_HeadBucket.go', line 532

func NewBucketNotExistsWaiter(client HeadBucketAPIClient, optFns ...func(*BucketNotExistsWaiterOptions)) *BucketNotExistsWaiter { options := BucketNotExistsWaiterOptions{} options.MinDelay = 5 * time.Second options.MaxDelay = 120 * time.Second options.Retryable = bucketNotExistsStateRetryable for _, fn := range optFns { fn(&options) } return &BucketNotExistsWaiter{ client: client, options: options, } }

func NewDefaultEndpointResolver() *internalendpoints.Resolver

NewDefaultEndpointResolver constructs a new service endpoint resolver



41
42
43
// File 'service/s3/endpoints.go', line 41

func NewDefaultEndpointResolver() *internalendpoints.Resolver { return internalendpoints.New() }

func NewDefaultEndpointResolverV2() EndpointResolverV2



452
453
454
// File 'service/s3/endpoints.go', line 452

func NewDefaultEndpointResolverV2() EndpointResolverV2 { return &resolver{} }

func NewFromConfig(cfg aws.Config, optFns ...func(*Options)) *Client

NewFromConfig returns a new client from the provided config.



449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
// File 'service/s3/api_client.go', line 449

func NewFromConfig(cfg aws.Config, optFns ...func(*Options)) *Client { opts := Options{ Region: cfg.Region, DefaultsMode: cfg.DefaultsMode, RuntimeEnvironment: cfg.RuntimeEnvironment, HTTPClient: cfg.HTTPClient, Credentials: cfg.Credentials, APIOptions: cfg.APIOptions, Logger: cfg.Logger, ClientLogMode: cfg.ClientLogMode, AppID: cfg.AppID, RequestChecksumCalculation: cfg.RequestChecksumCalculation, ResponseChecksumValidation: cfg.ResponseChecksumValidation, } resolveAWSRetryerProvider(cfg, &opts) resolveAWSRetryMaxAttempts(cfg, &opts) resolveAWSRetryMode(cfg, &opts) resolveAWSEndpointResolver(cfg, &opts) resolveUseARNRegion(cfg, &opts) resolveDisableMultiRegionAccessPoints(cfg, &opts) resolveDisableExpressAuth(cfg, &opts) resolveUseDualStackEndpoint(cfg, &opts) resolveUseFIPSEndpoint(cfg, &opts) resolveBaseEndpoint(cfg, &opts) return New(opts, optFns...) }

func NewListBucketsExtendedPaginator(client ListBucketsExtendedAPIClient, params *ListBucketsExtendedInput, optFns ...func(options *ListBucketsExtendedPaginatorOptions)) *ListBucketsExtendedPaginator

NewListBucketsPaginator returns a new ListBucketsPaginator



254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
// File 'service/s3/api_op_ListBucketsExtended.go', line 254

func NewListBucketsExtendedPaginator(client ListBucketsExtendedAPIClient, params *ListBucketsExtendedInput, optFns ...func(options *ListBucketsExtendedPaginatorOptions)) *ListBucketsExtendedPaginator { if params == nil { params = &ListBucketsExtendedInput{} } options := ListBucketsExtendedPaginatorOptions{} if params.MaxBuckets != nil { options.Limit = *params.MaxBuckets } for _, fn := range optFns { fn(&options) } return &ListBucketsExtendedPaginator{ options: options, client: client, params: params, firstPage: true, nextToken: params.ContinuationToken, } }

func NewListBucketsPaginator(client ListBucketsAPIClient, params *ListBucketsInput, optFns ...func(*ListBucketsPaginatorOptions)) *ListBucketsPaginator

NewListBucketsPaginator returns a new ListBucketsPaginator



258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
// File 'service/s3/api_op_ListBuckets.go', line 258

func NewListBucketsPaginator(client ListBucketsAPIClient, params *ListBucketsInput, optFns ...func(*ListBucketsPaginatorOptions)) *ListBucketsPaginator { if params == nil { params = &ListBucketsInput{} } options := ListBucketsPaginatorOptions{} if params.MaxBuckets != nil { options.Limit = *params.MaxBuckets } for _, fn := range optFns { fn(&options) } return &ListBucketsPaginator{ options: options, client: client, params: params, firstPage: true, nextToken: params.ContinuationToken, } }

func NewListDirectoryBucketsPaginator(client ListDirectoryBucketsAPIClient, params *ListDirectoryBucketsInput, optFns ...func(*ListDirectoryBucketsPaginatorOptions)) *ListDirectoryBucketsPaginator

NewListDirectoryBucketsPaginator returns a new ListDirectoryBucketsPaginator



235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
// File 'service/s3/api_op_ListDirectoryBuckets.go', line 235

func NewListDirectoryBucketsPaginator(client ListDirectoryBucketsAPIClient, params *ListDirectoryBucketsInput, optFns ...func(*ListDirectoryBucketsPaginatorOptions)) *ListDirectoryBucketsPaginator { if params == nil { params = &ListDirectoryBucketsInput{} } options := ListDirectoryBucketsPaginatorOptions{} if params.MaxDirectoryBuckets != nil { options.Limit = *params.MaxDirectoryBuckets } for _, fn := range optFns { fn(&options) } return &ListDirectoryBucketsPaginator{ options: options, client: client, params: params, firstPage: true, nextToken: params.ContinuationToken, } }

func NewListMultipartUploadsPaginator(client ListMultipartUploadsAPIClient, params *ListMultipartUploadsInput, optFns ...func(*ListMultipartUploadsPaginatorOptions)) *ListMultipartUploadsPaginator

NewListMultipartUploadsPaginator returns a new ListMultipartUploadsPaginator



143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
// File 'service/s3/handwritten_paginators.go', line 143

func NewListMultipartUploadsPaginator(client ListMultipartUploadsAPIClient, params *ListMultipartUploadsInput, optFns ...func(*ListMultipartUploadsPaginatorOptions)) *ListMultipartUploadsPaginator { if params == nil { params = &ListMultipartUploadsInput{} } options := ListMultipartUploadsPaginatorOptions{} if params.MaxUploads != nil { options.Limit = aws.ToInt32(params.MaxUploads) } for _, fn := range optFns { fn(&options) } return &ListMultipartUploadsPaginator{ options: options, client: client, params: params, firstPage: true, keyMarker: params.KeyMarker, uploadIDMarker: params.UploadIdMarker, } }

func NewListObjectsV2Paginator(client ListObjectsV2APIClient, params *ListObjectsV2Input, optFns ...func(*ListObjectsV2PaginatorOptions)) *ListObjectsV2Paginator

NewListObjectsV2Paginator returns a new ListObjectsV2Paginator



477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
// File 'service/s3/api_op_ListObjectsV2.go', line 477

func NewListObjectsV2Paginator(client ListObjectsV2APIClient, params *ListObjectsV2Input, optFns ...func(*ListObjectsV2PaginatorOptions)) *ListObjectsV2Paginator { if params == nil { params = &ListObjectsV2Input{} } options := ListObjectsV2PaginatorOptions{} if params.MaxKeys != nil { options.Limit = *params.MaxKeys } for _, fn := range optFns { fn(&options) } return &ListObjectsV2Paginator{ options: options, client: client, params: params, firstPage: true, nextToken: params.ContinuationToken, } }

func NewListObjectVersionsPaginator(client ListObjectVersionsAPIClient, params *ListObjectVersionsInput, optFns ...func(*ListObjectVersionsPaginatorOptions)) *ListObjectVersionsPaginator

NewListObjectVersionsPaginator returns a new ListObjectVersionsPaginator



40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
// File 'service/s3/handwritten_paginators.go', line 40

func NewListObjectVersionsPaginator(client ListObjectVersionsAPIClient, params *ListObjectVersionsInput, optFns ...func(*ListObjectVersionsPaginatorOptions)) *ListObjectVersionsPaginator { if params == nil { params = &ListObjectVersionsInput{} } options := ListObjectVersionsPaginatorOptions{} if params.MaxKeys != nil { options.Limit = aws.ToInt32(params.MaxKeys) } for _, fn := range optFns { fn(&options) } return &ListObjectVersionsPaginator{ options: options, client: client, params: params, firstPage: true, keyMarker: params.KeyMarker, versionIDMarker: params.VersionIdMarker, } }

func NewListPartsPaginator(client ListPartsAPIClient, params *ListPartsInput, optFns ...func(*ListPartsPaginatorOptions)) *ListPartsPaginator

NewListPartsPaginator returns a new ListPartsPaginator



457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
// File 'service/s3/api_op_ListParts.go', line 457

func NewListPartsPaginator(client ListPartsAPIClient, params *ListPartsInput, optFns ...func(*ListPartsPaginatorOptions)) *ListPartsPaginator { if params == nil { params = &ListPartsInput{} } options := ListPartsPaginatorOptions{} if params.MaxParts != nil { options.Limit = *params.MaxParts } for _, fn := range optFns { fn(&options) } return &ListPartsPaginator{ options: options, client: client, params: params, firstPage: true, nextToken: params.PartNumberMarker, } }

func NewObjectExistsWaiter(client HeadObjectAPIClient, optFns ...func(*ObjectExistsWaiterOptions)) *ObjectExistsWaiter

NewObjectExistsWaiter constructs a ObjectExistsWaiter.



855
856
857
858
859
860
861
862
863
864
865
866
867
868
// File 'service/s3/api_op_HeadObject.go', line 855

func NewObjectExistsWaiter(client HeadObjectAPIClient, optFns ...func(*ObjectExistsWaiterOptions)) *ObjectExistsWaiter { options := ObjectExistsWaiterOptions{} options.MinDelay = 5 * time.Second options.MaxDelay = 120 * time.Second options.Retryable = objectExistsStateRetryable for _, fn := range optFns { fn(&options) } return &ObjectExistsWaiter{ client: client, options: options, } }

func NewObjectNotExistsWaiter(client HeadObjectAPIClient, optFns ...func(*ObjectNotExistsWaiterOptions)) *ObjectNotExistsWaiter

NewObjectNotExistsWaiter constructs a ObjectNotExistsWaiter.



1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
// File 'service/s3/api_op_HeadObject.go', line 1030

func NewObjectNotExistsWaiter(client HeadObjectAPIClient, optFns ...func(*ObjectNotExistsWaiterOptions)) *ObjectNotExistsWaiter { options := ObjectNotExistsWaiterOptions{} options.MinDelay = 5 * time.Second options.MaxDelay = 120 * time.Second options.Retryable = objectNotExistsStateRetryable for _, fn := range optFns { fn(&options) } return &ObjectNotExistsWaiter{ client: client, options: options, } }

func NewPresignClient(c *Client, optFns ...func(*PresignOptions)) *PresignClient

NewPresignClient generates a presign client using provided API Client and presign options



1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
// File 'service/s3/api_client.go', line 1119

func NewPresignClient(c *Client, optFns ...func(*PresignOptions)) *PresignClient { var options PresignOptions for _, fn := range optFns { fn(&options) } if len(options.ClientOptions) != 0 { c = New(c.options, options.ClientOptions...) } if options.Presigner == nil { options.Presigner = newDefaultV4Signer(c.options) } if options.presignerV4a == nil { options.presignerV4a = newDefaultV4aSigner(c.options) } return &PresignClient{ client: c, options: options, } }

func NewSelectObjectContentEventStream(optFns ...func(*SelectObjectContentEventStream)) *SelectObjectContentEventStream

NewSelectObjectContentEventStream initializes an SelectObjectContentEventStream. This function should only be used for testing and mocking the SelectObjectContentEventStream stream within your application.

The Reader member must be set before reading events from the stream.



413
414
415
416
417
418
419
420
421
422
// File 'service/s3/api_op_SelectObjectContent.go', line 413

func NewSelectObjectContentEventStream(optFns ...func(*SelectObjectContentEventStream)) *SelectObjectContentEventStream { es := &SelectObjectContentEventStream{ done: make(chan struct{}), err: smithysync.NewOnceErr(), } for _, fn := range optFns { fn(es) } return es }

func WithAPIOptions(optFns ...func(*middleware.Stack) error) func(*Options)

WithAPIOptions returns a functional option for setting the Client’s APIOptions option.



210
211
212
213
214
// File 'service/s3/options.go', line 210

func WithAPIOptions(optFns ...func(*middleware.Stack) error) func(*Options) { return func(o *Options) { o.APIOptions = append(o.APIOptions, optFns...) } }

func WithEndpointResolver(v EndpointResolver) func(*Options)

Deprecated: EndpointResolver and WithEndpointResolver. Providing a value for this field will likely prevent you from using any endpoint-related service features released after the introduction of EndpointResolverV2 and BaseEndpoint.

To migrate an EndpointResolver implementation that uses a custom endpoint, set the client option BaseEndpoint instead.



222
223
224
225
226
// File 'service/s3/options.go', line 222

func WithEndpointResolver(v EndpointResolver) func(*Options) { return func(o *Options) { o.EndpointResolver = v } }

func WithEndpointResolverV2(v EndpointResolverV2) func(*Options)

WithEndpointResolverV2 returns a functional option for setting the Client’s EndpointResolverV2 option.



230
231
232
233
234
// File 'service/s3/options.go', line 230

func WithEndpointResolverV2(v EndpointResolverV2) func(*Options) { return func(o *Options) { o.EndpointResolverV2 = v } }

func WithPresignClientFromClientOptions(optFns ...func(*Options)) func(*PresignOptions)

WithPresignClientFromClientOptions is a helper utility to retrieve a function that takes PresignOption as input



1089
1090
1091
// File 'service/s3/api_client.go', line 1089

func WithPresignClientFromClientOptions(optFns ...func(*Options)) func(*PresignOptions) { return withPresignClientFromClientOptions(optFns).options }

func WithPresignExpires(dur time.Duration) func(*PresignOptions)

WithPresignExpires is a helper utility to append Expires value on presign options optional function



1101
1102
1103
// File 'service/s3/api_client.go', line 1101

func WithPresignExpires(dur time.Duration) func(*PresignOptions) { return withPresignExpires(dur).options }

func WithSigV4ASigningRegions(regions []string) func(*Options)

WithSigV4ASigningRegions applies an override to the authentication workflow to use the given signing region set for SigV4A-authenticated operations.

This is an advanced setting. The value here is FINAL, taking precedence over the resolved signing region set from both auth scheme resolution and endpoint resolution.



304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
// File 'service/s3/options.go', line 304

func WithSigV4ASigningRegions(regions []string) func(*Options) { fn := func(ctx context.Context, in middleware.FinalizeInput, next middleware.FinalizeHandler) ( out middleware.FinalizeOutput, metadata middleware.Metadata, err error, ) { rscheme := getResolvedAuthScheme(ctx) if rscheme == nil { return out, metadata, fmt.Errorf("no resolved auth scheme") } smithyhttp.SetSigV4ASigningRegions(&rscheme.SignerProperties, regions) return next.HandleFinalize(ctx, in) } return func(o *Options) { o.APIOptions = append(o.APIOptions, func(s *middleware.Stack) error { return s.Finalize.Insert( middleware.FinalizeMiddlewareFunc("withSigV4ASigningRegions", fn), "Signing", middleware.Before, ) }) } }

func WithSigV4SigningName(name string) func(*Options)

WithSigV4SigningName applies an override to the authentication workflow to use the given signing name for SigV4-authenticated operations.

This is an advanced setting. The value here is FINAL, taking precedence over the resolved signing name from both auth scheme resolution and endpoint resolution.



249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
// File 'service/s3/options.go', line 249

func WithSigV4SigningName(name string) func(*Options) { fn := func(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( out middleware.InitializeOutput, metadata middleware.Metadata, err error, ) { return next.HandleInitialize(awsmiddleware.SetSigningName(ctx, name), in) } return func(o *Options) { o.APIOptions = append(o.APIOptions, func(s *middleware.Stack) error { return s.Initialize.Add( middleware.InitializeMiddlewareFunc("withSigV4SigningName", fn), middleware.Before, ) }) } }

func WithSigV4SigningRegion(region string) func(*Options)

WithSigV4SigningRegion applies an override to the authentication workflow to use the given signing region for SigV4-authenticated operations.

This is an advanced setting. The value here is FINAL, taking precedence over the resolved signing region from both auth scheme resolution and endpoint resolution.



271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
// File 'service/s3/options.go', line 271

func WithSigV4SigningRegion(region string) func(*Options) { fn := func(ctx context.Context, in middleware.InitializeInput, next middleware.InitializeHandler) ( out middleware.InitializeOutput, metadata middleware.Metadata, err error, ) { return next.HandleInitialize(awsmiddleware.SetSigningRegion(ctx, region), in) } return func(o *Options) { o.APIOptions = append(o.APIOptions, func(s *middleware.Stack) error { return s.Initialize.Add( middleware.InitializeMiddlewareFunc("withSigV4SigningRegion", fn), middleware.Before, ) }) } }