s3

package
v0.10.1-0...-83bae04 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 30, 2015 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Overview

Package s3 provides a client for Amazon Simple Storage Service.

Index

Examples

Constants

View Source
const (
	// @enum BucketCannedACL
	BucketCannedACLPrivate = "private"
	// @enum BucketCannedACL
	BucketCannedACLPublicRead = "public-read"
	// @enum BucketCannedACL
	BucketCannedACLPublicReadWrite = "public-read-write"
	// @enum BucketCannedACL
	BucketCannedACLAuthenticatedRead = "authenticated-read"
)
View Source
const (
	// @enum BucketLocationConstraint
	BucketLocationConstraintEu = "EU"
	// @enum BucketLocationConstraint
	BucketLocationConstraintEuWest1 = "eu-west-1"
	// @enum BucketLocationConstraint
	BucketLocationConstraintUsWest1 = "us-west-1"
	// @enum BucketLocationConstraint
	BucketLocationConstraintUsWest2 = "us-west-2"
	// @enum BucketLocationConstraint
	BucketLocationConstraintApSoutheast1 = "ap-southeast-1"
	// @enum BucketLocationConstraint
	BucketLocationConstraintApSoutheast2 = "ap-southeast-2"
	// @enum BucketLocationConstraint
	BucketLocationConstraintApNortheast1 = "ap-northeast-1"
	// @enum BucketLocationConstraint
	BucketLocationConstraintSaEast1 = "sa-east-1"
	// @enum BucketLocationConstraint
	BucketLocationConstraintCnNorth1 = "cn-north-1"
	// @enum BucketLocationConstraint
	BucketLocationConstraintEuCentral1 = "eu-central-1"
)
View Source
const (
	// @enum BucketLogsPermission
	BucketLogsPermissionFullControl = "FULL_CONTROL"
	// @enum BucketLogsPermission
	BucketLogsPermissionRead = "READ"
	// @enum BucketLogsPermission
	BucketLogsPermissionWrite = "WRITE"
)
View Source
const (
	// @enum BucketVersioningStatus
	BucketVersioningStatusEnabled = "Enabled"
	// @enum BucketVersioningStatus
	BucketVersioningStatusSuspended = "Suspended"
)
View Source
const (
	// @enum Event
	EventS3ReducedRedundancyLostObject = "s3:ReducedRedundancyLostObject"
	// @enum Event
	EventS3ObjectCreated = "s3:ObjectCreated:*"
	// @enum Event
	EventS3ObjectCreatedPut = "s3:ObjectCreated:Put"
	// @enum Event
	EventS3ObjectCreatedPost = "s3:ObjectCreated:Post"
	// @enum Event
	EventS3ObjectCreatedCopy = "s3:ObjectCreated:Copy"
	// @enum Event
	EventS3ObjectCreatedCompleteMultipartUpload = "s3:ObjectCreated:CompleteMultipartUpload"
	// @enum Event
	EventS3ObjectRemoved = "s3:ObjectRemoved:*"
	// @enum Event
	EventS3ObjectRemovedDelete = "s3:ObjectRemoved:Delete"
	// @enum Event
	EventS3ObjectRemovedDeleteMarkerCreated = "s3:ObjectRemoved:DeleteMarkerCreated"
)

Bucket event for which to send notifications.

View Source
const (
	// @enum ExpirationStatus
	ExpirationStatusEnabled = "Enabled"
	// @enum ExpirationStatus
	ExpirationStatusDisabled = "Disabled"
)
View Source
const (
	// @enum FilterRuleName
	FilterRuleNamePrefix = "prefix"
	// @enum FilterRuleName
	FilterRuleNameSuffix = "suffix"
)
View Source
const (
	// @enum MFADelete
	MFADeleteEnabled = "Enabled"
	// @enum MFADelete
	MFADeleteDisabled = "Disabled"
)
View Source
const (
	// @enum MFADeleteStatus
	MFADeleteStatusEnabled = "Enabled"
	// @enum MFADeleteStatus
	MFADeleteStatusDisabled = "Disabled"
)
View Source
const (
	// @enum MetadataDirective
	MetadataDirectiveCopy = "COPY"
	// @enum MetadataDirective
	MetadataDirectiveReplace = "REPLACE"
)
View Source
const (
	// @enum ObjectCannedACL
	ObjectCannedACLPrivate = "private"
	// @enum ObjectCannedACL
	ObjectCannedACLPublicRead = "public-read"
	// @enum ObjectCannedACL
	ObjectCannedACLPublicReadWrite = "public-read-write"
	// @enum ObjectCannedACL
	ObjectCannedACLAuthenticatedRead = "authenticated-read"
	// @enum ObjectCannedACL
	ObjectCannedACLBucketOwnerRead = "bucket-owner-read"
	// @enum ObjectCannedACL
	ObjectCannedACLBucketOwnerFullControl = "bucket-owner-full-control"
)
View Source
const (
	// @enum ObjectStorageClass
	ObjectStorageClassStandard = "STANDARD"
	// @enum ObjectStorageClass
	ObjectStorageClassReducedRedundancy = "REDUCED_REDUNDANCY"
	// @enum ObjectStorageClass
	ObjectStorageClassGlacier = "GLACIER"
)
View Source
const (
	// @enum Payer
	PayerRequester = "Requester"
	// @enum Payer
	PayerBucketOwner = "BucketOwner"
)
View Source
const (
	// @enum Permission
	PermissionFullControl = "FULL_CONTROL"
	// @enum Permission
	PermissionWrite = "WRITE"
	// @enum Permission
	PermissionWriteAcp = "WRITE_ACP"
	// @enum Permission
	PermissionRead = "READ"
	// @enum Permission
	PermissionReadAcp = "READ_ACP"
)
View Source
const (
	// @enum Protocol
	ProtocolHttp = "http"
	// @enum Protocol
	ProtocolHttps = "https"
)
View Source
const (
	// @enum ReplicationRuleStatus
	ReplicationRuleStatusEnabled = "Enabled"
	// @enum ReplicationRuleStatus
	ReplicationRuleStatusDisabled = "Disabled"
)
View Source
const (
	// @enum ReplicationStatus
	ReplicationStatusComplete = "COMPLETE"
	// @enum ReplicationStatus
	ReplicationStatusPending = "PENDING"
	// @enum ReplicationStatus
	ReplicationStatusFailed = "FAILED"
	// @enum ReplicationStatus
	ReplicationStatusReplica = "REPLICA"
)
View Source
const (
	// @enum ServerSideEncryption
	ServerSideEncryptionAes256 = "AES256"
	// @enum ServerSideEncryption
	ServerSideEncryptionAwsKms = "aws:kms"
)
View Source
const (
	// @enum StorageClass
	StorageClassStandard = "STANDARD"
	// @enum StorageClass
	StorageClassReducedRedundancy = "REDUCED_REDUNDANCY"
	// @enum StorageClass
	StorageClassStandardIa = "STANDARD_IA"
)
View Source
const (
	// @enum TransitionStorageClass
	TransitionStorageClassGlacier = "GLACIER"
	// @enum TransitionStorageClass
	TransitionStorageClassStandardIa = "STANDARD_IA"
)
View Source
const (
	// @enum Type
	TypeCanonicalUser = "CanonicalUser"
	// @enum Type
	TypeAmazonCustomerByEmail = "AmazonCustomerByEmail"
	// @enum Type
	TypeGroup = "Group"
)
View Source
const (
	// @enum EncodingType
	EncodingTypeUrl = "url"
)

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

View Source
const (
	// @enum ObjectVersionStorageClass
	ObjectVersionStorageClassStandard = "STANDARD"
)
View Source
const (
	// @enum RequestCharged
	RequestChargedRequester = "requester"
)

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

View Source
const (
	// @enum RequestPayer
	RequestPayerRequester = "requester"
)

Confirms that the requester knows that she or he will be charged for the request. Bucket owners need not specify this parameter in their requests. Documentation on downloading objects from requester pays buckets can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html

View Source
const ServiceName = "s3"

A ServiceName is the name of the service the client will make API calls to.

View Source
const (
	// @enum UploadPartRequestServerSideEncryption
	UploadPartRequestServerSideEncryptionAes256 = "AES256"
)

The Server-side encryption algorithm used when storing this object in S3 (e.g., AES256).

Variables

This section is empty.

Functions

This section is empty.

Types

type AbortMultipartUploadInput

type AbortMultipartUploadInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`

	// Confirms that the requester knows that she or he will be charged for the
	// request. Bucket owners need not specify this parameter in their requests.
	// Documentation on downloading objects from requester pays buckets can be found
	// at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
	RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`

	UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (AbortMultipartUploadInput) GoString

func (s AbortMultipartUploadInput) GoString() string

GoString returns the string representation

func (AbortMultipartUploadInput) String

func (s AbortMultipartUploadInput) String() string

String returns the string representation

type AbortMultipartUploadOutput

type AbortMultipartUploadOutput struct {
	// If present, indicates that the requester was successfully charged for the
	// request.
	RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
	// contains filtered or unexported fields
}

func (AbortMultipartUploadOutput) GoString

func (s AbortMultipartUploadOutput) GoString() string

GoString returns the string representation

func (AbortMultipartUploadOutput) String

String returns the string representation

type AccessControlPolicy

type AccessControlPolicy struct {
	// A list of grants.
	Grants []*Grant `locationName:"AccessControlList" locationNameList:"Grant" type:"list"`

	Owner *Owner `type:"structure"`
	// contains filtered or unexported fields
}

func (AccessControlPolicy) GoString

func (s AccessControlPolicy) GoString() string

GoString returns the string representation

func (AccessControlPolicy) String

func (s AccessControlPolicy) String() string

String returns the string representation

type Bucket

type Bucket struct {
	// Date the bucket was created.
	CreationDate *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// The name of the bucket.
	Name *string `type:"string"`
	// contains filtered or unexported fields
}

func (Bucket) GoString

func (s Bucket) GoString() string

GoString returns the string representation

func (Bucket) String

func (s Bucket) String() string

String returns the string representation

type BucketLifecycleConfiguration

type BucketLifecycleConfiguration struct {
	Rules []*LifecycleRule `locationName:"Rule" type:"list" flattened:"true" required:"true"`
	// contains filtered or unexported fields
}

func (BucketLifecycleConfiguration) GoString

func (s BucketLifecycleConfiguration) GoString() string

GoString returns the string representation

func (BucketLifecycleConfiguration) String

String returns the string representation

type BucketLoggingStatus

type BucketLoggingStatus struct {
	LoggingEnabled *LoggingEnabled `type:"structure"`
	// contains filtered or unexported fields
}

func (BucketLoggingStatus) GoString

func (s BucketLoggingStatus) GoString() string

GoString returns the string representation

func (BucketLoggingStatus) String

func (s BucketLoggingStatus) String() string

String returns the string representation

type CORSConfiguration

type CORSConfiguration struct {
	CORSRules []*CORSRule `locationName:"CORSRule" type:"list" flattened:"true" required:"true"`
	// contains filtered or unexported fields
}

func (CORSConfiguration) GoString

func (s CORSConfiguration) GoString() string

GoString returns the string representation

func (CORSConfiguration) String

func (s CORSConfiguration) String() string

String returns the string representation

type CORSRule

type CORSRule struct {
	// Specifies which headers are allowed in a pre-flight OPTIONS request.
	AllowedHeaders []*string `locationName:"AllowedHeader" type:"list" flattened:"true"`

	// Identifies HTTP methods that the domain/origin specified in the rule is allowed
	// to execute.
	AllowedMethods []*string `locationName:"AllowedMethod" type:"list" flattened:"true" required:"true"`

	// One or more origins you want customers to be able to access the bucket from.
	AllowedOrigins []*string `locationName:"AllowedOrigin" type:"list" flattened:"true" required:"true"`

	// One or more headers in the response that you want customers to be able to
	// access from their applications (for example, from a JavaScript XMLHttpRequest
	// object).
	ExposeHeaders []*string `locationName:"ExposeHeader" type:"list" flattened:"true"`

	// The time in seconds that your browser is to cache the preflight response
	// for the specified resource.
	MaxAgeSeconds *int64 `type:"integer"`
	// contains filtered or unexported fields
}

func (CORSRule) GoString

func (s CORSRule) GoString() string

GoString returns the string representation

func (CORSRule) String

func (s CORSRule) String() string

String returns the string representation

type CloudFunctionConfiguration

type CloudFunctionConfiguration struct {
	CloudFunction *string `type:"string"`

	// Bucket event for which to send notifications.
	Event *string `type:"string" enum:"Event"`

	Events []*string `locationName:"Event" type:"list" flattened:"true"`

	// Optional unique identifier for configurations in a notification configuration.
	// If you don't provide one, Amazon S3 will assign an ID.
	Id *string `type:"string"`

	InvocationRole *string `type:"string"`
	// contains filtered or unexported fields
}

func (CloudFunctionConfiguration) GoString

func (s CloudFunctionConfiguration) GoString() string

GoString returns the string representation

func (CloudFunctionConfiguration) String

String returns the string representation

type CommonPrefix

type CommonPrefix struct {
	Prefix *string `type:"string"`
	// contains filtered or unexported fields
}

func (CommonPrefix) GoString

func (s CommonPrefix) GoString() string

GoString returns the string representation

func (CommonPrefix) String

func (s CommonPrefix) String() string

String returns the string representation

type CompleteMultipartUploadInput

type CompleteMultipartUploadInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`

	MultipartUpload *CompletedMultipartUpload `locationName:"CompleteMultipartUpload" type:"structure"`

	// Confirms that the requester knows that she or he will be charged for the
	// request. Bucket owners need not specify this parameter in their requests.
	// Documentation on downloading objects from requester pays buckets can be found
	// at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
	RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`

	UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (CompleteMultipartUploadInput) GoString

func (s CompleteMultipartUploadInput) GoString() string

GoString returns the string representation

func (CompleteMultipartUploadInput) String

String returns the string representation

type CompleteMultipartUploadOutput

type CompleteMultipartUploadOutput struct {
	Bucket *string `type:"string"`

	// Entity tag of the object.
	ETag *string `type:"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.
	Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"`

	Key *string `min:"1" type:"string"`

	Location *string `type:"string"`

	// If present, indicates that the requester was successfully charged for the
	// request.
	RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`

	// If present, specifies the ID of the AWS Key Management Service (KMS) master
	// encryption key that was used for the object.
	SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`

	// The Server-side encryption algorithm used when storing this object in S3
	// (e.g., AES256, aws:kms).
	ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`

	// Version of the object.
	VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"`
	// contains filtered or unexported fields
}

func (CompleteMultipartUploadOutput) GoString

GoString returns the string representation

func (CompleteMultipartUploadOutput) String

String returns the string representation

type CompletedMultipartUpload

type CompletedMultipartUpload struct {
	Parts []*CompletedPart `locationName:"Part" type:"list" flattened:"true"`
	// contains filtered or unexported fields
}

func (CompletedMultipartUpload) GoString

func (s CompletedMultipartUpload) GoString() string

GoString returns the string representation

func (CompletedMultipartUpload) String

func (s CompletedMultipartUpload) String() string

String returns the string representation

type CompletedPart

type CompletedPart struct {
	// Entity tag returned when the part was uploaded.
	ETag *string `type:"string"`

	// Part number that identifies the part. This is a positive integer between
	// 1 and 10,000.
	PartNumber *int64 `type:"integer"`
	// contains filtered or unexported fields
}

func (CompletedPart) GoString

func (s CompletedPart) GoString() string

GoString returns the string representation

func (CompletedPart) String

func (s CompletedPart) String() string

String returns the string representation

type Condition

type Condition struct {
	// The HTTP error code when the redirect is applied. In the event of an error,
	// if the error code equals this value, then the specified redirect is applied.
	// Required when parent element Condition is specified and sibling KeyPrefixEquals
	// is not specified. If both are specified, then both must be true for the redirect
	// to be applied.
	HttpErrorCodeReturnedEquals *string `type:"string"`

	// The object key name prefix when the redirect is applied. For example, to
	// redirect requests for ExamplePage.html, the key prefix will be ExamplePage.html.
	// To redirect request for all pages with the prefix docs/, the key prefix will
	// be /docs, which identifies all objects in the docs/ folder. Required when
	// the parent element Condition is specified and sibling HttpErrorCodeReturnedEquals
	// is not specified. If both conditions are specified, both must be true for
	// the redirect to be applied.
	KeyPrefixEquals *string `type:"string"`
	// contains filtered or unexported fields
}

func (Condition) GoString

func (s Condition) GoString() string

GoString returns the string representation

func (Condition) String

func (s Condition) String() string

String returns the string representation

type CopyObjectInput

type CopyObjectInput struct {
	// The canned ACL to apply to the object.
	ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"ObjectCannedACL"`

	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	// Specifies caching behavior along the request/reply chain.
	CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"`

	// Specifies presentational information for the object.
	ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"`

	// Specifies what content encodings have been applied to the object and thus
	// what decoding mechanisms must be applied to obtain the media-type referenced
	// by the Content-Type header field.
	ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"`

	// The language the content is in.
	ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"`

	// A standard MIME type describing the format of the object data.
	ContentType *string `location:"header" locationName:"Content-Type" type:"string"`

	// The name of the source bucket and key name of the source object, separated
	// by a slash (/). Must be URL-encoded.
	CopySource *string `location:"header" locationName:"x-amz-copy-source" type:"string" required:"true"`

	// Copies the object if its entity tag (ETag) matches the specified tag.
	CopySourceIfMatch *string `location:"header" locationName:"x-amz-copy-source-if-match" type:"string"`

	// Copies the object if it has been modified since the specified time.
	CopySourceIfModifiedSince *time.Time `location:"header" locationName:"x-amz-copy-source-if-modified-since" type:"timestamp" timestampFormat:"rfc822"`

	// Copies the object if its entity tag (ETag) is different than the specified
	// ETag.
	CopySourceIfNoneMatch *string `location:"header" locationName:"x-amz-copy-source-if-none-match" type:"string"`

	// Copies the object if it hasn't been modified since the specified time.
	CopySourceIfUnmodifiedSince *time.Time `location:"header" locationName:"x-amz-copy-source-if-unmodified-since" type:"timestamp" timestampFormat:"rfc822"`

	// Specifies the algorithm to use when decrypting the source object (e.g., AES256).
	CopySourceSSECustomerAlgorithm *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-algorithm" type:"string"`

	// Specifies the customer-provided encryption key for Amazon S3 to use to decrypt
	// the source object. The encryption key provided in this header must be one
	// that was used when the source object was created.
	CopySourceSSECustomerKey *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key" type:"string"`

	// Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
	// Amazon S3 uses this header for a message integrity check to ensure the encryption
	// key was transmitted without error.
	CopySourceSSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key-MD5" type:"string"`

	// The date and time at which the object is no longer cacheable.
	Expires *time.Time `location:"header" locationName:"Expires" type:"timestamp" timestampFormat:"rfc822"`

	// Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.
	GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"`

	// Allows grantee to read the object data and its metadata.
	GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"`

	// Allows grantee to read the object ACL.
	GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`

	// Allows grantee to write the ACL for the applicable object.
	GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"`

	Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`

	// A map of metadata to store with the object in S3.
	Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"`

	// Specifies whether the metadata is copied from the source object or replaced
	// with metadata provided in the request.
	MetadataDirective *string `location:"header" locationName:"x-amz-metadata-directive" type:"string" enum:"MetadataDirective"`

	// Confirms that the requester knows that she or he will be charged for the
	// request. Bucket owners need not specify this parameter in their requests.
	// Documentation on downloading objects from requester pays buckets can be found
	// at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
	RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`

	// Specifies the algorithm to use to when encrypting the object (e.g., AES256).
	SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`

	// Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
	// data. This value is used to store the object and then it is discarded; Amazon
	// does not store the encryption key. The key must be appropriate for use with
	// the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
	// header.
	SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"`

	// Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
	// Amazon S3 uses this header for a message integrity check to ensure the encryption
	// key was transmitted without error.
	SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`

	// Specifies the AWS KMS key ID to use for object encryption. All GET and PUT
	// requests for an object protected by AWS KMS will fail if not made via SSL
	// or using SigV4. Documentation on configuring any of the officially supported
	// AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
	SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`

	// The Server-side encryption algorithm used when storing this object in S3
	// (e.g., AES256, aws:kms).
	ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`

	// The type of storage to use for the object. Defaults to 'STANDARD'.
	StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"`

	// 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.
	WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"`
	// contains filtered or unexported fields
}

func (CopyObjectInput) GoString

func (s CopyObjectInput) GoString() string

GoString returns the string representation

func (CopyObjectInput) String

func (s CopyObjectInput) String() string

String returns the string representation

type CopyObjectOutput

type CopyObjectOutput struct {
	CopyObjectResult *CopyObjectResult `type:"structure"`

	CopySourceVersionId *string `location:"header" locationName:"x-amz-copy-source-version-id" type:"string"`

	// If the object expiration is configured, the response includes this header.
	Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"`

	// If present, indicates that the requester was successfully charged for the
	// request.
	RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`

	// If server-side encryption with a customer-provided encryption key was requested,
	// the response will include this header confirming the encryption algorithm
	// used.
	SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`

	// If server-side encryption with a customer-provided encryption key was requested,
	// the response will include this header to provide round trip message integrity
	// verification of the customer-provided encryption key.
	SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`

	// If present, specifies the ID of the AWS Key Management Service (KMS) master
	// encryption key that was used for the object.
	SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`

	// The Server-side encryption algorithm used when storing this object in S3
	// (e.g., AES256, aws:kms).
	ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`

	// Version ID of the newly created copy.
	VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"`
	// contains filtered or unexported fields
}

func (CopyObjectOutput) GoString

func (s CopyObjectOutput) GoString() string

GoString returns the string representation

func (CopyObjectOutput) String

func (s CopyObjectOutput) String() string

String returns the string representation

type CopyObjectResult

type CopyObjectResult struct {
	ETag *string `type:"string"`

	LastModified *time.Time `type:"timestamp" timestampFormat:"iso8601"`
	// contains filtered or unexported fields
}

func (CopyObjectResult) GoString

func (s CopyObjectResult) GoString() string

GoString returns the string representation

func (CopyObjectResult) String

func (s CopyObjectResult) String() string

String returns the string representation

type CopyPartResult

type CopyPartResult struct {
	// Entity tag of the object.
	ETag *string `type:"string"`

	// Date and time at which the object was uploaded.
	LastModified *time.Time `type:"timestamp" timestampFormat:"iso8601"`
	// contains filtered or unexported fields
}

func (CopyPartResult) GoString

func (s CopyPartResult) GoString() string

GoString returns the string representation

func (CopyPartResult) String

func (s CopyPartResult) String() string

String returns the string representation

type CreateBucketConfiguration

type CreateBucketConfiguration struct {
	// Specifies the region where the bucket will be created. If you don't specify
	// a region, the bucket will be created in US Standard.
	LocationConstraint *string `type:"string" enum:"BucketLocationConstraint"`
	// contains filtered or unexported fields
}

func (CreateBucketConfiguration) GoString

func (s CreateBucketConfiguration) GoString() string

GoString returns the string representation

func (CreateBucketConfiguration) String

func (s CreateBucketConfiguration) String() string

String returns the string representation

type CreateBucketInput

type CreateBucketInput struct {
	// The canned ACL to apply to the bucket.
	ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"BucketCannedACL"`

	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	CreateBucketConfiguration *CreateBucketConfiguration `locationName:"CreateBucketConfiguration" type:"structure"`

	// Allows grantee the read, write, read ACP, and write ACP permissions on the
	// bucket.
	GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"`

	// Allows grantee to list the objects in the bucket.
	GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"`

	// Allows grantee to read the bucket ACL.
	GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`

	// Allows grantee to create, overwrite, and delete any object in the bucket.
	GrantWrite *string `location:"header" locationName:"x-amz-grant-write" type:"string"`

	// Allows grantee to write the ACL for the applicable bucket.
	GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"`
	// contains filtered or unexported fields
}

func (CreateBucketInput) GoString

func (s CreateBucketInput) GoString() string

GoString returns the string representation

func (CreateBucketInput) String

func (s CreateBucketInput) String() string

String returns the string representation

type CreateBucketOutput

type CreateBucketOutput struct {
	Location *string `location:"header" locationName:"Location" type:"string"`
	// contains filtered or unexported fields
}

func (CreateBucketOutput) GoString

func (s CreateBucketOutput) GoString() string

GoString returns the string representation

func (CreateBucketOutput) String

func (s CreateBucketOutput) String() string

String returns the string representation

type CreateMultipartUploadInput

type CreateMultipartUploadInput struct {
	// The canned ACL to apply to the object.
	ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"ObjectCannedACL"`

	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	// Specifies caching behavior along the request/reply chain.
	CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"`

	// Specifies presentational information for the object.
	ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"`

	// Specifies what content encodings have been applied to the object and thus
	// what decoding mechanisms must be applied to obtain the media-type referenced
	// by the Content-Type header field.
	ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"`

	// The language the content is in.
	ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"`

	// A standard MIME type describing the format of the object data.
	ContentType *string `location:"header" locationName:"Content-Type" type:"string"`

	// The date and time at which the object is no longer cacheable.
	Expires *time.Time `location:"header" locationName:"Expires" type:"timestamp" timestampFormat:"rfc822"`

	// Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.
	GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"`

	// Allows grantee to read the object data and its metadata.
	GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"`

	// Allows grantee to read the object ACL.
	GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`

	// Allows grantee to write the ACL for the applicable object.
	GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"`

	Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`

	// A map of metadata to store with the object in S3.
	Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"`

	// Confirms that the requester knows that she or he will be charged for the
	// request. Bucket owners need not specify this parameter in their requests.
	// Documentation on downloading objects from requester pays buckets can be found
	// at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
	RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`

	// Specifies the algorithm to use to when encrypting the object (e.g., AES256).
	SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`

	// Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
	// data. This value is used to store the object and then it is discarded; Amazon
	// does not store the encryption key. The key must be appropriate for use with
	// the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
	// header.
	SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"`

	// Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
	// Amazon S3 uses this header for a message integrity check to ensure the encryption
	// key was transmitted without error.
	SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`

	// Specifies the AWS KMS key ID to use for object encryption. All GET and PUT
	// requests for an object protected by AWS KMS will fail if not made via SSL
	// or using SigV4. Documentation on configuring any of the officially supported
	// AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
	SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`

	// The Server-side encryption algorithm used when storing this object in S3
	// (e.g., AES256, aws:kms).
	ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`

	// The type of storage to use for the object. Defaults to 'STANDARD'.
	StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"`

	// 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.
	WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"`
	// contains filtered or unexported fields
}

func (CreateMultipartUploadInput) GoString

func (s CreateMultipartUploadInput) GoString() string

GoString returns the string representation

func (CreateMultipartUploadInput) String

String returns the string representation

type CreateMultipartUploadOutput

type CreateMultipartUploadOutput struct {
	// Name of the bucket to which the multipart upload was initiated.
	Bucket *string `locationName:"Bucket" type:"string"`

	// Object key for which the multipart upload was initiated.
	Key *string `min:"1" type:"string"`

	// If present, indicates that the requester was successfully charged for the
	// request.
	RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`

	// If server-side encryption with a customer-provided encryption key was requested,
	// the response will include this header confirming the encryption algorithm
	// used.
	SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`

	// If server-side encryption with a customer-provided encryption key was requested,
	// the response will include this header to provide round trip message integrity
	// verification of the customer-provided encryption key.
	SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`

	// If present, specifies the ID of the AWS Key Management Service (KMS) master
	// encryption key that was used for the object.
	SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`

	// The Server-side encryption algorithm used when storing this object in S3
	// (e.g., AES256, aws:kms).
	ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`

	// ID for the initiated multipart upload.
	UploadId *string `type:"string"`
	// contains filtered or unexported fields
}

func (CreateMultipartUploadOutput) GoString

func (s CreateMultipartUploadOutput) GoString() string

GoString returns the string representation

func (CreateMultipartUploadOutput) String

String returns the string representation

type Delete

type Delete struct {
	Objects []*ObjectIdentifier `locationName:"Object" type:"list" flattened:"true" required:"true"`

	// Element to enable quiet mode for the request. When you add this element,
	// you must set its value to true.
	Quiet *bool `type:"boolean"`
	// contains filtered or unexported fields
}

func (Delete) GoString

func (s Delete) GoString() string

GoString returns the string representation

func (Delete) String

func (s Delete) String() string

String returns the string representation

type DeleteBucketCorsInput

type DeleteBucketCorsInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteBucketCorsInput) GoString

func (s DeleteBucketCorsInput) GoString() string

GoString returns the string representation

func (DeleteBucketCorsInput) String

func (s DeleteBucketCorsInput) String() string

String returns the string representation

type DeleteBucketCorsOutput

type DeleteBucketCorsOutput struct {
	// contains filtered or unexported fields
}

func (DeleteBucketCorsOutput) GoString

func (s DeleteBucketCorsOutput) GoString() string

GoString returns the string representation

func (DeleteBucketCorsOutput) String

func (s DeleteBucketCorsOutput) String() string

String returns the string representation

type DeleteBucketInput

type DeleteBucketInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteBucketInput) GoString

func (s DeleteBucketInput) GoString() string

GoString returns the string representation

func (DeleteBucketInput) String

func (s DeleteBucketInput) String() string

String returns the string representation

type DeleteBucketLifecycleInput

type DeleteBucketLifecycleInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteBucketLifecycleInput) GoString

func (s DeleteBucketLifecycleInput) GoString() string

GoString returns the string representation

func (DeleteBucketLifecycleInput) String

String returns the string representation

type DeleteBucketLifecycleOutput

type DeleteBucketLifecycleOutput struct {
	// contains filtered or unexported fields
}

func (DeleteBucketLifecycleOutput) GoString

func (s DeleteBucketLifecycleOutput) GoString() string

GoString returns the string representation

func (DeleteBucketLifecycleOutput) String

String returns the string representation

type DeleteBucketOutput

type DeleteBucketOutput struct {
	// contains filtered or unexported fields
}

func (DeleteBucketOutput) GoString

func (s DeleteBucketOutput) GoString() string

GoString returns the string representation

func (DeleteBucketOutput) String

func (s DeleteBucketOutput) String() string

String returns the string representation

type DeleteBucketPolicyInput

type DeleteBucketPolicyInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteBucketPolicyInput) GoString

func (s DeleteBucketPolicyInput) GoString() string

GoString returns the string representation

func (DeleteBucketPolicyInput) String

func (s DeleteBucketPolicyInput) String() string

String returns the string representation

type DeleteBucketPolicyOutput

type DeleteBucketPolicyOutput struct {
	// contains filtered or unexported fields
}

func (DeleteBucketPolicyOutput) GoString

func (s DeleteBucketPolicyOutput) GoString() string

GoString returns the string representation

func (DeleteBucketPolicyOutput) String

func (s DeleteBucketPolicyOutput) String() string

String returns the string representation

type DeleteBucketReplicationInput

type DeleteBucketReplicationInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteBucketReplicationInput) GoString

func (s DeleteBucketReplicationInput) GoString() string

GoString returns the string representation

func (DeleteBucketReplicationInput) String

String returns the string representation

type DeleteBucketReplicationOutput

type DeleteBucketReplicationOutput struct {
	// contains filtered or unexported fields
}

func (DeleteBucketReplicationOutput) GoString

GoString returns the string representation

func (DeleteBucketReplicationOutput) String

String returns the string representation

type DeleteBucketTaggingInput

type DeleteBucketTaggingInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteBucketTaggingInput) GoString

func (s DeleteBucketTaggingInput) GoString() string

GoString returns the string representation

func (DeleteBucketTaggingInput) String

func (s DeleteBucketTaggingInput) String() string

String returns the string representation

type DeleteBucketTaggingOutput

type DeleteBucketTaggingOutput struct {
	// contains filtered or unexported fields
}

func (DeleteBucketTaggingOutput) GoString

func (s DeleteBucketTaggingOutput) GoString() string

GoString returns the string representation

func (DeleteBucketTaggingOutput) String

func (s DeleteBucketTaggingOutput) String() string

String returns the string representation

type DeleteBucketWebsiteInput

type DeleteBucketWebsiteInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (DeleteBucketWebsiteInput) GoString

func (s DeleteBucketWebsiteInput) GoString() string

GoString returns the string representation

func (DeleteBucketWebsiteInput) String

func (s DeleteBucketWebsiteInput) String() string

String returns the string representation

type DeleteBucketWebsiteOutput

type DeleteBucketWebsiteOutput struct {
	// contains filtered or unexported fields
}

func (DeleteBucketWebsiteOutput) GoString

func (s DeleteBucketWebsiteOutput) GoString() string

GoString returns the string representation

func (DeleteBucketWebsiteOutput) String

func (s DeleteBucketWebsiteOutput) String() string

String returns the string representation

type DeleteMarkerEntry

type DeleteMarkerEntry struct {
	// Specifies whether the object is (true) or is not (false) the latest version
	// of an object.
	IsLatest *bool `type:"boolean"`

	// The object key.
	Key *string `min:"1" type:"string"`

	// Date and time the object was last modified.
	LastModified *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	Owner *Owner `type:"structure"`

	// Version ID of an object.
	VersionId *string `type:"string"`
	// contains filtered or unexported fields
}

func (DeleteMarkerEntry) GoString

func (s DeleteMarkerEntry) GoString() string

GoString returns the string representation

func (DeleteMarkerEntry) String

func (s DeleteMarkerEntry) String() string

String returns the string representation

type DeleteObjectInput

type DeleteObjectInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`

	// The concatenation of the authentication device's serial number, a space,
	// and the value that is displayed on your authentication device.
	MFA *string `location:"header" locationName:"x-amz-mfa" type:"string"`

	// Confirms that the requester knows that she or he will be charged for the
	// request. Bucket owners need not specify this parameter in their requests.
	// Documentation on downloading objects from requester pays buckets can be found
	// at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
	RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`

	// VersionId used to reference a specific version of the object.
	VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
	// contains filtered or unexported fields
}

func (DeleteObjectInput) GoString

func (s DeleteObjectInput) GoString() string

GoString returns the string representation

func (DeleteObjectInput) String

func (s DeleteObjectInput) String() string

String returns the string representation

type DeleteObjectOutput

type DeleteObjectOutput struct {
	// Specifies whether the versioned object that was permanently deleted was (true)
	// or was not (false) a delete marker.
	DeleteMarker *bool `location:"header" locationName:"x-amz-delete-marker" type:"boolean"`

	// If present, indicates that the requester was successfully charged for the
	// request.
	RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`

	// Returns the version ID of the delete marker created as a result of the DELETE
	// operation.
	VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"`
	// contains filtered or unexported fields
}

func (DeleteObjectOutput) GoString

func (s DeleteObjectOutput) GoString() string

GoString returns the string representation

func (DeleteObjectOutput) String

func (s DeleteObjectOutput) String() string

String returns the string representation

type DeleteObjectsInput

type DeleteObjectsInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	Delete *Delete `locationName:"Delete" type:"structure" required:"true"`

	// The concatenation of the authentication device's serial number, a space,
	// and the value that is displayed on your authentication device.
	MFA *string `location:"header" locationName:"x-amz-mfa" type:"string"`

	// Confirms that the requester knows that she or he will be charged for the
	// request. Bucket owners need not specify this parameter in their requests.
	// Documentation on downloading objects from requester pays buckets can be found
	// at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
	RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
	// contains filtered or unexported fields
}

func (DeleteObjectsInput) GoString

func (s DeleteObjectsInput) GoString() string

GoString returns the string representation

func (DeleteObjectsInput) String

func (s DeleteObjectsInput) String() string

String returns the string representation

type DeleteObjectsOutput

type DeleteObjectsOutput struct {
	Deleted []*DeletedObject `type:"list" flattened:"true"`

	Errors []*Error `locationName:"Error" type:"list" flattened:"true"`

	// If present, indicates that the requester was successfully charged for the
	// request.
	RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
	// contains filtered or unexported fields
}

func (DeleteObjectsOutput) GoString

func (s DeleteObjectsOutput) GoString() string

GoString returns the string representation

func (DeleteObjectsOutput) String

func (s DeleteObjectsOutput) String() string

String returns the string representation

type DeletedObject

type DeletedObject struct {
	DeleteMarker *bool `type:"boolean"`

	DeleteMarkerVersionId *string `type:"string"`

	Key *string `min:"1" type:"string"`

	VersionId *string `type:"string"`
	// contains filtered or unexported fields
}

func (DeletedObject) GoString

func (s DeletedObject) GoString() string

GoString returns the string representation

func (DeletedObject) String

func (s DeletedObject) String() string

String returns the string representation

type Destination

type Destination struct {
	// Amazon resource name (ARN) of the bucket where you want Amazon S3 to store
	// replicas of the object identified by the rule.
	Bucket *string `type:"string" required:"true"`

	// The class of storage used to store the object.
	StorageClass *string `type:"string" enum:"StorageClass"`
	// contains filtered or unexported fields
}

func (Destination) GoString

func (s Destination) GoString() string

GoString returns the string representation

func (Destination) String

func (s Destination) String() string

String returns the string representation

type Error

type Error struct {
	Code *string `type:"string"`

	Key *string `min:"1" type:"string"`

	Message *string `type:"string"`

	VersionId *string `type:"string"`
	// contains filtered or unexported fields
}

func (Error) GoString

func (s Error) GoString() string

GoString returns the string representation

func (Error) String

func (s Error) String() string

String returns the string representation

type ErrorDocument

type ErrorDocument struct {
	// The object key name to use when a 4XX class error occurs.
	Key *string `min:"1" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (ErrorDocument) GoString

func (s ErrorDocument) GoString() string

GoString returns the string representation

func (ErrorDocument) String

func (s ErrorDocument) String() string

String returns the string representation

type FilterRule

type FilterRule struct {
	// Object key name prefix or suffix identifying one or more objects to which
	// the filtering rule applies. Maximum prefix length can be up to 1,024 characters.
	// Overlapping prefixes and suffixes are not supported. For more information,
	// go to Configuring Event Notifications (http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html)
	// in the Amazon Simple Storage Service Developer Guide.
	Name *string `type:"string" enum:"FilterRuleName"`

	Value *string `type:"string"`
	// contains filtered or unexported fields
}

Container for key value pair that defines the criteria for the filter rule.

func (FilterRule) GoString

func (s FilterRule) GoString() string

GoString returns the string representation

func (FilterRule) String

func (s FilterRule) String() string

String returns the string representation

type GetBucketAclInput

type GetBucketAclInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetBucketAclInput) GoString

func (s GetBucketAclInput) GoString() string

GoString returns the string representation

func (GetBucketAclInput) String

func (s GetBucketAclInput) String() string

String returns the string representation

type GetBucketAclOutput

type GetBucketAclOutput struct {
	// A list of grants.
	Grants []*Grant `locationName:"AccessControlList" locationNameList:"Grant" type:"list"`

	Owner *Owner `type:"structure"`
	// contains filtered or unexported fields
}

func (GetBucketAclOutput) GoString

func (s GetBucketAclOutput) GoString() string

GoString returns the string representation

func (GetBucketAclOutput) String

func (s GetBucketAclOutput) String() string

String returns the string representation

type GetBucketCorsInput

type GetBucketCorsInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetBucketCorsInput) GoString

func (s GetBucketCorsInput) GoString() string

GoString returns the string representation

func (GetBucketCorsInput) String

func (s GetBucketCorsInput) String() string

String returns the string representation

type GetBucketCorsOutput

type GetBucketCorsOutput struct {
	CORSRules []*CORSRule `locationName:"CORSRule" type:"list" flattened:"true"`
	// contains filtered or unexported fields
}

func (GetBucketCorsOutput) GoString

func (s GetBucketCorsOutput) GoString() string

GoString returns the string representation

func (GetBucketCorsOutput) String

func (s GetBucketCorsOutput) String() string

String returns the string representation

type GetBucketLifecycleConfigurationInput

type GetBucketLifecycleConfigurationInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetBucketLifecycleConfigurationInput) GoString

GoString returns the string representation

func (GetBucketLifecycleConfigurationInput) String

String returns the string representation

type GetBucketLifecycleConfigurationOutput

type GetBucketLifecycleConfigurationOutput struct {
	Rules []*LifecycleRule `locationName:"Rule" type:"list" flattened:"true"`
	// contains filtered or unexported fields
}

func (GetBucketLifecycleConfigurationOutput) GoString

GoString returns the string representation

func (GetBucketLifecycleConfigurationOutput) String

String returns the string representation

type GetBucketLifecycleInput

type GetBucketLifecycleInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetBucketLifecycleInput) GoString

func (s GetBucketLifecycleInput) GoString() string

GoString returns the string representation

func (GetBucketLifecycleInput) String

func (s GetBucketLifecycleInput) String() string

String returns the string representation

type GetBucketLifecycleOutput

type GetBucketLifecycleOutput struct {
	Rules []*Rule `locationName:"Rule" type:"list" flattened:"true"`
	// contains filtered or unexported fields
}

func (GetBucketLifecycleOutput) GoString

func (s GetBucketLifecycleOutput) GoString() string

GoString returns the string representation

func (GetBucketLifecycleOutput) String

func (s GetBucketLifecycleOutput) String() string

String returns the string representation

type GetBucketLocationInput

type GetBucketLocationInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetBucketLocationInput) GoString

func (s GetBucketLocationInput) GoString() string

GoString returns the string representation

func (GetBucketLocationInput) String

func (s GetBucketLocationInput) String() string

String returns the string representation

type GetBucketLocationOutput

type GetBucketLocationOutput struct {
	LocationConstraint *string `type:"string" enum:"BucketLocationConstraint"`
	// contains filtered or unexported fields
}

func (GetBucketLocationOutput) GoString

func (s GetBucketLocationOutput) GoString() string

GoString returns the string representation

func (GetBucketLocationOutput) String

func (s GetBucketLocationOutput) String() string

String returns the string representation

type GetBucketLoggingInput

type GetBucketLoggingInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetBucketLoggingInput) GoString

func (s GetBucketLoggingInput) GoString() string

GoString returns the string representation

func (GetBucketLoggingInput) String

func (s GetBucketLoggingInput) String() string

String returns the string representation

type GetBucketLoggingOutput

type GetBucketLoggingOutput struct {
	LoggingEnabled *LoggingEnabled `type:"structure"`
	// contains filtered or unexported fields
}

func (GetBucketLoggingOutput) GoString

func (s GetBucketLoggingOutput) GoString() string

GoString returns the string representation

func (GetBucketLoggingOutput) String

func (s GetBucketLoggingOutput) String() string

String returns the string representation

type GetBucketNotificationConfigurationRequest

type GetBucketNotificationConfigurationRequest struct {
	// Name of the buket to get the notification configuration for.
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetBucketNotificationConfigurationRequest) GoString

GoString returns the string representation

func (GetBucketNotificationConfigurationRequest) String

String returns the string representation

type GetBucketPolicyInput

type GetBucketPolicyInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetBucketPolicyInput) GoString

func (s GetBucketPolicyInput) GoString() string

GoString returns the string representation

func (GetBucketPolicyInput) String

func (s GetBucketPolicyInput) String() string

String returns the string representation

type GetBucketPolicyOutput

type GetBucketPolicyOutput struct {
	// The bucket policy as a JSON document.
	Policy *string `type:"string"`
	// contains filtered or unexported fields
}

func (GetBucketPolicyOutput) GoString

func (s GetBucketPolicyOutput) GoString() string

GoString returns the string representation

func (GetBucketPolicyOutput) String

func (s GetBucketPolicyOutput) String() string

String returns the string representation

type GetBucketReplicationInput

type GetBucketReplicationInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetBucketReplicationInput) GoString

func (s GetBucketReplicationInput) GoString() string

GoString returns the string representation

func (GetBucketReplicationInput) String

func (s GetBucketReplicationInput) String() string

String returns the string representation

type GetBucketReplicationOutput

type GetBucketReplicationOutput struct {
	// Container for replication rules. You can add as many as 1,000 rules. Total
	// replication configuration size can be up to 2 MB.
	ReplicationConfiguration *ReplicationConfiguration `type:"structure"`
	// contains filtered or unexported fields
}

func (GetBucketReplicationOutput) GoString

func (s GetBucketReplicationOutput) GoString() string

GoString returns the string representation

func (GetBucketReplicationOutput) String

String returns the string representation

type GetBucketRequestPaymentInput

type GetBucketRequestPaymentInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetBucketRequestPaymentInput) GoString

func (s GetBucketRequestPaymentInput) GoString() string

GoString returns the string representation

func (GetBucketRequestPaymentInput) String

String returns the string representation

type GetBucketRequestPaymentOutput

type GetBucketRequestPaymentOutput struct {
	// Specifies who pays for the download and request fees.
	Payer *string `type:"string" enum:"Payer"`
	// contains filtered or unexported fields
}

func (GetBucketRequestPaymentOutput) GoString

GoString returns the string representation

func (GetBucketRequestPaymentOutput) String

String returns the string representation

type GetBucketTaggingInput

type GetBucketTaggingInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetBucketTaggingInput) GoString

func (s GetBucketTaggingInput) GoString() string

GoString returns the string representation

func (GetBucketTaggingInput) String

func (s GetBucketTaggingInput) String() string

String returns the string representation

type GetBucketTaggingOutput

type GetBucketTaggingOutput struct {
	TagSet []*Tag `locationNameList:"Tag" type:"list" required:"true"`
	// contains filtered or unexported fields
}

func (GetBucketTaggingOutput) GoString

func (s GetBucketTaggingOutput) GoString() string

GoString returns the string representation

func (GetBucketTaggingOutput) String

func (s GetBucketTaggingOutput) String() string

String returns the string representation

type GetBucketVersioningInput

type GetBucketVersioningInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetBucketVersioningInput) GoString

func (s GetBucketVersioningInput) GoString() string

GoString returns the string representation

func (GetBucketVersioningInput) String

func (s GetBucketVersioningInput) String() string

String returns the string representation

type GetBucketVersioningOutput

type GetBucketVersioningOutput struct {
	// 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.
	MFADelete *string `locationName:"MfaDelete" type:"string" enum:"MFADeleteStatus"`

	// The versioning state of the bucket.
	Status *string `type:"string" enum:"BucketVersioningStatus"`
	// contains filtered or unexported fields
}

func (GetBucketVersioningOutput) GoString

func (s GetBucketVersioningOutput) GoString() string

GoString returns the string representation

func (GetBucketVersioningOutput) String

func (s GetBucketVersioningOutput) String() string

String returns the string representation

type GetBucketWebsiteInput

type GetBucketWebsiteInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (GetBucketWebsiteInput) GoString

func (s GetBucketWebsiteInput) GoString() string

GoString returns the string representation

func (GetBucketWebsiteInput) String

func (s GetBucketWebsiteInput) String() string

String returns the string representation

type GetBucketWebsiteOutput

type GetBucketWebsiteOutput struct {
	ErrorDocument *ErrorDocument `type:"structure"`

	IndexDocument *IndexDocument `type:"structure"`

	RedirectAllRequestsTo *RedirectAllRequestsTo `type:"structure"`

	RoutingRules []*RoutingRule `locationNameList:"RoutingRule" type:"list"`
	// contains filtered or unexported fields
}

func (GetBucketWebsiteOutput) GoString

func (s GetBucketWebsiteOutput) GoString() string

GoString returns the string representation

func (GetBucketWebsiteOutput) String

func (s GetBucketWebsiteOutput) String() string

String returns the string representation

type GetObjectAclInput

type GetObjectAclInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`

	// Confirms that the requester knows that she or he will be charged for the
	// request. Bucket owners need not specify this parameter in their requests.
	// Documentation on downloading objects from requester pays buckets can be found
	// at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
	RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`

	// VersionId used to reference a specific version of the object.
	VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
	// contains filtered or unexported fields
}

func (GetObjectAclInput) GoString

func (s GetObjectAclInput) GoString() string

GoString returns the string representation

func (GetObjectAclInput) String

func (s GetObjectAclInput) String() string

String returns the string representation

type GetObjectAclOutput

type GetObjectAclOutput struct {
	// A list of grants.
	Grants []*Grant `locationName:"AccessControlList" locationNameList:"Grant" type:"list"`

	Owner *Owner `type:"structure"`

	// If present, indicates that the requester was successfully charged for the
	// request.
	RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
	// contains filtered or unexported fields
}

func (GetObjectAclOutput) GoString

func (s GetObjectAclOutput) GoString() string

GoString returns the string representation

func (GetObjectAclOutput) String

func (s GetObjectAclOutput) String() string

String returns the string representation

type GetObjectInput

type GetObjectInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	// Return the object only if its entity tag (ETag) is the same as the one specified,
	// otherwise return a 412 (precondition failed).
	IfMatch *string `location:"header" locationName:"If-Match" type:"string"`

	// Return the object only if it has been modified since the specified time,
	// otherwise return a 304 (not modified).
	IfModifiedSince *time.Time `location:"header" locationName:"If-Modified-Since" type:"timestamp" timestampFormat:"rfc822"`

	// Return the object only if its entity tag (ETag) is different from the one
	// specified, otherwise return a 304 (not modified).
	IfNoneMatch *string `location:"header" locationName:"If-None-Match" type:"string"`

	// Return the object only if it has not been modified since the specified time,
	// otherwise return a 412 (precondition failed).
	IfUnmodifiedSince *time.Time `location:"header" locationName:"If-Unmodified-Since" type:"timestamp" timestampFormat:"rfc822"`

	Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`

	// Downloads the specified range bytes of an object. For more information about
	// the HTTP Range header, go to http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35.
	Range *string `location:"header" locationName:"Range" type:"string"`

	// Confirms that the requester knows that she or he will be charged for the
	// request. Bucket owners need not specify this parameter in their requests.
	// Documentation on downloading objects from requester pays buckets can be found
	// at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
	RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`

	// Sets the Cache-Control header of the response.
	ResponseCacheControl *string `location:"querystring" locationName:"response-cache-control" type:"string"`

	// Sets the Content-Disposition header of the response
	ResponseContentDisposition *string `location:"querystring" locationName:"response-content-disposition" type:"string"`

	// Sets the Content-Encoding header of the response.
	ResponseContentEncoding *string `location:"querystring" locationName:"response-content-encoding" type:"string"`

	// Sets the Content-Language header of the response.
	ResponseContentLanguage *string `location:"querystring" locationName:"response-content-language" type:"string"`

	// Sets the Content-Type header of the response.
	ResponseContentType *string `location:"querystring" locationName:"response-content-type" type:"string"`

	// Sets the Expires header of the response.
	ResponseExpires *time.Time `location:"querystring" locationName:"response-expires" type:"timestamp" timestampFormat:"iso8601"`

	// Specifies the algorithm to use to when encrypting the object (e.g., AES256).
	SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`

	// Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
	// data. This value is used to store the object and then it is discarded; Amazon
	// does not store the encryption key. The key must be appropriate for use with
	// the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
	// header.
	SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"`

	// Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
	// Amazon S3 uses this header for a message integrity check to ensure the encryption
	// key was transmitted without error.
	SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`

	// VersionId used to reference a specific version of the object.
	VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
	// contains filtered or unexported fields
}

func (GetObjectInput) GoString

func (s GetObjectInput) GoString() string

GoString returns the string representation

func (GetObjectInput) String

func (s GetObjectInput) String() string

String returns the string representation

type GetObjectOutput

type GetObjectOutput struct {
	AcceptRanges *string `location:"header" locationName:"accept-ranges" type:"string"`

	// Object data.
	Body io.ReadCloser `type:"blob"`

	// Specifies caching behavior along the request/reply chain.
	CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"`

	// Specifies presentational information for the object.
	ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"`

	// Specifies what content encodings have been applied to the object and thus
	// what decoding mechanisms must be applied to obtain the media-type referenced
	// by the Content-Type header field.
	ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"`

	// The language the content is in.
	ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"`

	// Size of the body in bytes.
	ContentLength *int64 `location:"header" locationName:"Content-Length" type:"integer"`

	// The portion of the object returned in the response.
	ContentRange *string `location:"header" locationName:"Content-Range" type:"string"`

	// A standard MIME type describing the format of the object data.
	ContentType *string `location:"header" locationName:"Content-Type" type:"string"`

	// 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.
	DeleteMarker *bool `location:"header" locationName:"x-amz-delete-marker" type:"boolean"`

	// An ETag is an opaque identifier assigned by a web server to a specific version
	// of a resource found at a URL
	ETag *string `location:"header" locationName:"ETag" type:"string"`

	// If the object expiration is configured (see PUT Bucket lifecycle), the response
	// includes this header. It includes the expiry-date and rule-id key value pairs
	// providing object expiration information. The value of the rule-id is URL
	// encoded.
	Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"`

	// The date and time at which the object is no longer cacheable.
	Expires *string `location:"header" locationName:"Expires" type:"string"`

	// Last modified date of the object
	LastModified *time.Time `location:"header" locationName:"Last-Modified" type:"timestamp" timestampFormat:"rfc822"`

	// A map of metadata to store with the object in S3.
	Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"`

	// 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.
	MissingMeta *int64 `location:"header" locationName:"x-amz-missing-meta" type:"integer"`

	ReplicationStatus *string `location:"header" locationName:"x-amz-replication-status" type:"string" enum:"ReplicationStatus"`

	// If present, indicates that the requester was successfully charged for the
	// request.
	RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`

	// Provides information about object restoration operation and expiration time
	// of the restored object copy.
	Restore *string `location:"header" locationName:"x-amz-restore" type:"string"`

	// If server-side encryption with a customer-provided encryption key was requested,
	// the response will include this header confirming the encryption algorithm
	// used.
	SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`

	// If server-side encryption with a customer-provided encryption key was requested,
	// the response will include this header to provide round trip message integrity
	// verification of the customer-provided encryption key.
	SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`

	// If present, specifies the ID of the AWS Key Management Service (KMS) master
	// encryption key that was used for the object.
	SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`

	// The Server-side encryption algorithm used when storing this object in S3
	// (e.g., AES256, aws:kms).
	ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`

	StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"`

	// Version of the object.
	VersionId *string `location:"header" locationName:"x-amz-version-id" type:"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.
	WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"`
	// contains filtered or unexported fields
}

func (GetObjectOutput) GoString

func (s GetObjectOutput) GoString() string

GoString returns the string representation

func (GetObjectOutput) String

func (s GetObjectOutput) String() string

String returns the string representation

type GetObjectTorrentInput

type GetObjectTorrentInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`

	// Confirms that the requester knows that she or he will be charged for the
	// request. Bucket owners need not specify this parameter in their requests.
	// Documentation on downloading objects from requester pays buckets can be found
	// at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
	RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
	// contains filtered or unexported fields
}

func (GetObjectTorrentInput) GoString

func (s GetObjectTorrentInput) GoString() string

GoString returns the string representation

func (GetObjectTorrentInput) String

func (s GetObjectTorrentInput) String() string

String returns the string representation

type GetObjectTorrentOutput

type GetObjectTorrentOutput struct {
	Body io.ReadCloser `type:"blob"`

	// If present, indicates that the requester was successfully charged for the
	// request.
	RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
	// contains filtered or unexported fields
}

func (GetObjectTorrentOutput) GoString

func (s GetObjectTorrentOutput) GoString() string

GoString returns the string representation

func (GetObjectTorrentOutput) String

func (s GetObjectTorrentOutput) String() string

String returns the string representation

type Grant

type Grant struct {
	Grantee *Grantee `type:"structure"`

	// Specifies the permission given to the grantee.
	Permission *string `type:"string" enum:"Permission"`
	// contains filtered or unexported fields
}

func (Grant) GoString

func (s Grant) GoString() string

GoString returns the string representation

func (Grant) String

func (s Grant) String() string

String returns the string representation

type Grantee

type Grantee struct {
	// Screen name of the grantee.
	DisplayName *string `type:"string"`

	// Email address of the grantee.
	EmailAddress *string `type:"string"`

	// The canonical user ID of the grantee.
	ID *string `type:"string"`

	// Type of grantee
	Type *string `locationName:"xsi:type" type:"string" xmlAttribute:"true" required:"true" enum:"Type"`

	// URI of the grantee group.
	URI *string `type:"string"`
	// contains filtered or unexported fields
}

func (Grantee) GoString

func (s Grantee) GoString() string

GoString returns the string representation

func (Grantee) String

func (s Grantee) String() string

String returns the string representation

type HeadBucketInput

type HeadBucketInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (HeadBucketInput) GoString

func (s HeadBucketInput) GoString() string

GoString returns the string representation

func (HeadBucketInput) String

func (s HeadBucketInput) String() string

String returns the string representation

type HeadBucketOutput

type HeadBucketOutput struct {
	// contains filtered or unexported fields
}

func (HeadBucketOutput) GoString

func (s HeadBucketOutput) GoString() string

GoString returns the string representation

func (HeadBucketOutput) String

func (s HeadBucketOutput) String() string

String returns the string representation

type HeadObjectInput

type HeadObjectInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	// Return the object only if its entity tag (ETag) is the same as the one specified,
	// otherwise return a 412 (precondition failed).
	IfMatch *string `location:"header" locationName:"If-Match" type:"string"`

	// Return the object only if it has been modified since the specified time,
	// otherwise return a 304 (not modified).
	IfModifiedSince *time.Time `location:"header" locationName:"If-Modified-Since" type:"timestamp" timestampFormat:"rfc822"`

	// Return the object only if its entity tag (ETag) is different from the one
	// specified, otherwise return a 304 (not modified).
	IfNoneMatch *string `location:"header" locationName:"If-None-Match" type:"string"`

	// Return the object only if it has not been modified since the specified time,
	// otherwise return a 412 (precondition failed).
	IfUnmodifiedSince *time.Time `location:"header" locationName:"If-Unmodified-Since" type:"timestamp" timestampFormat:"rfc822"`

	Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`

	// Downloads the specified range bytes of an object. For more information about
	// the HTTP Range header, go to http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.35.
	Range *string `location:"header" locationName:"Range" type:"string"`

	// Confirms that the requester knows that she or he will be charged for the
	// request. Bucket owners need not specify this parameter in their requests.
	// Documentation on downloading objects from requester pays buckets can be found
	// at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
	RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`

	// Specifies the algorithm to use to when encrypting the object (e.g., AES256).
	SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`

	// Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
	// data. This value is used to store the object and then it is discarded; Amazon
	// does not store the encryption key. The key must be appropriate for use with
	// the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
	// header.
	SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"`

	// Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
	// Amazon S3 uses this header for a message integrity check to ensure the encryption
	// key was transmitted without error.
	SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`

	// VersionId used to reference a specific version of the object.
	VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
	// contains filtered or unexported fields
}

func (HeadObjectInput) GoString

func (s HeadObjectInput) GoString() string

GoString returns the string representation

func (HeadObjectInput) String

func (s HeadObjectInput) String() string

String returns the string representation

type HeadObjectOutput

type HeadObjectOutput struct {
	AcceptRanges *string `location:"header" locationName:"accept-ranges" type:"string"`

	// Specifies caching behavior along the request/reply chain.
	CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"`

	// Specifies presentational information for the object.
	ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"`

	// Specifies what content encodings have been applied to the object and thus
	// what decoding mechanisms must be applied to obtain the media-type referenced
	// by the Content-Type header field.
	ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"`

	// The language the content is in.
	ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"`

	// Size of the body in bytes.
	ContentLength *int64 `location:"header" locationName:"Content-Length" type:"integer"`

	// A standard MIME type describing the format of the object data.
	ContentType *string `location:"header" locationName:"Content-Type" type:"string"`

	// 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.
	DeleteMarker *bool `location:"header" locationName:"x-amz-delete-marker" type:"boolean"`

	// An ETag is an opaque identifier assigned by a web server to a specific version
	// of a resource found at a URL
	ETag *string `location:"header" locationName:"ETag" type:"string"`

	// If the object expiration is configured (see PUT Bucket lifecycle), the response
	// includes this header. It includes the expiry-date and rule-id key value pairs
	// providing object expiration information. The value of the rule-id is URL
	// encoded.
	Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"`

	// The date and time at which the object is no longer cacheable.
	Expires *string `location:"header" locationName:"Expires" type:"string"`

	// Last modified date of the object
	LastModified *time.Time `location:"header" locationName:"Last-Modified" type:"timestamp" timestampFormat:"rfc822"`

	// A map of metadata to store with the object in S3.
	Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"`

	// 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.
	MissingMeta *int64 `location:"header" locationName:"x-amz-missing-meta" type:"integer"`

	ReplicationStatus *string `location:"header" locationName:"x-amz-replication-status" type:"string" enum:"ReplicationStatus"`

	// If present, indicates that the requester was successfully charged for the
	// request.
	RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`

	// Provides information about object restoration operation and expiration time
	// of the restored object copy.
	Restore *string `location:"header" locationName:"x-amz-restore" type:"string"`

	// If server-side encryption with a customer-provided encryption key was requested,
	// the response will include this header confirming the encryption algorithm
	// used.
	SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`

	// If server-side encryption with a customer-provided encryption key was requested,
	// the response will include this header to provide round trip message integrity
	// verification of the customer-provided encryption key.
	SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`

	// If present, specifies the ID of the AWS Key Management Service (KMS) master
	// encryption key that was used for the object.
	SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`

	// The Server-side encryption algorithm used when storing this object in S3
	// (e.g., AES256, aws:kms).
	ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`

	StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"`

	// Version of the object.
	VersionId *string `location:"header" locationName:"x-amz-version-id" type:"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.
	WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"`
	// contains filtered or unexported fields
}

func (HeadObjectOutput) GoString

func (s HeadObjectOutput) GoString() string

GoString returns the string representation

func (HeadObjectOutput) String

func (s HeadObjectOutput) String() string

String returns the string representation

type IndexDocument

type IndexDocument struct {
	// A suffix that is appended to a request that is for a directory on the website
	// endpoint (e.g. if the suffix is index.html and you make a request to samplebucket/images/
	// the data that is returned will be for the object with the key name images/index.html)
	// The suffix must not be empty and must not include a slash character.
	Suffix *string `type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (IndexDocument) GoString

func (s IndexDocument) GoString() string

GoString returns the string representation

func (IndexDocument) String

func (s IndexDocument) String() string

String returns the string representation

type Initiator

type Initiator struct {
	// Name of the Principal.
	DisplayName *string `type:"string"`

	// If the principal is an AWS account, it provides the Canonical User ID. If
	// the principal is an IAM User, it provides a user ARN value.
	ID *string `type:"string"`
	// contains filtered or unexported fields
}

func (Initiator) GoString

func (s Initiator) GoString() string

GoString returns the string representation

func (Initiator) String

func (s Initiator) String() string

String returns the string representation

type KeyFilter

type KeyFilter struct {
	// A list of containers for key value pair that defines the criteria for the
	// filter rule.
	FilterRules []*FilterRule `locationName:"FilterRule" type:"list" flattened:"true"`
	// contains filtered or unexported fields
}

Container for object key name prefix and suffix filtering rules.

func (KeyFilter) GoString

func (s KeyFilter) GoString() string

GoString returns the string representation

func (KeyFilter) String

func (s KeyFilter) String() string

String returns the string representation

type LambdaFunctionConfiguration

type LambdaFunctionConfiguration struct {
	Events []*string `locationName:"Event" type:"list" flattened:"true" required:"true"`

	// Container for object key name filtering rules. For information about key
	// name filtering, go to Configuring Event Notifications (http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html)
	// in the Amazon Simple Storage Service Developer Guide.
	Filter *NotificationConfigurationFilter `type:"structure"`

	// Optional unique identifier for configurations in a notification configuration.
	// If you don't provide one, Amazon S3 will assign an ID.
	Id *string `type:"string"`

	// Lambda cloud function ARN that Amazon S3 can invoke when it detects events
	// of the specified type.
	LambdaFunctionArn *string `locationName:"CloudFunction" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Container for specifying the AWS Lambda notification configuration.

func (LambdaFunctionConfiguration) GoString

func (s LambdaFunctionConfiguration) GoString() string

GoString returns the string representation

func (LambdaFunctionConfiguration) String

String returns the string representation

type LifecycleConfiguration

type LifecycleConfiguration struct {
	Rules []*Rule `locationName:"Rule" type:"list" flattened:"true" required:"true"`
	// contains filtered or unexported fields
}

func (LifecycleConfiguration) GoString

func (s LifecycleConfiguration) GoString() string

GoString returns the string representation

func (LifecycleConfiguration) String

func (s LifecycleConfiguration) String() string

String returns the string representation

type LifecycleExpiration

type LifecycleExpiration struct {
	// Indicates at what date the object is to be moved or deleted. Should be in
	// GMT ISO 8601 Format.
	Date *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// Indicates the lifetime, in days, of the objects that are subject to the rule.
	// The value must be a non-zero positive integer.
	Days *int64 `type:"integer"`
	// contains filtered or unexported fields
}

func (LifecycleExpiration) GoString

func (s LifecycleExpiration) GoString() string

GoString returns the string representation

func (LifecycleExpiration) String

func (s LifecycleExpiration) String() string

String returns the string representation

type LifecycleRule

type LifecycleRule struct {
	Expiration *LifecycleExpiration `type:"structure"`

	// Unique identifier for the rule. The value cannot be longer than 255 characters.
	ID *string `type:"string"`

	// Specifies when noncurrent object versions expire. Upon expiration, Amazon
	// S3 permanently deletes the noncurrent object versions. You set this lifecycle
	// configuration action on a bucket that has versioning enabled (or suspended)
	// to request that Amazon S3 delete noncurrent object versions at a specific
	// period in the object's lifetime.
	NoncurrentVersionExpiration *NoncurrentVersionExpiration `type:"structure"`

	NoncurrentVersionTransitions []*NoncurrentVersionTransition `locationName:"NoncurrentVersionTransition" type:"list" flattened:"true"`

	// Prefix identifying one or more objects to which the rule applies.
	Prefix *string `type:"string" required:"true"`

	// If 'Enabled', the rule is currently being applied. If 'Disabled', the rule
	// is not currently being applied.
	Status *string `type:"string" required:"true" enum:"ExpirationStatus"`

	Transitions []*Transition `locationName:"Transition" type:"list" flattened:"true"`
	// contains filtered or unexported fields
}

func (LifecycleRule) GoString

func (s LifecycleRule) GoString() string

GoString returns the string representation

func (LifecycleRule) String

func (s LifecycleRule) String() string

String returns the string representation

type ListBucketsInput

type ListBucketsInput struct {
	// contains filtered or unexported fields
}

func (ListBucketsInput) GoString

func (s ListBucketsInput) GoString() string

GoString returns the string representation

func (ListBucketsInput) String

func (s ListBucketsInput) String() string

String returns the string representation

type ListBucketsOutput

type ListBucketsOutput struct {
	Buckets []*Bucket `locationNameList:"Bucket" type:"list"`

	Owner *Owner `type:"structure"`
	// contains filtered or unexported fields
}

func (ListBucketsOutput) GoString

func (s ListBucketsOutput) GoString() string

GoString returns the string representation

func (ListBucketsOutput) String

func (s ListBucketsOutput) String() string

String returns the string representation

type ListMultipartUploadsInput

type ListMultipartUploadsInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	// Character you use to group keys.
	Delimiter *string `location:"querystring" locationName:"delimiter" type:"string"`

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

	// Together with upload-id-marker, this parameter specifies the multipart upload
	// after which listing should begin.
	KeyMarker *string `location:"querystring" locationName:"key-marker" type:"string"`

	// Sets the maximum number of multipart uploads, from 1 to 1,000, to return
	// in the response body. 1,000 is the maximum number of uploads that can be
	// returned in a response.
	MaxUploads *int64 `location:"querystring" locationName:"max-uploads" type:"integer"`

	// Lists in-progress uploads only for those keys that begin with the specified
	// prefix.
	Prefix *string `location:"querystring" locationName:"prefix" type:"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.
	UploadIdMarker *string `location:"querystring" locationName:"upload-id-marker" type:"string"`
	// contains filtered or unexported fields
}

func (ListMultipartUploadsInput) GoString

func (s ListMultipartUploadsInput) GoString() string

GoString returns the string representation

func (ListMultipartUploadsInput) String

func (s ListMultipartUploadsInput) String() string

String returns the string representation

type ListMultipartUploadsOutput

type ListMultipartUploadsOutput struct {
	// Name of the bucket to which the multipart upload was initiated.
	Bucket *string `type:"string"`

	CommonPrefixes []*CommonPrefix `type:"list" flattened:"true"`

	Delimiter *string `type:"string"`

	// Encoding type used by Amazon S3 to encode object keys in the response.
	EncodingType *string `type:"string" enum:"EncodingType"`

	// 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.
	IsTruncated *bool `type:"boolean"`

	// The key at or after which the listing began.
	KeyMarker *string `type:"string"`

	// Maximum number of multipart uploads that could have been included in the
	// response.
	MaxUploads *int64 `type:"integer"`

	// When a list is truncated, this element specifies the value that should be
	// used for the key-marker request parameter in a subsequent request.
	NextKeyMarker *string `type:"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.
	NextUploadIdMarker *string `type:"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.
	Prefix *string `type:"string"`

	// Upload ID after which listing began.
	UploadIdMarker *string `type:"string"`

	Uploads []*MultipartUpload `locationName:"Upload" type:"list" flattened:"true"`
	// contains filtered or unexported fields
}

func (ListMultipartUploadsOutput) GoString

func (s ListMultipartUploadsOutput) GoString() string

GoString returns the string representation

func (ListMultipartUploadsOutput) String

String returns the string representation

type ListObjectVersionsInput

type ListObjectVersionsInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	// A delimiter is a character you use to group keys.
	Delimiter *string `location:"querystring" locationName:"delimiter" type:"string"`

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

	// Specifies the key to start with when listing objects in a bucket.
	KeyMarker *string `location:"querystring" locationName:"key-marker" type:"string"`

	// Sets the maximum number of keys returned in the response. The response might
	// contain fewer keys but will never contain more.
	MaxKeys *int64 `location:"querystring" locationName:"max-keys" type:"integer"`

	// Limits the response to keys that begin with the specified prefix.
	Prefix *string `location:"querystring" locationName:"prefix" type:"string"`

	// Specifies the object version you want to start listing from.
	VersionIdMarker *string `location:"querystring" locationName:"version-id-marker" type:"string"`
	// contains filtered or unexported fields
}

func (ListObjectVersionsInput) GoString

func (s ListObjectVersionsInput) GoString() string

GoString returns the string representation

func (ListObjectVersionsInput) String

func (s ListObjectVersionsInput) String() string

String returns the string representation

type ListObjectVersionsOutput

type ListObjectVersionsOutput struct {
	CommonPrefixes []*CommonPrefix `type:"list" flattened:"true"`

	DeleteMarkers []*DeleteMarkerEntry `locationName:"DeleteMarker" type:"list" flattened:"true"`

	Delimiter *string `type:"string"`

	// Encoding type used by Amazon S3 to encode object keys in the response.
	EncodingType *string `type:"string" enum:"EncodingType"`

	// A flag that indicates whether or not Amazon S3 returned all of the results
	// that satisfied the search criteria. If your results were truncated, you can
	// make a follow-up paginated request using the NextKeyMarker and NextVersionIdMarker
	// response parameters as a starting place in another request to return the
	// rest of the results.
	IsTruncated *bool `type:"boolean"`

	// Marks the last Key returned in a truncated response.
	KeyMarker *string `type:"string"`

	MaxKeys *int64 `type:"integer"`

	Name *string `type:"string"`

	// Use this value for the key marker request parameter in a subsequent request.
	NextKeyMarker *string `type:"string"`

	// Use this value for the next version id marker parameter in a subsequent request.
	NextVersionIdMarker *string `type:"string"`

	Prefix *string `type:"string"`

	VersionIdMarker *string `type:"string"`

	Versions []*ObjectVersion `locationName:"Version" type:"list" flattened:"true"`
	// contains filtered or unexported fields
}

func (ListObjectVersionsOutput) GoString

func (s ListObjectVersionsOutput) GoString() string

GoString returns the string representation

func (ListObjectVersionsOutput) String

func (s ListObjectVersionsOutput) String() string

String returns the string representation

type ListObjectsInput

type ListObjectsInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	// A delimiter is a character you use to group keys.
	Delimiter *string `location:"querystring" locationName:"delimiter" type:"string"`

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

	// Specifies the key to start with when listing objects in a bucket.
	Marker *string `location:"querystring" locationName:"marker" type:"string"`

	// Sets the maximum number of keys returned in the response. The response might
	// contain fewer keys but will never contain more.
	MaxKeys *int64 `location:"querystring" locationName:"max-keys" type:"integer"`

	// Limits the response to keys that begin with the specified prefix.
	Prefix *string `location:"querystring" locationName:"prefix" type:"string"`
	// contains filtered or unexported fields
}

func (ListObjectsInput) GoString

func (s ListObjectsInput) GoString() string

GoString returns the string representation

func (ListObjectsInput) String

func (s ListObjectsInput) String() string

String returns the string representation

type ListObjectsOutput

type ListObjectsOutput struct {
	CommonPrefixes []*CommonPrefix `type:"list" flattened:"true"`

	Contents []*Object `type:"list" flattened:"true"`

	Delimiter *string `type:"string"`

	// Encoding type used by Amazon S3 to encode object keys in the response.
	EncodingType *string `type:"string" enum:"EncodingType"`

	// A flag that indicates whether or not Amazon S3 returned all of the results
	// that satisfied the search criteria.
	IsTruncated *bool `type:"boolean"`

	Marker *string `type:"string"`

	MaxKeys *int64 `type:"integer"`

	Name *string `type:"string"`

	// When response is truncated (the IsTruncated element value in the response
	// is true), you can use the key name in this field as marker in the subsequent
	// request to get next set of objects. Amazon S3 lists objects in alphabetical
	// order Note: This element is returned only if you have delimiter request parameter
	// specified. If response does not include the NextMaker and it is truncated,
	// you can use the value of the last Key in the response as the marker in the
	// subsequent request to get the next set of object keys.
	NextMarker *string `type:"string"`

	Prefix *string `type:"string"`
	// contains filtered or unexported fields
}

func (ListObjectsOutput) GoString

func (s ListObjectsOutput) GoString() string

GoString returns the string representation

func (ListObjectsOutput) String

func (s ListObjectsOutput) String() string

String returns the string representation

type ListPartsInput

type ListPartsInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`

	// Sets the maximum number of parts to return.
	MaxParts *int64 `location:"querystring" locationName:"max-parts" type:"integer"`

	// Specifies the part after which listing should begin. Only parts with higher
	// part numbers will be listed.
	PartNumberMarker *int64 `location:"querystring" locationName:"part-number-marker" type:"integer"`

	// Confirms that the requester knows that she or he will be charged for the
	// request. Bucket owners need not specify this parameter in their requests.
	// Documentation on downloading objects from requester pays buckets can be found
	// at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
	RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`

	// Upload ID identifying the multipart upload whose parts are being listed.
	UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (ListPartsInput) GoString

func (s ListPartsInput) GoString() string

GoString returns the string representation

func (ListPartsInput) String

func (s ListPartsInput) String() string

String returns the string representation

type ListPartsOutput

type ListPartsOutput struct {
	// Name of the bucket to which the multipart upload was initiated.
	Bucket *string `type:"string"`

	// Identifies who initiated the multipart upload.
	Initiator *Initiator `type:"structure"`

	// Indicates whether the returned list of parts is truncated.
	IsTruncated *bool `type:"boolean"`

	// Object key for which the multipart upload was initiated.
	Key *string `min:"1" type:"string"`

	// Maximum number of parts that were allowed in the response.
	MaxParts *int64 `type:"integer"`

	// 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.
	NextPartNumberMarker *int64 `type:"integer"`

	Owner *Owner `type:"structure"`

	// Part number after which listing begins.
	PartNumberMarker *int64 `type:"integer"`

	Parts []*Part `locationName:"Part" type:"list" flattened:"true"`

	// If present, indicates that the requester was successfully charged for the
	// request.
	RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`

	// The class of storage used to store the object.
	StorageClass *string `type:"string" enum:"StorageClass"`

	// Upload ID identifying the multipart upload whose parts are being listed.
	UploadId *string `type:"string"`
	// contains filtered or unexported fields
}

func (ListPartsOutput) GoString

func (s ListPartsOutput) GoString() string

GoString returns the string representation

func (ListPartsOutput) String

func (s ListPartsOutput) String() string

String returns the string representation

type LoggingEnabled

type LoggingEnabled struct {
	// Specifies the bucket where you want Amazon S3 to store server access logs.
	// You can have your logs delivered to any bucket that you own, including the
	// same bucket that is being logged. You can also configure multiple buckets
	// to deliver their logs to the same target bucket. In this case you should
	// choose a different TargetPrefix for each source bucket so that the delivered
	// log files can be distinguished by key.
	TargetBucket *string `type:"string"`

	TargetGrants []*TargetGrant `locationNameList:"Grant" type:"list"`

	// This element lets you specify a prefix for the keys that the log files will
	// be stored under.
	TargetPrefix *string `type:"string"`
	// contains filtered or unexported fields
}

func (LoggingEnabled) GoString

func (s LoggingEnabled) GoString() string

GoString returns the string representation

func (LoggingEnabled) String

func (s LoggingEnabled) String() string

String returns the string representation

type MultipartUpload

type MultipartUpload struct {
	// Date and time at which the multipart upload was initiated.
	Initiated *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// Identifies who initiated the multipart upload.
	Initiator *Initiator `type:"structure"`

	// Key of the object for which the multipart upload was initiated.
	Key *string `min:"1" type:"string"`

	Owner *Owner `type:"structure"`

	// The class of storage used to store the object.
	StorageClass *string `type:"string" enum:"StorageClass"`

	// Upload ID that identifies the multipart upload.
	UploadId *string `type:"string"`
	// contains filtered or unexported fields
}

func (MultipartUpload) GoString

func (s MultipartUpload) GoString() string

GoString returns the string representation

func (MultipartUpload) String

func (s MultipartUpload) String() string

String returns the string representation

type NoncurrentVersionExpiration

type NoncurrentVersionExpiration struct {
	// Specifies the number of days an object is noncurrent before Amazon S3 can
	// perform the associated action. For information about the noncurrent days
	// calculations, see How Amazon S3 Calculates When an Object Became Noncurrent
	// (/AmazonS3/latest/dev/s3-access-control.html) in the Amazon Simple Storage
	// Service Developer Guide.
	NoncurrentDays *int64 `type:"integer"`
	// contains filtered or unexported fields
}

Specifies when noncurrent object versions expire. Upon expiration, Amazon S3 permanently deletes the noncurrent object versions. You set this lifecycle configuration action on a bucket that has versioning enabled (or suspended) to request that Amazon S3 delete noncurrent object versions at a specific period in the object's lifetime.

func (NoncurrentVersionExpiration) GoString

func (s NoncurrentVersionExpiration) GoString() string

GoString returns the string representation

func (NoncurrentVersionExpiration) String

String returns the string representation

type NoncurrentVersionTransition

type NoncurrentVersionTransition struct {
	// Specifies the number of days an object is noncurrent before Amazon S3 can
	// perform the associated action. For information about the noncurrent days
	// calculations, see How Amazon S3 Calculates When an Object Became Noncurrent
	// (/AmazonS3/latest/dev/s3-access-control.html) in the Amazon Simple Storage
	// Service Developer Guide.
	NoncurrentDays *int64 `type:"integer"`

	// The class of storage used to store the object.
	StorageClass *string `type:"string" enum:"TransitionStorageClass"`
	// contains filtered or unexported fields
}

Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA or GLACIER storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA or GLACIER storage class at a specific period in the object's lifetime.

func (NoncurrentVersionTransition) GoString

func (s NoncurrentVersionTransition) GoString() string

GoString returns the string representation

func (NoncurrentVersionTransition) String

String returns the string representation

type NotificationConfiguration

type NotificationConfiguration struct {
	LambdaFunctionConfigurations []*LambdaFunctionConfiguration `locationName:"CloudFunctionConfiguration" type:"list" flattened:"true"`

	QueueConfigurations []*QueueConfiguration `locationName:"QueueConfiguration" type:"list" flattened:"true"`

	TopicConfigurations []*TopicConfiguration `locationName:"TopicConfiguration" type:"list" flattened:"true"`
	// contains filtered or unexported fields
}

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

func (NotificationConfiguration) GoString

func (s NotificationConfiguration) GoString() string

GoString returns the string representation

func (NotificationConfiguration) String

func (s NotificationConfiguration) String() string

String returns the string representation

type NotificationConfigurationDeprecated

type NotificationConfigurationDeprecated struct {
	CloudFunctionConfiguration *CloudFunctionConfiguration `type:"structure"`

	QueueConfiguration *QueueConfigurationDeprecated `type:"structure"`

	TopicConfiguration *TopicConfigurationDeprecated `type:"structure"`
	// contains filtered or unexported fields
}

func (NotificationConfigurationDeprecated) GoString

GoString returns the string representation

func (NotificationConfigurationDeprecated) String

String returns the string representation

type NotificationConfigurationFilter

type NotificationConfigurationFilter struct {
	// Container for object key name prefix and suffix filtering rules.
	Key *KeyFilter `locationName:"S3Key" type:"structure"`
	// contains filtered or unexported fields
}

Container for object key name filtering rules. For information about key name filtering, go to Configuring Event Notifications (http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html) in the Amazon Simple Storage Service Developer Guide.

func (NotificationConfigurationFilter) GoString

GoString returns the string representation

func (NotificationConfigurationFilter) String

String returns the string representation

type Object

type Object struct {
	ETag *string `type:"string"`

	Key *string `min:"1" type:"string"`

	LastModified *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	Owner *Owner `type:"structure"`

	Size *int64 `type:"integer"`

	// The class of storage used to store the object.
	StorageClass *string `type:"string" enum:"ObjectStorageClass"`
	// contains filtered or unexported fields
}

func (Object) GoString

func (s Object) GoString() string

GoString returns the string representation

func (Object) String

func (s Object) String() string

String returns the string representation

type ObjectIdentifier

type ObjectIdentifier struct {
	// Key name of the object to delete.
	Key *string `min:"1" type:"string" required:"true"`

	// VersionId for the specific version of the object to delete.
	VersionId *string `type:"string"`
	// contains filtered or unexported fields
}

func (ObjectIdentifier) GoString

func (s ObjectIdentifier) GoString() string

GoString returns the string representation

func (ObjectIdentifier) String

func (s ObjectIdentifier) String() string

String returns the string representation

type ObjectVersion

type ObjectVersion struct {
	ETag *string `type:"string"`

	// Specifies whether the object is (true) or is not (false) the latest version
	// of an object.
	IsLatest *bool `type:"boolean"`

	// The object key.
	Key *string `min:"1" type:"string"`

	// Date and time the object was last modified.
	LastModified *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	Owner *Owner `type:"structure"`

	// Size in bytes of the object.
	Size *int64 `type:"integer"`

	// The class of storage used to store the object.
	StorageClass *string `type:"string" enum:"ObjectVersionStorageClass"`

	// Version ID of an object.
	VersionId *string `type:"string"`
	// contains filtered or unexported fields
}

func (ObjectVersion) GoString

func (s ObjectVersion) GoString() string

GoString returns the string representation

func (ObjectVersion) String

func (s ObjectVersion) String() string

String returns the string representation

type Owner

type Owner struct {
	DisplayName *string `type:"string"`

	ID *string `type:"string"`
	// contains filtered or unexported fields
}

func (Owner) GoString

func (s Owner) GoString() string

GoString returns the string representation

func (Owner) String

func (s Owner) String() string

String returns the string representation

type Part

type Part struct {
	// Entity tag returned when the part was uploaded.
	ETag *string `type:"string"`

	// Date and time at which the part was uploaded.
	LastModified *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// Part number identifying the part. This is a positive integer between 1 and
	// 10,000.
	PartNumber *int64 `type:"integer"`

	// Size of the uploaded part data.
	Size *int64 `type:"integer"`
	// contains filtered or unexported fields
}

func (Part) GoString

func (s Part) GoString() string

GoString returns the string representation

func (Part) String

func (s Part) String() string

String returns the string representation

type PutBucketAclInput

type PutBucketAclInput struct {
	// The canned ACL to apply to the bucket.
	ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"BucketCannedACL"`

	AccessControlPolicy *AccessControlPolicy `locationName:"AccessControlPolicy" type:"structure"`

	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	// Allows grantee the read, write, read ACP, and write ACP permissions on the
	// bucket.
	GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"`

	// Allows grantee to list the objects in the bucket.
	GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"`

	// Allows grantee to read the bucket ACL.
	GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`

	// Allows grantee to create, overwrite, and delete any object in the bucket.
	GrantWrite *string `location:"header" locationName:"x-amz-grant-write" type:"string"`

	// Allows grantee to write the ACL for the applicable bucket.
	GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"`
	// contains filtered or unexported fields
}

func (PutBucketAclInput) GoString

func (s PutBucketAclInput) GoString() string

GoString returns the string representation

func (PutBucketAclInput) String

func (s PutBucketAclInput) String() string

String returns the string representation

type PutBucketAclOutput

type PutBucketAclOutput struct {
	// contains filtered or unexported fields
}

func (PutBucketAclOutput) GoString

func (s PutBucketAclOutput) GoString() string

GoString returns the string representation

func (PutBucketAclOutput) String

func (s PutBucketAclOutput) String() string

String returns the string representation

type PutBucketCorsInput

type PutBucketCorsInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	CORSConfiguration *CORSConfiguration `locationName:"CORSConfiguration" type:"structure" required:"true"`
	// contains filtered or unexported fields
}

func (PutBucketCorsInput) GoString

func (s PutBucketCorsInput) GoString() string

GoString returns the string representation

func (PutBucketCorsInput) String

func (s PutBucketCorsInput) String() string

String returns the string representation

type PutBucketCorsOutput

type PutBucketCorsOutput struct {
	// contains filtered or unexported fields
}

func (PutBucketCorsOutput) GoString

func (s PutBucketCorsOutput) GoString() string

GoString returns the string representation

func (PutBucketCorsOutput) String

func (s PutBucketCorsOutput) String() string

String returns the string representation

type PutBucketLifecycleConfigurationInput

type PutBucketLifecycleConfigurationInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	LifecycleConfiguration *BucketLifecycleConfiguration `locationName:"LifecycleConfiguration" type:"structure"`
	// contains filtered or unexported fields
}

func (PutBucketLifecycleConfigurationInput) GoString

GoString returns the string representation

func (PutBucketLifecycleConfigurationInput) String

String returns the string representation

type PutBucketLifecycleConfigurationOutput

type PutBucketLifecycleConfigurationOutput struct {
	// contains filtered or unexported fields
}

func (PutBucketLifecycleConfigurationOutput) GoString

GoString returns the string representation

func (PutBucketLifecycleConfigurationOutput) String

String returns the string representation

type PutBucketLifecycleInput

type PutBucketLifecycleInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	LifecycleConfiguration *LifecycleConfiguration `locationName:"LifecycleConfiguration" type:"structure"`
	// contains filtered or unexported fields
}

func (PutBucketLifecycleInput) GoString

func (s PutBucketLifecycleInput) GoString() string

GoString returns the string representation

func (PutBucketLifecycleInput) String

func (s PutBucketLifecycleInput) String() string

String returns the string representation

type PutBucketLifecycleOutput

type PutBucketLifecycleOutput struct {
	// contains filtered or unexported fields
}

func (PutBucketLifecycleOutput) GoString

func (s PutBucketLifecycleOutput) GoString() string

GoString returns the string representation

func (PutBucketLifecycleOutput) String

func (s PutBucketLifecycleOutput) String() string

String returns the string representation

type PutBucketLoggingInput

type PutBucketLoggingInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	BucketLoggingStatus *BucketLoggingStatus `locationName:"BucketLoggingStatus" type:"structure" required:"true"`
	// contains filtered or unexported fields
}

func (PutBucketLoggingInput) GoString

func (s PutBucketLoggingInput) GoString() string

GoString returns the string representation

func (PutBucketLoggingInput) String

func (s PutBucketLoggingInput) String() string

String returns the string representation

type PutBucketLoggingOutput

type PutBucketLoggingOutput struct {
	// contains filtered or unexported fields
}

func (PutBucketLoggingOutput) GoString

func (s PutBucketLoggingOutput) GoString() string

GoString returns the string representation

func (PutBucketLoggingOutput) String

func (s PutBucketLoggingOutput) String() string

String returns the string representation

type PutBucketNotificationConfigurationInput

type PutBucketNotificationConfigurationInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	// Container for specifying the notification configuration of the bucket. If
	// this element is empty, notifications are turned off on the bucket.
	NotificationConfiguration *NotificationConfiguration `locationName:"NotificationConfiguration" type:"structure" required:"true"`
	// contains filtered or unexported fields
}

func (PutBucketNotificationConfigurationInput) GoString

GoString returns the string representation

func (PutBucketNotificationConfigurationInput) String

String returns the string representation

type PutBucketNotificationConfigurationOutput

type PutBucketNotificationConfigurationOutput struct {
	// contains filtered or unexported fields
}

func (PutBucketNotificationConfigurationOutput) GoString

GoString returns the string representation

func (PutBucketNotificationConfigurationOutput) String

String returns the string representation

type PutBucketNotificationInput

type PutBucketNotificationInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	NotificationConfiguration *NotificationConfigurationDeprecated `locationName:"NotificationConfiguration" type:"structure" required:"true"`
	// contains filtered or unexported fields
}

func (PutBucketNotificationInput) GoString

func (s PutBucketNotificationInput) GoString() string

GoString returns the string representation

func (PutBucketNotificationInput) String

String returns the string representation

type PutBucketNotificationOutput

type PutBucketNotificationOutput struct {
	// contains filtered or unexported fields
}

func (PutBucketNotificationOutput) GoString

func (s PutBucketNotificationOutput) GoString() string

GoString returns the string representation

func (PutBucketNotificationOutput) String

String returns the string representation

type PutBucketPolicyInput

type PutBucketPolicyInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	// The bucket policy as a JSON document.
	Policy *string `type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (PutBucketPolicyInput) GoString

func (s PutBucketPolicyInput) GoString() string

GoString returns the string representation

func (PutBucketPolicyInput) String

func (s PutBucketPolicyInput) String() string

String returns the string representation

type PutBucketPolicyOutput

type PutBucketPolicyOutput struct {
	// contains filtered or unexported fields
}

func (PutBucketPolicyOutput) GoString

func (s PutBucketPolicyOutput) GoString() string

GoString returns the string representation

func (PutBucketPolicyOutput) String

func (s PutBucketPolicyOutput) String() string

String returns the string representation

type PutBucketReplicationInput

type PutBucketReplicationInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	// Container for replication rules. You can add as many as 1,000 rules. Total
	// replication configuration size can be up to 2 MB.
	ReplicationConfiguration *ReplicationConfiguration `locationName:"ReplicationConfiguration" type:"structure" required:"true"`
	// contains filtered or unexported fields
}

func (PutBucketReplicationInput) GoString

func (s PutBucketReplicationInput) GoString() string

GoString returns the string representation

func (PutBucketReplicationInput) String

func (s PutBucketReplicationInput) String() string

String returns the string representation

type PutBucketReplicationOutput

type PutBucketReplicationOutput struct {
	// contains filtered or unexported fields
}

func (PutBucketReplicationOutput) GoString

func (s PutBucketReplicationOutput) GoString() string

GoString returns the string representation

func (PutBucketReplicationOutput) String

String returns the string representation

type PutBucketRequestPaymentInput

type PutBucketRequestPaymentInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	RequestPaymentConfiguration *RequestPaymentConfiguration `locationName:"RequestPaymentConfiguration" type:"structure" required:"true"`
	// contains filtered or unexported fields
}

func (PutBucketRequestPaymentInput) GoString

func (s PutBucketRequestPaymentInput) GoString() string

GoString returns the string representation

func (PutBucketRequestPaymentInput) String

String returns the string representation

type PutBucketRequestPaymentOutput

type PutBucketRequestPaymentOutput struct {
	// contains filtered or unexported fields
}

func (PutBucketRequestPaymentOutput) GoString

GoString returns the string representation

func (PutBucketRequestPaymentOutput) String

String returns the string representation

type PutBucketTaggingInput

type PutBucketTaggingInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	Tagging *Tagging `locationName:"Tagging" type:"structure" required:"true"`
	// contains filtered or unexported fields
}

func (PutBucketTaggingInput) GoString

func (s PutBucketTaggingInput) GoString() string

GoString returns the string representation

func (PutBucketTaggingInput) String

func (s PutBucketTaggingInput) String() string

String returns the string representation

type PutBucketTaggingOutput

type PutBucketTaggingOutput struct {
	// contains filtered or unexported fields
}

func (PutBucketTaggingOutput) GoString

func (s PutBucketTaggingOutput) GoString() string

GoString returns the string representation

func (PutBucketTaggingOutput) String

func (s PutBucketTaggingOutput) String() string

String returns the string representation

type PutBucketVersioningInput

type PutBucketVersioningInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	// The concatenation of the authentication device's serial number, a space,
	// and the value that is displayed on your authentication device.
	MFA *string `location:"header" locationName:"x-amz-mfa" type:"string"`

	VersioningConfiguration *VersioningConfiguration `locationName:"VersioningConfiguration" type:"structure" required:"true"`
	// contains filtered or unexported fields
}

func (PutBucketVersioningInput) GoString

func (s PutBucketVersioningInput) GoString() string

GoString returns the string representation

func (PutBucketVersioningInput) String

func (s PutBucketVersioningInput) String() string

String returns the string representation

type PutBucketVersioningOutput

type PutBucketVersioningOutput struct {
	// contains filtered or unexported fields
}

func (PutBucketVersioningOutput) GoString

func (s PutBucketVersioningOutput) GoString() string

GoString returns the string representation

func (PutBucketVersioningOutput) String

func (s PutBucketVersioningOutput) String() string

String returns the string representation

type PutBucketWebsiteInput

type PutBucketWebsiteInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	WebsiteConfiguration *WebsiteConfiguration `locationName:"WebsiteConfiguration" type:"structure" required:"true"`
	// contains filtered or unexported fields
}

func (PutBucketWebsiteInput) GoString

func (s PutBucketWebsiteInput) GoString() string

GoString returns the string representation

func (PutBucketWebsiteInput) String

func (s PutBucketWebsiteInput) String() string

String returns the string representation

type PutBucketWebsiteOutput

type PutBucketWebsiteOutput struct {
	// contains filtered or unexported fields
}

func (PutBucketWebsiteOutput) GoString

func (s PutBucketWebsiteOutput) GoString() string

GoString returns the string representation

func (PutBucketWebsiteOutput) String

func (s PutBucketWebsiteOutput) String() string

String returns the string representation

type PutObjectAclInput

type PutObjectAclInput struct {
	// The canned ACL to apply to the object.
	ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"ObjectCannedACL"`

	AccessControlPolicy *AccessControlPolicy `locationName:"AccessControlPolicy" type:"structure"`

	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	// Allows grantee the read, write, read ACP, and write ACP permissions on the
	// bucket.
	GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"`

	// Allows grantee to list the objects in the bucket.
	GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"`

	// Allows grantee to read the bucket ACL.
	GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`

	// Allows grantee to create, overwrite, and delete any object in the bucket.
	GrantWrite *string `location:"header" locationName:"x-amz-grant-write" type:"string"`

	// Allows grantee to write the ACL for the applicable bucket.
	GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"`

	Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`

	// Confirms that the requester knows that she or he will be charged for the
	// request. Bucket owners need not specify this parameter in their requests.
	// Documentation on downloading objects from requester pays buckets can be found
	// at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
	RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`
	// contains filtered or unexported fields
}

func (PutObjectAclInput) GoString

func (s PutObjectAclInput) GoString() string

GoString returns the string representation

func (PutObjectAclInput) String

func (s PutObjectAclInput) String() string

String returns the string representation

type PutObjectAclOutput

type PutObjectAclOutput struct {
	// If present, indicates that the requester was successfully charged for the
	// request.
	RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
	// contains filtered or unexported fields
}

func (PutObjectAclOutput) GoString

func (s PutObjectAclOutput) GoString() string

GoString returns the string representation

func (PutObjectAclOutput) String

func (s PutObjectAclOutput) String() string

String returns the string representation

type PutObjectInput

type PutObjectInput struct {
	// The canned ACL to apply to the object.
	ACL *string `location:"header" locationName:"x-amz-acl" type:"string" enum:"ObjectCannedACL"`

	// Object data.
	Body io.ReadSeeker `type:"blob"`

	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	// Specifies caching behavior along the request/reply chain.
	CacheControl *string `location:"header" locationName:"Cache-Control" type:"string"`

	// Specifies presentational information for the object.
	ContentDisposition *string `location:"header" locationName:"Content-Disposition" type:"string"`

	// Specifies what content encodings have been applied to the object and thus
	// what decoding mechanisms must be applied to obtain the media-type referenced
	// by the Content-Type header field.
	ContentEncoding *string `location:"header" locationName:"Content-Encoding" type:"string"`

	// The language the content is in.
	ContentLanguage *string `location:"header" locationName:"Content-Language" type:"string"`

	// Size of the body in bytes. This parameter is useful when the size of the
	// body cannot be determined automatically.
	ContentLength *int64 `location:"header" locationName:"Content-Length" type:"integer"`

	// A standard MIME type describing the format of the object data.
	ContentType *string `location:"header" locationName:"Content-Type" type:"string"`

	// The date and time at which the object is no longer cacheable.
	Expires *time.Time `location:"header" locationName:"Expires" type:"timestamp" timestampFormat:"rfc822"`

	// Gives the grantee READ, READ_ACP, and WRITE_ACP permissions on the object.
	GrantFullControl *string `location:"header" locationName:"x-amz-grant-full-control" type:"string"`

	// Allows grantee to read the object data and its metadata.
	GrantRead *string `location:"header" locationName:"x-amz-grant-read" type:"string"`

	// Allows grantee to read the object ACL.
	GrantReadACP *string `location:"header" locationName:"x-amz-grant-read-acp" type:"string"`

	// Allows grantee to write the ACL for the applicable object.
	GrantWriteACP *string `location:"header" locationName:"x-amz-grant-write-acp" type:"string"`

	Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`

	// A map of metadata to store with the object in S3.
	Metadata map[string]*string `location:"headers" locationName:"x-amz-meta-" type:"map"`

	// Confirms that the requester knows that she or he will be charged for the
	// request. Bucket owners need not specify this parameter in their requests.
	// Documentation on downloading objects from requester pays buckets can be found
	// at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
	RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`

	// Specifies the algorithm to use to when encrypting the object (e.g., AES256).
	SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`

	// Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
	// data. This value is used to store the object and then it is discarded; Amazon
	// does not store the encryption key. The key must be appropriate for use with
	// the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
	// header.
	SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"`

	// Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
	// Amazon S3 uses this header for a message integrity check to ensure the encryption
	// key was transmitted without error.
	SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`

	// Specifies the AWS KMS key ID to use for object encryption. All GET and PUT
	// requests for an object protected by AWS KMS will fail if not made via SSL
	// or using SigV4. Documentation on configuring any of the officially supported
	// AWS SDKs and CLI can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/UsingAWSSDK.html#specify-signature-version
	SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`

	// The Server-side encryption algorithm used when storing this object in S3
	// (e.g., AES256, aws:kms).
	ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`

	// The type of storage to use for the object. Defaults to 'STANDARD'.
	StorageClass *string `location:"header" locationName:"x-amz-storage-class" type:"string" enum:"StorageClass"`

	// 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.
	WebsiteRedirectLocation *string `location:"header" locationName:"x-amz-website-redirect-location" type:"string"`
	// contains filtered or unexported fields
}

func (PutObjectInput) GoString

func (s PutObjectInput) GoString() string

GoString returns the string representation

func (PutObjectInput) String

func (s PutObjectInput) String() string

String returns the string representation

type PutObjectOutput

type PutObjectOutput struct {
	// Entity tag for the uploaded object.
	ETag *string `location:"header" locationName:"ETag" type:"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.
	Expiration *string `location:"header" locationName:"x-amz-expiration" type:"string"`

	// If present, indicates that the requester was successfully charged for the
	// request.
	RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`

	// If server-side encryption with a customer-provided encryption key was requested,
	// the response will include this header confirming the encryption algorithm
	// used.
	SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`

	// If server-side encryption with a customer-provided encryption key was requested,
	// the response will include this header to provide round trip message integrity
	// verification of the customer-provided encryption key.
	SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`

	// If present, specifies the ID of the AWS Key Management Service (KMS) master
	// encryption key that was used for the object.
	SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`

	// The Server-side encryption algorithm used when storing this object in S3
	// (e.g., AES256, aws:kms).
	ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`

	// Version of the object.
	VersionId *string `location:"header" locationName:"x-amz-version-id" type:"string"`
	// contains filtered or unexported fields
}

func (PutObjectOutput) GoString

func (s PutObjectOutput) GoString() string

GoString returns the string representation

func (PutObjectOutput) String

func (s PutObjectOutput) String() string

String returns the string representation

type QueueConfiguration

type QueueConfiguration struct {
	Events []*string `locationName:"Event" type:"list" flattened:"true" required:"true"`

	// Container for object key name filtering rules. For information about key
	// name filtering, go to Configuring Event Notifications (http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html)
	// in the Amazon Simple Storage Service Developer Guide.
	Filter *NotificationConfigurationFilter `type:"structure"`

	// Optional unique identifier for configurations in a notification configuration.
	// If you don't provide one, Amazon S3 will assign an ID.
	Id *string `type:"string"`

	// Amazon SQS queue ARN to which Amazon S3 will publish a message when it detects
	// events of specified type.
	QueueArn *string `locationName:"Queue" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Container for specifying an configuration when you want Amazon S3 to publish events to an Amazon Simple Queue Service (Amazon SQS) queue.

func (QueueConfiguration) GoString

func (s QueueConfiguration) GoString() string

GoString returns the string representation

func (QueueConfiguration) String

func (s QueueConfiguration) String() string

String returns the string representation

type QueueConfigurationDeprecated

type QueueConfigurationDeprecated struct {
	// Bucket event for which to send notifications.
	Event *string `type:"string" enum:"Event"`

	Events []*string `locationName:"Event" type:"list" flattened:"true"`

	// Optional unique identifier for configurations in a notification configuration.
	// If you don't provide one, Amazon S3 will assign an ID.
	Id *string `type:"string"`

	Queue *string `type:"string"`
	// contains filtered or unexported fields
}

func (QueueConfigurationDeprecated) GoString

func (s QueueConfigurationDeprecated) GoString() string

GoString returns the string representation

func (QueueConfigurationDeprecated) String

String returns the string representation

type Redirect

type Redirect struct {
	// The host name to use in the redirect request.
	HostName *string `type:"string"`

	// The HTTP redirect code to use on the response. Not required if one of the
	// siblings is present.
	HttpRedirectCode *string `type:"string"`

	// Protocol to use (http, https) when redirecting requests. The default is the
	// protocol that is used in the original request.
	Protocol *string `type:"string" enum:"Protocol"`

	// The object key prefix to use in the redirect request. For example, to redirect
	// requests for all pages with prefix docs/ (objects in the docs/ folder) to
	// documents/, you can set a condition block with KeyPrefixEquals set to docs/
	// and in the Redirect set ReplaceKeyPrefixWith to /documents. Not required
	// if one of the siblings is present. Can be present only if ReplaceKeyWith
	// is not provided.
	ReplaceKeyPrefixWith *string `type:"string"`

	// The specific object key to use in the redirect request. For example, redirect
	// request to error.html. Not required if one of the sibling is present. Can
	// be present only if ReplaceKeyPrefixWith is not provided.
	ReplaceKeyWith *string `type:"string"`
	// contains filtered or unexported fields
}

func (Redirect) GoString

func (s Redirect) GoString() string

GoString returns the string representation

func (Redirect) String

func (s Redirect) String() string

String returns the string representation

type RedirectAllRequestsTo

type RedirectAllRequestsTo struct {
	// Name of the host where requests will be redirected.
	HostName *string `type:"string" required:"true"`

	// Protocol to use (http, https) when redirecting requests. The default is the
	// protocol that is used in the original request.
	Protocol *string `type:"string" enum:"Protocol"`
	// contains filtered or unexported fields
}

func (RedirectAllRequestsTo) GoString

func (s RedirectAllRequestsTo) GoString() string

GoString returns the string representation

func (RedirectAllRequestsTo) String

func (s RedirectAllRequestsTo) String() string

String returns the string representation

type ReplicationConfiguration

type ReplicationConfiguration struct {
	// Amazon Resource Name (ARN) of an IAM role for Amazon S3 to assume when replicating
	// the objects.
	Role *string `type:"string" required:"true"`

	// Container for information about a particular replication rule. Replication
	// configuration must have at least one rule and can contain up to 1,000 rules.
	Rules []*ReplicationRule `locationName:"Rule" type:"list" flattened:"true" required:"true"`
	// contains filtered or unexported fields
}

Container for replication rules. You can add as many as 1,000 rules. Total replication configuration size can be up to 2 MB.

func (ReplicationConfiguration) GoString

func (s ReplicationConfiguration) GoString() string

GoString returns the string representation

func (ReplicationConfiguration) String

func (s ReplicationConfiguration) String() string

String returns the string representation

type ReplicationRule

type ReplicationRule struct {
	Destination *Destination `type:"structure" required:"true"`

	// Unique identifier for the rule. The value cannot be longer than 255 characters.
	ID *string `type:"string"`

	// Object keyname prefix identifying one or more objects to which the rule applies.
	// Maximum prefix length can be up to 1,024 characters. Overlapping prefixes
	// are not supported.
	Prefix *string `type:"string" required:"true"`

	// The rule is ignored if status is not Enabled.
	Status *string `type:"string" required:"true" enum:"ReplicationRuleStatus"`
	// contains filtered or unexported fields
}

func (ReplicationRule) GoString

func (s ReplicationRule) GoString() string

GoString returns the string representation

func (ReplicationRule) String

func (s ReplicationRule) String() string

String returns the string representation

type RequestPaymentConfiguration

type RequestPaymentConfiguration struct {
	// Specifies who pays for the download and request fees.
	Payer *string `type:"string" required:"true" enum:"Payer"`
	// contains filtered or unexported fields
}

func (RequestPaymentConfiguration) GoString

func (s RequestPaymentConfiguration) GoString() string

GoString returns the string representation

func (RequestPaymentConfiguration) String

String returns the string representation

type RestoreObjectInput

type RestoreObjectInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`

	// Confirms that the requester knows that she or he will be charged for the
	// request. Bucket owners need not specify this parameter in their requests.
	// Documentation on downloading objects from requester pays buckets can be found
	// at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
	RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`

	RestoreRequest *RestoreRequest `locationName:"RestoreRequest" type:"structure"`

	VersionId *string `location:"querystring" locationName:"versionId" type:"string"`
	// contains filtered or unexported fields
}

func (RestoreObjectInput) GoString

func (s RestoreObjectInput) GoString() string

GoString returns the string representation

func (RestoreObjectInput) String

func (s RestoreObjectInput) String() string

String returns the string representation

type RestoreObjectOutput

type RestoreObjectOutput struct {
	// If present, indicates that the requester was successfully charged for the
	// request.
	RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`
	// contains filtered or unexported fields
}

func (RestoreObjectOutput) GoString

func (s RestoreObjectOutput) GoString() string

GoString returns the string representation

func (RestoreObjectOutput) String

func (s RestoreObjectOutput) String() string

String returns the string representation

type RestoreRequest

type RestoreRequest struct {
	// Lifetime of the active copy in days
	Days *int64 `type:"integer" required:"true"`
	// contains filtered or unexported fields
}

func (RestoreRequest) GoString

func (s RestoreRequest) GoString() string

GoString returns the string representation

func (RestoreRequest) String

func (s RestoreRequest) String() string

String returns the string representation

type RoutingRule

type RoutingRule struct {
	// A container for describing a condition that must be met for the specified
	// redirect to apply. For example, 1. If request is for pages in the /docs folder,
	// redirect to the /documents folder. 2. If request results in HTTP error 4xx,
	// redirect request to another host where you might process the error.
	Condition *Condition `type:"structure"`

	// Container for redirect information. You can redirect requests to another
	// host, to another page, or with another protocol. In the event of an error,
	// you can can specify a different error code to return.
	Redirect *Redirect `type:"structure" required:"true"`
	// contains filtered or unexported fields
}

func (RoutingRule) GoString

func (s RoutingRule) GoString() string

GoString returns the string representation

func (RoutingRule) String

func (s RoutingRule) String() string

String returns the string representation

type Rule

type Rule struct {
	Expiration *LifecycleExpiration `type:"structure"`

	// Unique identifier for the rule. The value cannot be longer than 255 characters.
	ID *string `type:"string"`

	// Specifies when noncurrent object versions expire. Upon expiration, Amazon
	// S3 permanently deletes the noncurrent object versions. You set this lifecycle
	// configuration action on a bucket that has versioning enabled (or suspended)
	// to request that Amazon S3 delete noncurrent object versions at a specific
	// period in the object's lifetime.
	NoncurrentVersionExpiration *NoncurrentVersionExpiration `type:"structure"`

	// Container for the transition rule that describes when noncurrent objects
	// transition to the STANDARD_IA or GLACIER storage class. If your bucket is
	// versioning-enabled (or versioning is suspended), you can set this action
	// to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA
	// or GLACIER storage class at a specific period in the object's lifetime.
	NoncurrentVersionTransition *NoncurrentVersionTransition `type:"structure"`

	// Prefix identifying one or more objects to which the rule applies.
	Prefix *string `type:"string" required:"true"`

	// If 'Enabled', the rule is currently being applied. If 'Disabled', the rule
	// is not currently being applied.
	Status *string `type:"string" required:"true" enum:"ExpirationStatus"`

	Transition *Transition `type:"structure"`
	// contains filtered or unexported fields
}

func (Rule) GoString

func (s Rule) GoString() string

GoString returns the string representation

func (Rule) String

func (s Rule) String() string

String returns the string representation

type S3

type S3 struct {
	*client.Client
}

S3 is a client for Amazon S3. The service client's operations are safe to be used concurrently. It is not safe to mutate any of the client's properties though.

func New

func New(p client.ConfigProvider, cfgs ...*aws.Config) *S3

New creates a new instance of the S3 client with a session. If additional configuration is needed for the client instance use the optional aws.Config parameter to add your extra config.

Example:

// Create a S3 client from just a session.
svc := s3.New(mySession)

// Create a S3 client with additional configuration
svc := s3.New(mySession, aws.NewConfig().WithRegion("us-west-2"))

func (*S3) AbortMultipartUpload

func (c *S3) AbortMultipartUpload(input *AbortMultipartUploadInput) (*AbortMultipartUploadOutput, error)

Aborts a multipart upload.

To verify that all parts have been removed, so you don't get charged for the part storage, you should call the List Parts operation and ensure the parts list is empty.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.AbortMultipartUploadInput{
		Bucket:       aws.String("BucketName"),        // Required
		Key:          aws.String("ObjectKey"),         // Required
		UploadId:     aws.String("MultipartUploadId"), // Required
		RequestPayer: aws.String("RequestPayer"),
	}
	resp, err := svc.AbortMultipartUpload(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) AbortMultipartUploadRequest

func (c *S3) AbortMultipartUploadRequest(input *AbortMultipartUploadInput) (req *request.Request, output *AbortMultipartUploadOutput)

AbortMultipartUploadRequest generates a request for the AbortMultipartUpload operation.

func (*S3) CompleteMultipartUpload

func (c *S3) CompleteMultipartUpload(input *CompleteMultipartUploadInput) (*CompleteMultipartUploadOutput, error)

Completes a multipart upload by assembling previously uploaded parts.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.CompleteMultipartUploadInput{
		Bucket:   aws.String("BucketName"),        // Required
		Key:      aws.String("ObjectKey"),         // Required
		UploadId: aws.String("MultipartUploadId"), // Required
		MultipartUpload: &s3.CompletedMultipartUpload{
			Parts: []*s3.CompletedPart{
				{ // Required
					ETag:       aws.String("ETag"),
					PartNumber: aws.Int64(1),
				},
				// More values...
			},
		},
		RequestPayer: aws.String("RequestPayer"),
	}
	resp, err := svc.CompleteMultipartUpload(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) CompleteMultipartUploadRequest

func (c *S3) CompleteMultipartUploadRequest(input *CompleteMultipartUploadInput) (req *request.Request, output *CompleteMultipartUploadOutput)

CompleteMultipartUploadRequest generates a request for the CompleteMultipartUpload operation.

func (*S3) CopyObject

func (c *S3) CopyObject(input *CopyObjectInput) (*CopyObjectOutput, error)

Creates a copy of an object that is already stored in Amazon S3.

Example
package main

import (
	"fmt"
	"time"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.CopyObjectInput{
		Bucket:                         aws.String("BucketName"), // Required
		CopySource:                     aws.String("CopySource"), // Required
		Key:                            aws.String("ObjectKey"),  // Required
		ACL:                            aws.String("ObjectCannedACL"),
		CacheControl:                   aws.String("CacheControl"),
		ContentDisposition:             aws.String("ContentDisposition"),
		ContentEncoding:                aws.String("ContentEncoding"),
		ContentLanguage:                aws.String("ContentLanguage"),
		ContentType:                    aws.String("ContentType"),
		CopySourceIfMatch:              aws.String("CopySourceIfMatch"),
		CopySourceIfModifiedSince:      aws.Time(time.Now()),
		CopySourceIfNoneMatch:          aws.String("CopySourceIfNoneMatch"),
		CopySourceIfUnmodifiedSince:    aws.Time(time.Now()),
		CopySourceSSECustomerAlgorithm: aws.String("CopySourceSSECustomerAlgorithm"),
		CopySourceSSECustomerKey:       aws.String("CopySourceSSECustomerKey"),
		CopySourceSSECustomerKeyMD5:    aws.String("CopySourceSSECustomerKeyMD5"),
		Expires:                        aws.Time(time.Now()),
		GrantFullControl:               aws.String("GrantFullControl"),
		GrantRead:                      aws.String("GrantRead"),
		GrantReadACP:                   aws.String("GrantReadACP"),
		GrantWriteACP:                  aws.String("GrantWriteACP"),
		Metadata: map[string]*string{
			"Key": aws.String("MetadataValue"), // Required
			// More values...
		},
		MetadataDirective:       aws.String("MetadataDirective"),
		RequestPayer:            aws.String("RequestPayer"),
		SSECustomerAlgorithm:    aws.String("SSECustomerAlgorithm"),
		SSECustomerKey:          aws.String("SSECustomerKey"),
		SSECustomerKeyMD5:       aws.String("SSECustomerKeyMD5"),
		SSEKMSKeyId:             aws.String("SSEKMSKeyId"),
		ServerSideEncryption:    aws.String("ServerSideEncryption"),
		StorageClass:            aws.String("StorageClass"),
		WebsiteRedirectLocation: aws.String("WebsiteRedirectLocation"),
	}
	resp, err := svc.CopyObject(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) CopyObjectRequest

func (c *S3) CopyObjectRequest(input *CopyObjectInput) (req *request.Request, output *CopyObjectOutput)

CopyObjectRequest generates a request for the CopyObject operation.

func (*S3) CreateBucket

func (c *S3) CreateBucket(input *CreateBucketInput) (*CreateBucketOutput, error)

Creates a new bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.CreateBucketInput{
		Bucket: aws.String("BucketName"), // Required
		ACL:    aws.String("BucketCannedACL"),
		CreateBucketConfiguration: &s3.CreateBucketConfiguration{
			LocationConstraint: aws.String("BucketLocationConstraint"),
		},
		GrantFullControl: aws.String("GrantFullControl"),
		GrantRead:        aws.String("GrantRead"),
		GrantReadACP:     aws.String("GrantReadACP"),
		GrantWrite:       aws.String("GrantWrite"),
		GrantWriteACP:    aws.String("GrantWriteACP"),
	}
	resp, err := svc.CreateBucket(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) CreateBucketRequest

func (c *S3) CreateBucketRequest(input *CreateBucketInput) (req *request.Request, output *CreateBucketOutput)

CreateBucketRequest generates a request for the CreateBucket operation.

func (*S3) CreateMultipartUpload

func (c *S3) CreateMultipartUpload(input *CreateMultipartUploadInput) (*CreateMultipartUploadOutput, error)

Initiates a multipart upload and returns an upload ID.

Note: After you initiate multipart upload and upload one or more parts, you must either complete or abort multipart upload in order to stop getting charged for storage of the uploaded parts. Only after you either complete or abort multipart upload, Amazon S3 frees up the parts storage and stops charging you for the parts storage.

Example
package main

import (
	"fmt"
	"time"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.CreateMultipartUploadInput{
		Bucket:             aws.String("BucketName"), // Required
		Key:                aws.String("ObjectKey"),  // Required
		ACL:                aws.String("ObjectCannedACL"),
		CacheControl:       aws.String("CacheControl"),
		ContentDisposition: aws.String("ContentDisposition"),
		ContentEncoding:    aws.String("ContentEncoding"),
		ContentLanguage:    aws.String("ContentLanguage"),
		ContentType:        aws.String("ContentType"),
		Expires:            aws.Time(time.Now()),
		GrantFullControl:   aws.String("GrantFullControl"),
		GrantRead:          aws.String("GrantRead"),
		GrantReadACP:       aws.String("GrantReadACP"),
		GrantWriteACP:      aws.String("GrantWriteACP"),
		Metadata: map[string]*string{
			"Key": aws.String("MetadataValue"), // Required
			// More values...
		},
		RequestPayer:            aws.String("RequestPayer"),
		SSECustomerAlgorithm:    aws.String("SSECustomerAlgorithm"),
		SSECustomerKey:          aws.String("SSECustomerKey"),
		SSECustomerKeyMD5:       aws.String("SSECustomerKeyMD5"),
		SSEKMSKeyId:             aws.String("SSEKMSKeyId"),
		ServerSideEncryption:    aws.String("ServerSideEncryption"),
		StorageClass:            aws.String("StorageClass"),
		WebsiteRedirectLocation: aws.String("WebsiteRedirectLocation"),
	}
	resp, err := svc.CreateMultipartUpload(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) CreateMultipartUploadRequest

func (c *S3) CreateMultipartUploadRequest(input *CreateMultipartUploadInput) (req *request.Request, output *CreateMultipartUploadOutput)

CreateMultipartUploadRequest generates a request for the CreateMultipartUpload operation.

func (*S3) DeleteBucket

func (c *S3) DeleteBucket(input *DeleteBucketInput) (*DeleteBucketOutput, error)

Deletes the bucket. All objects (including all object versions and Delete Markers) in the bucket must be deleted before the bucket itself can be deleted.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.DeleteBucketInput{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.DeleteBucket(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) DeleteBucketCors

func (c *S3) DeleteBucketCors(input *DeleteBucketCorsInput) (*DeleteBucketCorsOutput, error)

Deletes the cors configuration information set for the bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.DeleteBucketCorsInput{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.DeleteBucketCors(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) DeleteBucketCorsRequest

func (c *S3) DeleteBucketCorsRequest(input *DeleteBucketCorsInput) (req *request.Request, output *DeleteBucketCorsOutput)

DeleteBucketCorsRequest generates a request for the DeleteBucketCors operation.

func (*S3) DeleteBucketLifecycle

func (c *S3) DeleteBucketLifecycle(input *DeleteBucketLifecycleInput) (*DeleteBucketLifecycleOutput, error)

Deletes the lifecycle configuration from the bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.DeleteBucketLifecycleInput{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.DeleteBucketLifecycle(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) DeleteBucketLifecycleRequest

func (c *S3) DeleteBucketLifecycleRequest(input *DeleteBucketLifecycleInput) (req *request.Request, output *DeleteBucketLifecycleOutput)

DeleteBucketLifecycleRequest generates a request for the DeleteBucketLifecycle operation.

func (*S3) DeleteBucketPolicy

func (c *S3) DeleteBucketPolicy(input *DeleteBucketPolicyInput) (*DeleteBucketPolicyOutput, error)

Deletes the policy from the bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.DeleteBucketPolicyInput{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.DeleteBucketPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) DeleteBucketPolicyRequest

func (c *S3) DeleteBucketPolicyRequest(input *DeleteBucketPolicyInput) (req *request.Request, output *DeleteBucketPolicyOutput)

DeleteBucketPolicyRequest generates a request for the DeleteBucketPolicy operation.

func (*S3) DeleteBucketReplication

func (c *S3) DeleteBucketReplication(input *DeleteBucketReplicationInput) (*DeleteBucketReplicationOutput, error)
Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.DeleteBucketReplicationInput{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.DeleteBucketReplication(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) DeleteBucketReplicationRequest

func (c *S3) DeleteBucketReplicationRequest(input *DeleteBucketReplicationInput) (req *request.Request, output *DeleteBucketReplicationOutput)

DeleteBucketReplicationRequest generates a request for the DeleteBucketReplication operation.

func (*S3) DeleteBucketRequest

func (c *S3) DeleteBucketRequest(input *DeleteBucketInput) (req *request.Request, output *DeleteBucketOutput)

DeleteBucketRequest generates a request for the DeleteBucket operation.

func (*S3) DeleteBucketTagging

func (c *S3) DeleteBucketTagging(input *DeleteBucketTaggingInput) (*DeleteBucketTaggingOutput, error)

Deletes the tags from the bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.DeleteBucketTaggingInput{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.DeleteBucketTagging(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) DeleteBucketTaggingRequest

func (c *S3) DeleteBucketTaggingRequest(input *DeleteBucketTaggingInput) (req *request.Request, output *DeleteBucketTaggingOutput)

DeleteBucketTaggingRequest generates a request for the DeleteBucketTagging operation.

func (*S3) DeleteBucketWebsite

func (c *S3) DeleteBucketWebsite(input *DeleteBucketWebsiteInput) (*DeleteBucketWebsiteOutput, error)

This operation removes the website configuration from the bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.DeleteBucketWebsiteInput{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.DeleteBucketWebsite(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) DeleteBucketWebsiteRequest

func (c *S3) DeleteBucketWebsiteRequest(input *DeleteBucketWebsiteInput) (req *request.Request, output *DeleteBucketWebsiteOutput)

DeleteBucketWebsiteRequest generates a request for the DeleteBucketWebsite operation.

func (*S3) DeleteObject

func (c *S3) DeleteObject(input *DeleteObjectInput) (*DeleteObjectOutput, error)

Removes the null version (if there is one) of an object and inserts a delete marker, which becomes the latest version of the object. If there isn't a null version, Amazon S3 does not remove any objects.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.DeleteObjectInput{
		Bucket:       aws.String("BucketName"), // Required
		Key:          aws.String("ObjectKey"),  // Required
		MFA:          aws.String("MFA"),
		RequestPayer: aws.String("RequestPayer"),
		VersionId:    aws.String("ObjectVersionId"),
	}
	resp, err := svc.DeleteObject(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) DeleteObjectRequest

func (c *S3) DeleteObjectRequest(input *DeleteObjectInput) (req *request.Request, output *DeleteObjectOutput)

DeleteObjectRequest generates a request for the DeleteObject operation.

func (*S3) DeleteObjects

func (c *S3) DeleteObjects(input *DeleteObjectsInput) (*DeleteObjectsOutput, error)

This operation enables you to delete multiple objects from a bucket using a single HTTP request. You may specify up to 1000 keys.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.DeleteObjectsInput{
		Bucket: aws.String("BucketName"), // Required
		Delete: &s3.Delete{ // Required
			Objects: []*s3.ObjectIdentifier{ // Required
				{ // Required
					Key:       aws.String("ObjectKey"), // Required
					VersionId: aws.String("ObjectVersionId"),
				},
				// More values...
			},
			Quiet: aws.Bool(true),
		},
		MFA:          aws.String("MFA"),
		RequestPayer: aws.String("RequestPayer"),
	}
	resp, err := svc.DeleteObjects(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) DeleteObjectsRequest

func (c *S3) DeleteObjectsRequest(input *DeleteObjectsInput) (req *request.Request, output *DeleteObjectsOutput)

DeleteObjectsRequest generates a request for the DeleteObjects operation.

func (*S3) GetBucketAcl

func (c *S3) GetBucketAcl(input *GetBucketAclInput) (*GetBucketAclOutput, error)

Gets the access control policy for the bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.GetBucketAclInput{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.GetBucketAcl(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) GetBucketAclRequest

func (c *S3) GetBucketAclRequest(input *GetBucketAclInput) (req *request.Request, output *GetBucketAclOutput)

GetBucketAclRequest generates a request for the GetBucketAcl operation.

func (*S3) GetBucketCors

func (c *S3) GetBucketCors(input *GetBucketCorsInput) (*GetBucketCorsOutput, error)

Returns the cors configuration for the bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.GetBucketCorsInput{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.GetBucketCors(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) GetBucketCorsRequest

func (c *S3) GetBucketCorsRequest(input *GetBucketCorsInput) (req *request.Request, output *GetBucketCorsOutput)

GetBucketCorsRequest generates a request for the GetBucketCors operation.

func (*S3) GetBucketLifecycle

func (c *S3) GetBucketLifecycle(input *GetBucketLifecycleInput) (*GetBucketLifecycleOutput, error)

Deprecated, see the GetBucketLifecycleConfiguration operation.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.GetBucketLifecycleInput{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.GetBucketLifecycle(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) GetBucketLifecycleConfiguration

func (c *S3) GetBucketLifecycleConfiguration(input *GetBucketLifecycleConfigurationInput) (*GetBucketLifecycleConfigurationOutput, error)

Returns the lifecycle configuration information set on the bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.GetBucketLifecycleConfigurationInput{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.GetBucketLifecycleConfiguration(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) GetBucketLifecycleConfigurationRequest

func (c *S3) GetBucketLifecycleConfigurationRequest(input *GetBucketLifecycleConfigurationInput) (req *request.Request, output *GetBucketLifecycleConfigurationOutput)

GetBucketLifecycleConfigurationRequest generates a request for the GetBucketLifecycleConfiguration operation.

func (*S3) GetBucketLifecycleRequest

func (c *S3) GetBucketLifecycleRequest(input *GetBucketLifecycleInput) (req *request.Request, output *GetBucketLifecycleOutput)

GetBucketLifecycleRequest generates a request for the GetBucketLifecycle operation.

func (*S3) GetBucketLocation

func (c *S3) GetBucketLocation(input *GetBucketLocationInput) (*GetBucketLocationOutput, error)

Returns the region the bucket resides in.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.GetBucketLocationInput{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.GetBucketLocation(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) GetBucketLocationRequest

func (c *S3) GetBucketLocationRequest(input *GetBucketLocationInput) (req *request.Request, output *GetBucketLocationOutput)

GetBucketLocationRequest generates a request for the GetBucketLocation operation.

func (*S3) GetBucketLogging

func (c *S3) GetBucketLogging(input *GetBucketLoggingInput) (*GetBucketLoggingOutput, error)

Returns the logging status of a bucket and the permissions users have to view and modify that status. To use GET, you must be the bucket owner.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.GetBucketLoggingInput{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.GetBucketLogging(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) GetBucketLoggingRequest

func (c *S3) GetBucketLoggingRequest(input *GetBucketLoggingInput) (req *request.Request, output *GetBucketLoggingOutput)

GetBucketLoggingRequest generates a request for the GetBucketLogging operation.

func (*S3) GetBucketNotification

Deprecated, see the GetBucketNotificationConfiguration operation.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.GetBucketNotificationConfigurationRequest{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.GetBucketNotification(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) GetBucketNotificationConfiguration

func (c *S3) GetBucketNotificationConfiguration(input *GetBucketNotificationConfigurationRequest) (*NotificationConfiguration, error)

Returns the notification configuration of a bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.GetBucketNotificationConfigurationRequest{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.GetBucketNotificationConfiguration(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) GetBucketNotificationConfigurationRequest

func (c *S3) GetBucketNotificationConfigurationRequest(input *GetBucketNotificationConfigurationRequest) (req *request.Request, output *NotificationConfiguration)

GetBucketNotificationConfigurationRequest generates a request for the GetBucketNotificationConfiguration operation.

func (*S3) GetBucketNotificationRequest

func (c *S3) GetBucketNotificationRequest(input *GetBucketNotificationConfigurationRequest) (req *request.Request, output *NotificationConfigurationDeprecated)

GetBucketNotificationRequest generates a request for the GetBucketNotification operation.

func (*S3) GetBucketPolicy

func (c *S3) GetBucketPolicy(input *GetBucketPolicyInput) (*GetBucketPolicyOutput, error)

Returns the policy of a specified bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.GetBucketPolicyInput{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.GetBucketPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) GetBucketPolicyRequest

func (c *S3) GetBucketPolicyRequest(input *GetBucketPolicyInput) (req *request.Request, output *GetBucketPolicyOutput)

GetBucketPolicyRequest generates a request for the GetBucketPolicy operation.

func (*S3) GetBucketReplication

func (c *S3) GetBucketReplication(input *GetBucketReplicationInput) (*GetBucketReplicationOutput, error)
Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.GetBucketReplicationInput{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.GetBucketReplication(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) GetBucketReplicationRequest

func (c *S3) GetBucketReplicationRequest(input *GetBucketReplicationInput) (req *request.Request, output *GetBucketReplicationOutput)

GetBucketReplicationRequest generates a request for the GetBucketReplication operation.

func (*S3) GetBucketRequestPayment

func (c *S3) GetBucketRequestPayment(input *GetBucketRequestPaymentInput) (*GetBucketRequestPaymentOutput, error)

Returns the request payment configuration of a bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.GetBucketRequestPaymentInput{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.GetBucketRequestPayment(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) GetBucketRequestPaymentRequest

func (c *S3) GetBucketRequestPaymentRequest(input *GetBucketRequestPaymentInput) (req *request.Request, output *GetBucketRequestPaymentOutput)

GetBucketRequestPaymentRequest generates a request for the GetBucketRequestPayment operation.

func (*S3) GetBucketTagging

func (c *S3) GetBucketTagging(input *GetBucketTaggingInput) (*GetBucketTaggingOutput, error)

Returns the tag set associated with the bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.GetBucketTaggingInput{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.GetBucketTagging(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) GetBucketTaggingRequest

func (c *S3) GetBucketTaggingRequest(input *GetBucketTaggingInput) (req *request.Request, output *GetBucketTaggingOutput)

GetBucketTaggingRequest generates a request for the GetBucketTagging operation.

func (*S3) GetBucketVersioning

func (c *S3) GetBucketVersioning(input *GetBucketVersioningInput) (*GetBucketVersioningOutput, error)

Returns the versioning state of a bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.GetBucketVersioningInput{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.GetBucketVersioning(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) GetBucketVersioningRequest

func (c *S3) GetBucketVersioningRequest(input *GetBucketVersioningInput) (req *request.Request, output *GetBucketVersioningOutput)

GetBucketVersioningRequest generates a request for the GetBucketVersioning operation.

func (*S3) GetBucketWebsite

func (c *S3) GetBucketWebsite(input *GetBucketWebsiteInput) (*GetBucketWebsiteOutput, error)

Returns the website configuration for a bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.GetBucketWebsiteInput{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.GetBucketWebsite(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) GetBucketWebsiteRequest

func (c *S3) GetBucketWebsiteRequest(input *GetBucketWebsiteInput) (req *request.Request, output *GetBucketWebsiteOutput)

GetBucketWebsiteRequest generates a request for the GetBucketWebsite operation.

func (*S3) GetObject

func (c *S3) GetObject(input *GetObjectInput) (*GetObjectOutput, error)

Retrieves objects from Amazon S3.

Example
package main

import (
	"fmt"
	"time"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.GetObjectInput{
		Bucket:                     aws.String("BucketName"), // Required
		Key:                        aws.String("ObjectKey"),  // Required
		IfMatch:                    aws.String("IfMatch"),
		IfModifiedSince:            aws.Time(time.Now()),
		IfNoneMatch:                aws.String("IfNoneMatch"),
		IfUnmodifiedSince:          aws.Time(time.Now()),
		Range:                      aws.String("Range"),
		RequestPayer:               aws.String("RequestPayer"),
		ResponseCacheControl:       aws.String("ResponseCacheControl"),
		ResponseContentDisposition: aws.String("ResponseContentDisposition"),
		ResponseContentEncoding:    aws.String("ResponseContentEncoding"),
		ResponseContentLanguage:    aws.String("ResponseContentLanguage"),
		ResponseContentType:        aws.String("ResponseContentType"),
		ResponseExpires:            aws.Time(time.Now()),
		SSECustomerAlgorithm:       aws.String("SSECustomerAlgorithm"),
		SSECustomerKey:             aws.String("SSECustomerKey"),
		SSECustomerKeyMD5:          aws.String("SSECustomerKeyMD5"),
		VersionId:                  aws.String("ObjectVersionId"),
	}
	resp, err := svc.GetObject(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) GetObjectAcl

func (c *S3) GetObjectAcl(input *GetObjectAclInput) (*GetObjectAclOutput, error)

Returns the access control list (ACL) of an object.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.GetObjectAclInput{
		Bucket:       aws.String("BucketName"), // Required
		Key:          aws.String("ObjectKey"),  // Required
		RequestPayer: aws.String("RequestPayer"),
		VersionId:    aws.String("ObjectVersionId"),
	}
	resp, err := svc.GetObjectAcl(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) GetObjectAclRequest

func (c *S3) GetObjectAclRequest(input *GetObjectAclInput) (req *request.Request, output *GetObjectAclOutput)

GetObjectAclRequest generates a request for the GetObjectAcl operation.

func (*S3) GetObjectRequest

func (c *S3) GetObjectRequest(input *GetObjectInput) (req *request.Request, output *GetObjectOutput)

GetObjectRequest generates a request for the GetObject operation.

func (*S3) GetObjectTorrent

func (c *S3) GetObjectTorrent(input *GetObjectTorrentInput) (*GetObjectTorrentOutput, error)

Return torrent files from a bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.GetObjectTorrentInput{
		Bucket:       aws.String("BucketName"), // Required
		Key:          aws.String("ObjectKey"),  // Required
		RequestPayer: aws.String("RequestPayer"),
	}
	resp, err := svc.GetObjectTorrent(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) GetObjectTorrentRequest

func (c *S3) GetObjectTorrentRequest(input *GetObjectTorrentInput) (req *request.Request, output *GetObjectTorrentOutput)

GetObjectTorrentRequest generates a request for the GetObjectTorrent operation.

func (*S3) HeadBucket

func (c *S3) HeadBucket(input *HeadBucketInput) (*HeadBucketOutput, error)

This operation is useful to determine if a bucket exists and you have permission to access it.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.HeadBucketInput{
		Bucket: aws.String("BucketName"), // Required
	}
	resp, err := svc.HeadBucket(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) HeadBucketRequest

func (c *S3) HeadBucketRequest(input *HeadBucketInput) (req *request.Request, output *HeadBucketOutput)

HeadBucketRequest generates a request for the HeadBucket operation.

func (*S3) HeadObject

func (c *S3) HeadObject(input *HeadObjectInput) (*HeadObjectOutput, error)

The HEAD operation retrieves metadata from an object without returning the object itself. This operation is useful if you're only interested in an object's metadata. To use HEAD, you must have READ access to the object.

Example
package main

import (
	"fmt"
	"time"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.HeadObjectInput{
		Bucket:               aws.String("BucketName"), // Required
		Key:                  aws.String("ObjectKey"),  // Required
		IfMatch:              aws.String("IfMatch"),
		IfModifiedSince:      aws.Time(time.Now()),
		IfNoneMatch:          aws.String("IfNoneMatch"),
		IfUnmodifiedSince:    aws.Time(time.Now()),
		Range:                aws.String("Range"),
		RequestPayer:         aws.String("RequestPayer"),
		SSECustomerAlgorithm: aws.String("SSECustomerAlgorithm"),
		SSECustomerKey:       aws.String("SSECustomerKey"),
		SSECustomerKeyMD5:    aws.String("SSECustomerKeyMD5"),
		VersionId:            aws.String("ObjectVersionId"),
	}
	resp, err := svc.HeadObject(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) HeadObjectRequest

func (c *S3) HeadObjectRequest(input *HeadObjectInput) (req *request.Request, output *HeadObjectOutput)

HeadObjectRequest generates a request for the HeadObject operation.

func (*S3) ListBuckets

func (c *S3) ListBuckets(input *ListBucketsInput) (*ListBucketsOutput, error)

Returns a list of all buckets owned by the authenticated sender of the request.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	var params *s3.ListBucketsInput
	resp, err := svc.ListBuckets(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) ListBucketsRequest

func (c *S3) ListBucketsRequest(input *ListBucketsInput) (req *request.Request, output *ListBucketsOutput)

ListBucketsRequest generates a request for the ListBuckets operation.

func (*S3) ListMultipartUploads

func (c *S3) ListMultipartUploads(input *ListMultipartUploadsInput) (*ListMultipartUploadsOutput, error)

This operation lists in-progress multipart uploads.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.ListMultipartUploadsInput{
		Bucket:         aws.String("BucketName"), // Required
		Delimiter:      aws.String("Delimiter"),
		EncodingType:   aws.String("EncodingType"),
		KeyMarker:      aws.String("KeyMarker"),
		MaxUploads:     aws.Int64(1),
		Prefix:         aws.String("Prefix"),
		UploadIdMarker: aws.String("UploadIdMarker"),
	}
	resp, err := svc.ListMultipartUploads(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) ListMultipartUploadsPages

func (c *S3) ListMultipartUploadsPages(input *ListMultipartUploadsInput, fn func(p *ListMultipartUploadsOutput, lastPage bool) (shouldContinue bool)) error

func (*S3) ListMultipartUploadsRequest

func (c *S3) ListMultipartUploadsRequest(input *ListMultipartUploadsInput) (req *request.Request, output *ListMultipartUploadsOutput)

ListMultipartUploadsRequest generates a request for the ListMultipartUploads operation.

func (*S3) ListObjectVersions

func (c *S3) ListObjectVersions(input *ListObjectVersionsInput) (*ListObjectVersionsOutput, error)

Returns metadata about all of the versions of objects in a bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.ListObjectVersionsInput{
		Bucket:          aws.String("BucketName"), // Required
		Delimiter:       aws.String("Delimiter"),
		EncodingType:    aws.String("EncodingType"),
		KeyMarker:       aws.String("KeyMarker"),
		MaxKeys:         aws.Int64(1),
		Prefix:          aws.String("Prefix"),
		VersionIdMarker: aws.String("VersionIdMarker"),
	}
	resp, err := svc.ListObjectVersions(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) ListObjectVersionsPages

func (c *S3) ListObjectVersionsPages(input *ListObjectVersionsInput, fn func(p *ListObjectVersionsOutput, lastPage bool) (shouldContinue bool)) error

func (*S3) ListObjectVersionsRequest

func (c *S3) ListObjectVersionsRequest(input *ListObjectVersionsInput) (req *request.Request, output *ListObjectVersionsOutput)

ListObjectVersionsRequest generates a request for the ListObjectVersions operation.

func (*S3) ListObjects

func (c *S3) ListObjects(input *ListObjectsInput) (*ListObjectsOutput, error)

Returns some or all (up to 1000) of the objects in a bucket. You can use the request parameters as selection criteria to return a subset of the objects in a bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.ListObjectsInput{
		Bucket:       aws.String("BucketName"), // Required
		Delimiter:    aws.String("Delimiter"),
		EncodingType: aws.String("EncodingType"),
		Marker:       aws.String("Marker"),
		MaxKeys:      aws.Int64(1),
		Prefix:       aws.String("Prefix"),
	}
	resp, err := svc.ListObjects(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) ListObjectsPages

func (c *S3) ListObjectsPages(input *ListObjectsInput, fn func(p *ListObjectsOutput, lastPage bool) (shouldContinue bool)) error

func (*S3) ListObjectsRequest

func (c *S3) ListObjectsRequest(input *ListObjectsInput) (req *request.Request, output *ListObjectsOutput)

ListObjectsRequest generates a request for the ListObjects operation.

func (*S3) ListParts

func (c *S3) ListParts(input *ListPartsInput) (*ListPartsOutput, error)

Lists the parts that have been uploaded for a specific multipart upload.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.ListPartsInput{
		Bucket:           aws.String("BucketName"),        // Required
		Key:              aws.String("ObjectKey"),         // Required
		UploadId:         aws.String("MultipartUploadId"), // Required
		MaxParts:         aws.Int64(1),
		PartNumberMarker: aws.Int64(1),
		RequestPayer:     aws.String("RequestPayer"),
	}
	resp, err := svc.ListParts(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) ListPartsPages

func (c *S3) ListPartsPages(input *ListPartsInput, fn func(p *ListPartsOutput, lastPage bool) (shouldContinue bool)) error

func (*S3) ListPartsRequest

func (c *S3) ListPartsRequest(input *ListPartsInput) (req *request.Request, output *ListPartsOutput)

ListPartsRequest generates a request for the ListParts operation.

func (*S3) PutBucketAcl

func (c *S3) PutBucketAcl(input *PutBucketAclInput) (*PutBucketAclOutput, error)

Sets the permissions on a bucket using access control lists (ACL).

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.PutBucketAclInput{
		Bucket: aws.String("BucketName"), // Required
		ACL:    aws.String("BucketCannedACL"),
		AccessControlPolicy: &s3.AccessControlPolicy{
			Grants: []*s3.Grant{
				{ // Required
					Grantee: &s3.Grantee{
						Type:         aws.String("Type"), // Required
						DisplayName:  aws.String("DisplayName"),
						EmailAddress: aws.String("EmailAddress"),
						ID:           aws.String("ID"),
						URI:          aws.String("URI"),
					},
					Permission: aws.String("Permission"),
				},
				// More values...
			},
			Owner: &s3.Owner{
				DisplayName: aws.String("DisplayName"),
				ID:          aws.String("ID"),
			},
		},
		GrantFullControl: aws.String("GrantFullControl"),
		GrantRead:        aws.String("GrantRead"),
		GrantReadACP:     aws.String("GrantReadACP"),
		GrantWrite:       aws.String("GrantWrite"),
		GrantWriteACP:    aws.String("GrantWriteACP"),
	}
	resp, err := svc.PutBucketAcl(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) PutBucketAclRequest

func (c *S3) PutBucketAclRequest(input *PutBucketAclInput) (req *request.Request, output *PutBucketAclOutput)

PutBucketAclRequest generates a request for the PutBucketAcl operation.

func (*S3) PutBucketCors

func (c *S3) PutBucketCors(input *PutBucketCorsInput) (*PutBucketCorsOutput, error)

Sets the cors configuration for a bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.PutBucketCorsInput{
		Bucket: aws.String("BucketName"), // Required
		CORSConfiguration: &s3.CORSConfiguration{ // Required
			CORSRules: []*s3.CORSRule{ // Required
				{ // Required
					AllowedMethods: []*string{ // Required
						aws.String("AllowedMethod"), // Required
						// More values...
					},
					AllowedOrigins: []*string{ // Required
						aws.String("AllowedOrigin"), // Required
						// More values...
					},
					AllowedHeaders: []*string{
						aws.String("AllowedHeader"), // Required
						// More values...
					},
					ExposeHeaders: []*string{
						aws.String("ExposeHeader"), // Required
						// More values...
					},
					MaxAgeSeconds: aws.Int64(1),
				},
				// More values...
			},
		},
	}
	resp, err := svc.PutBucketCors(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) PutBucketCorsRequest

func (c *S3) PutBucketCorsRequest(input *PutBucketCorsInput) (req *request.Request, output *PutBucketCorsOutput)

PutBucketCorsRequest generates a request for the PutBucketCors operation.

func (*S3) PutBucketLifecycle

func (c *S3) PutBucketLifecycle(input *PutBucketLifecycleInput) (*PutBucketLifecycleOutput, error)

Deprecated, see the PutBucketLifecycleConfiguration operation.

Example
package main

import (
	"fmt"
	"time"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.PutBucketLifecycleInput{
		Bucket: aws.String("BucketName"), // Required
		LifecycleConfiguration: &s3.LifecycleConfiguration{
			Rules: []*s3.Rule{ // Required
				{ // Required
					Prefix: aws.String("Prefix"),           // Required
					Status: aws.String("ExpirationStatus"), // Required
					Expiration: &s3.LifecycleExpiration{
						Date: aws.Time(time.Now()),
						Days: aws.Int64(1),
					},
					ID: aws.String("ID"),
					NoncurrentVersionExpiration: &s3.NoncurrentVersionExpiration{
						NoncurrentDays: aws.Int64(1),
					},
					NoncurrentVersionTransition: &s3.NoncurrentVersionTransition{
						NoncurrentDays: aws.Int64(1),
						StorageClass:   aws.String("TransitionStorageClass"),
					},
					Transition: &s3.Transition{
						Date:         aws.Time(time.Now()),
						Days:         aws.Int64(1),
						StorageClass: aws.String("TransitionStorageClass"),
					},
				},
				// More values...
			},
		},
	}
	resp, err := svc.PutBucketLifecycle(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) PutBucketLifecycleConfiguration

func (c *S3) PutBucketLifecycleConfiguration(input *PutBucketLifecycleConfigurationInput) (*PutBucketLifecycleConfigurationOutput, error)

Sets lifecycle configuration for your bucket. If a lifecycle configuration exists, it replaces it.

Example
package main

import (
	"fmt"
	"time"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.PutBucketLifecycleConfigurationInput{
		Bucket: aws.String("BucketName"), // Required
		LifecycleConfiguration: &s3.BucketLifecycleConfiguration{
			Rules: []*s3.LifecycleRule{ // Required
				{ // Required
					Prefix: aws.String("Prefix"),           // Required
					Status: aws.String("ExpirationStatus"), // Required
					Expiration: &s3.LifecycleExpiration{
						Date: aws.Time(time.Now()),
						Days: aws.Int64(1),
					},
					ID: aws.String("ID"),
					NoncurrentVersionExpiration: &s3.NoncurrentVersionExpiration{
						NoncurrentDays: aws.Int64(1),
					},
					NoncurrentVersionTransitions: []*s3.NoncurrentVersionTransition{
						{ // Required
							NoncurrentDays: aws.Int64(1),
							StorageClass:   aws.String("TransitionStorageClass"),
						},
						// More values...
					},
					Transitions: []*s3.Transition{
						{ // Required
							Date:         aws.Time(time.Now()),
							Days:         aws.Int64(1),
							StorageClass: aws.String("TransitionStorageClass"),
						},
						// More values...
					},
				},
				// More values...
			},
		},
	}
	resp, err := svc.PutBucketLifecycleConfiguration(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) PutBucketLifecycleConfigurationRequest

func (c *S3) PutBucketLifecycleConfigurationRequest(input *PutBucketLifecycleConfigurationInput) (req *request.Request, output *PutBucketLifecycleConfigurationOutput)

PutBucketLifecycleConfigurationRequest generates a request for the PutBucketLifecycleConfiguration operation.

func (*S3) PutBucketLifecycleRequest

func (c *S3) PutBucketLifecycleRequest(input *PutBucketLifecycleInput) (req *request.Request, output *PutBucketLifecycleOutput)

PutBucketLifecycleRequest generates a request for the PutBucketLifecycle operation.

func (*S3) PutBucketLogging

func (c *S3) PutBucketLogging(input *PutBucketLoggingInput) (*PutBucketLoggingOutput, error)

Set the logging parameters for a bucket and to specify permissions for who can view and modify the logging parameters. To set the logging status of a bucket, you must be the bucket owner.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.PutBucketLoggingInput{
		Bucket: aws.String("BucketName"), // Required
		BucketLoggingStatus: &s3.BucketLoggingStatus{ // Required
			LoggingEnabled: &s3.LoggingEnabled{
				TargetBucket: aws.String("TargetBucket"),
				TargetGrants: []*s3.TargetGrant{
					{ // Required
						Grantee: &s3.Grantee{
							Type:         aws.String("Type"), // Required
							DisplayName:  aws.String("DisplayName"),
							EmailAddress: aws.String("EmailAddress"),
							ID:           aws.String("ID"),
							URI:          aws.String("URI"),
						},
						Permission: aws.String("BucketLogsPermission"),
					},
					// More values...
				},
				TargetPrefix: aws.String("TargetPrefix"),
			},
		},
	}
	resp, err := svc.PutBucketLogging(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) PutBucketLoggingRequest

func (c *S3) PutBucketLoggingRequest(input *PutBucketLoggingInput) (req *request.Request, output *PutBucketLoggingOutput)

PutBucketLoggingRequest generates a request for the PutBucketLogging operation.

func (*S3) PutBucketNotification

func (c *S3) PutBucketNotification(input *PutBucketNotificationInput) (*PutBucketNotificationOutput, error)

Deprecated, see the PutBucketNotificationConfiguraiton operation.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.PutBucketNotificationInput{
		Bucket: aws.String("BucketName"), // Required
		NotificationConfiguration: &s3.NotificationConfigurationDeprecated{ // Required
			CloudFunctionConfiguration: &s3.CloudFunctionConfiguration{
				CloudFunction: aws.String("CloudFunction"),
				Event:         aws.String("Event"),
				Events: []*string{
					aws.String("Event"), // Required
					// More values...
				},
				Id:             aws.String("NotificationId"),
				InvocationRole: aws.String("CloudFunctionInvocationRole"),
			},
			QueueConfiguration: &s3.QueueConfigurationDeprecated{
				Event: aws.String("Event"),
				Events: []*string{
					aws.String("Event"), // Required
					// More values...
				},
				Id:    aws.String("NotificationId"),
				Queue: aws.String("QueueArn"),
			},
			TopicConfiguration: &s3.TopicConfigurationDeprecated{
				Event: aws.String("Event"),
				Events: []*string{
					aws.String("Event"), // Required
					// More values...
				},
				Id:    aws.String("NotificationId"),
				Topic: aws.String("TopicArn"),
			},
		},
	}
	resp, err := svc.PutBucketNotification(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) PutBucketNotificationConfiguration

func (c *S3) PutBucketNotificationConfiguration(input *PutBucketNotificationConfigurationInput) (*PutBucketNotificationConfigurationOutput, error)

Enables notifications of specified events for a bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.PutBucketNotificationConfigurationInput{
		Bucket: aws.String("BucketName"), // Required
		NotificationConfiguration: &s3.NotificationConfiguration{ // Required
			LambdaFunctionConfigurations: []*s3.LambdaFunctionConfiguration{
				{ // Required
					Events: []*string{ // Required
						aws.String("Event"), // Required
						// More values...
					},
					LambdaFunctionArn: aws.String("LambdaFunctionArn"), // Required
					Filter: &s3.NotificationConfigurationFilter{
						Key: &s3.KeyFilter{
							FilterRules: []*s3.FilterRule{
								{ // Required
									Name:  aws.String("FilterRuleName"),
									Value: aws.String("FilterRuleValue"),
								},
								// More values...
							},
						},
					},
					Id: aws.String("NotificationId"),
				},
				// More values...
			},
			QueueConfigurations: []*s3.QueueConfiguration{
				{ // Required
					Events: []*string{ // Required
						aws.String("Event"), // Required
						// More values...
					},
					QueueArn: aws.String("QueueArn"), // Required
					Filter: &s3.NotificationConfigurationFilter{
						Key: &s3.KeyFilter{
							FilterRules: []*s3.FilterRule{
								{ // Required
									Name:  aws.String("FilterRuleName"),
									Value: aws.String("FilterRuleValue"),
								},
								// More values...
							},
						},
					},
					Id: aws.String("NotificationId"),
				},
				// More values...
			},
			TopicConfigurations: []*s3.TopicConfiguration{
				{ // Required
					Events: []*string{ // Required
						aws.String("Event"), // Required
						// More values...
					},
					TopicArn: aws.String("TopicArn"), // Required
					Filter: &s3.NotificationConfigurationFilter{
						Key: &s3.KeyFilter{
							FilterRules: []*s3.FilterRule{
								{ // Required
									Name:  aws.String("FilterRuleName"),
									Value: aws.String("FilterRuleValue"),
								},
								// More values...
							},
						},
					},
					Id: aws.String("NotificationId"),
				},
				// More values...
			},
		},
	}
	resp, err := svc.PutBucketNotificationConfiguration(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) PutBucketNotificationConfigurationRequest

func (c *S3) PutBucketNotificationConfigurationRequest(input *PutBucketNotificationConfigurationInput) (req *request.Request, output *PutBucketNotificationConfigurationOutput)

PutBucketNotificationConfigurationRequest generates a request for the PutBucketNotificationConfiguration operation.

func (*S3) PutBucketNotificationRequest

func (c *S3) PutBucketNotificationRequest(input *PutBucketNotificationInput) (req *request.Request, output *PutBucketNotificationOutput)

PutBucketNotificationRequest generates a request for the PutBucketNotification operation.

func (*S3) PutBucketPolicy

func (c *S3) PutBucketPolicy(input *PutBucketPolicyInput) (*PutBucketPolicyOutput, error)

Replaces a policy on a bucket. If the bucket already has a policy, the one in this request completely replaces it.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.PutBucketPolicyInput{
		Bucket: aws.String("BucketName"), // Required
		Policy: aws.String("Policy"),     // Required
	}
	resp, err := svc.PutBucketPolicy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) PutBucketPolicyRequest

func (c *S3) PutBucketPolicyRequest(input *PutBucketPolicyInput) (req *request.Request, output *PutBucketPolicyOutput)

PutBucketPolicyRequest generates a request for the PutBucketPolicy operation.

func (*S3) PutBucketReplication

func (c *S3) PutBucketReplication(input *PutBucketReplicationInput) (*PutBucketReplicationOutput, error)

Creates a new replication configuration (or replaces an existing one, if present).

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.PutBucketReplicationInput{
		Bucket: aws.String("BucketName"), // Required
		ReplicationConfiguration: &s3.ReplicationConfiguration{ // Required
			Role: aws.String("Role"), // Required
			Rules: []*s3.ReplicationRule{ // Required
				{ // Required
					Destination: &s3.Destination{ // Required
						Bucket:       aws.String("BucketName"), // Required
						StorageClass: aws.String("StorageClass"),
					},
					Prefix: aws.String("Prefix"),                // Required
					Status: aws.String("ReplicationRuleStatus"), // Required
					ID:     aws.String("ID"),
				},
				// More values...
			},
		},
	}
	resp, err := svc.PutBucketReplication(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) PutBucketReplicationRequest

func (c *S3) PutBucketReplicationRequest(input *PutBucketReplicationInput) (req *request.Request, output *PutBucketReplicationOutput)

PutBucketReplicationRequest generates a request for the PutBucketReplication operation.

func (*S3) PutBucketRequestPayment

func (c *S3) PutBucketRequestPayment(input *PutBucketRequestPaymentInput) (*PutBucketRequestPaymentOutput, error)

Sets the request payment configuration for a bucket. By default, the bucket owner pays for downloads from the bucket. This configuration parameter enables the bucket owner (only) to specify that the person requesting the download will be charged for the download. Documentation on requester pays buckets can be found at http://docs.aws.amazon.com/AmazonS3/latest/dev/RequesterPaysBuckets.html

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.PutBucketRequestPaymentInput{
		Bucket: aws.String("BucketName"), // Required
		RequestPaymentConfiguration: &s3.RequestPaymentConfiguration{ // Required
			Payer: aws.String("Payer"), // Required
		},
	}
	resp, err := svc.PutBucketRequestPayment(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) PutBucketRequestPaymentRequest

func (c *S3) PutBucketRequestPaymentRequest(input *PutBucketRequestPaymentInput) (req *request.Request, output *PutBucketRequestPaymentOutput)

PutBucketRequestPaymentRequest generates a request for the PutBucketRequestPayment operation.

func (*S3) PutBucketTagging

func (c *S3) PutBucketTagging(input *PutBucketTaggingInput) (*PutBucketTaggingOutput, error)

Sets the tags for a bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.PutBucketTaggingInput{
		Bucket: aws.String("BucketName"), // Required
		Tagging: &s3.Tagging{ // Required
			TagSet: []*s3.Tag{ // Required
				{ // Required
					Key:   aws.String("ObjectKey"), // Required
					Value: aws.String("Value"),     // Required
				},
				// More values...
			},
		},
	}
	resp, err := svc.PutBucketTagging(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) PutBucketTaggingRequest

func (c *S3) PutBucketTaggingRequest(input *PutBucketTaggingInput) (req *request.Request, output *PutBucketTaggingOutput)

PutBucketTaggingRequest generates a request for the PutBucketTagging operation.

func (*S3) PutBucketVersioning

func (c *S3) PutBucketVersioning(input *PutBucketVersioningInput) (*PutBucketVersioningOutput, error)

Sets the versioning state of an existing bucket. To set the versioning state, you must be the bucket owner.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.PutBucketVersioningInput{
		Bucket: aws.String("BucketName"), // Required
		VersioningConfiguration: &s3.VersioningConfiguration{ // Required
			MFADelete: aws.String("MFADelete"),
			Status:    aws.String("BucketVersioningStatus"),
		},
		MFA: aws.String("MFA"),
	}
	resp, err := svc.PutBucketVersioning(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) PutBucketVersioningRequest

func (c *S3) PutBucketVersioningRequest(input *PutBucketVersioningInput) (req *request.Request, output *PutBucketVersioningOutput)

PutBucketVersioningRequest generates a request for the PutBucketVersioning operation.

func (*S3) PutBucketWebsite

func (c *S3) PutBucketWebsite(input *PutBucketWebsiteInput) (*PutBucketWebsiteOutput, error)

Set the website configuration for a bucket.

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.PutBucketWebsiteInput{
		Bucket: aws.String("BucketName"), // Required
		WebsiteConfiguration: &s3.WebsiteConfiguration{ // Required
			ErrorDocument: &s3.ErrorDocument{
				Key: aws.String("ObjectKey"), // Required
			},
			IndexDocument: &s3.IndexDocument{
				Suffix: aws.String("Suffix"), // Required
			},
			RedirectAllRequestsTo: &s3.RedirectAllRequestsTo{
				HostName: aws.String("HostName"), // Required
				Protocol: aws.String("Protocol"),
			},
			RoutingRules: []*s3.RoutingRule{
				{ // Required
					Redirect: &s3.Redirect{ // Required
						HostName:             aws.String("HostName"),
						HttpRedirectCode:     aws.String("HttpRedirectCode"),
						Protocol:             aws.String("Protocol"),
						ReplaceKeyPrefixWith: aws.String("ReplaceKeyPrefixWith"),
						ReplaceKeyWith:       aws.String("ReplaceKeyWith"),
					},
					Condition: &s3.Condition{
						HttpErrorCodeReturnedEquals: aws.String("HttpErrorCodeReturnedEquals"),
						KeyPrefixEquals:             aws.String("KeyPrefixEquals"),
					},
				},
				// More values...
			},
		},
	}
	resp, err := svc.PutBucketWebsite(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) PutBucketWebsiteRequest

func (c *S3) PutBucketWebsiteRequest(input *PutBucketWebsiteInput) (req *request.Request, output *PutBucketWebsiteOutput)

PutBucketWebsiteRequest generates a request for the PutBucketWebsite operation.

func (*S3) PutObject

func (c *S3) PutObject(input *PutObjectInput) (*PutObjectOutput, error)

Adds an object to a bucket.

Example
package main

import (
	"bytes"
	"fmt"
	"time"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.PutObjectInput{
		Bucket:             aws.String("BucketName"), // Required
		Key:                aws.String("ObjectKey"),  // Required
		ACL:                aws.String("ObjectCannedACL"),
		Body:               bytes.NewReader([]byte("PAYLOAD")),
		CacheControl:       aws.String("CacheControl"),
		ContentDisposition: aws.String("ContentDisposition"),
		ContentEncoding:    aws.String("ContentEncoding"),
		ContentLanguage:    aws.String("ContentLanguage"),
		ContentLength:      aws.Int64(1),
		ContentType:        aws.String("ContentType"),
		Expires:            aws.Time(time.Now()),
		GrantFullControl:   aws.String("GrantFullControl"),
		GrantRead:          aws.String("GrantRead"),
		GrantReadACP:       aws.String("GrantReadACP"),
		GrantWriteACP:      aws.String("GrantWriteACP"),
		Metadata: map[string]*string{
			"Key": aws.String("MetadataValue"), // Required
			// More values...
		},
		RequestPayer:            aws.String("RequestPayer"),
		SSECustomerAlgorithm:    aws.String("SSECustomerAlgorithm"),
		SSECustomerKey:          aws.String("SSECustomerKey"),
		SSECustomerKeyMD5:       aws.String("SSECustomerKeyMD5"),
		SSEKMSKeyId:             aws.String("SSEKMSKeyId"),
		ServerSideEncryption:    aws.String("ServerSideEncryption"),
		StorageClass:            aws.String("StorageClass"),
		WebsiteRedirectLocation: aws.String("WebsiteRedirectLocation"),
	}
	resp, err := svc.PutObject(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) PutObjectAcl

func (c *S3) PutObjectAcl(input *PutObjectAclInput) (*PutObjectAclOutput, error)

uses the acl subresource to set the access control list (ACL) permissions for an object that already exists in a bucket

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.PutObjectAclInput{
		Bucket: aws.String("BucketName"), // Required
		Key:    aws.String("ObjectKey"),  // Required
		ACL:    aws.String("ObjectCannedACL"),
		AccessControlPolicy: &s3.AccessControlPolicy{
			Grants: []*s3.Grant{
				{ // Required
					Grantee: &s3.Grantee{
						Type:         aws.String("Type"), // Required
						DisplayName:  aws.String("DisplayName"),
						EmailAddress: aws.String("EmailAddress"),
						ID:           aws.String("ID"),
						URI:          aws.String("URI"),
					},
					Permission: aws.String("Permission"),
				},
				// More values...
			},
			Owner: &s3.Owner{
				DisplayName: aws.String("DisplayName"),
				ID:          aws.String("ID"),
			},
		},
		GrantFullControl: aws.String("GrantFullControl"),
		GrantRead:        aws.String("GrantRead"),
		GrantReadACP:     aws.String("GrantReadACP"),
		GrantWrite:       aws.String("GrantWrite"),
		GrantWriteACP:    aws.String("GrantWriteACP"),
		RequestPayer:     aws.String("RequestPayer"),
	}
	resp, err := svc.PutObjectAcl(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) PutObjectAclRequest

func (c *S3) PutObjectAclRequest(input *PutObjectAclInput) (req *request.Request, output *PutObjectAclOutput)

PutObjectAclRequest generates a request for the PutObjectAcl operation.

func (*S3) PutObjectRequest

func (c *S3) PutObjectRequest(input *PutObjectInput) (req *request.Request, output *PutObjectOutput)

PutObjectRequest generates a request for the PutObject operation.

func (*S3) RestoreObject

func (c *S3) RestoreObject(input *RestoreObjectInput) (*RestoreObjectOutput, error)

Restores an archived copy of an object back into Amazon S3

Example
package main

import (
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.RestoreObjectInput{
		Bucket:       aws.String("BucketName"), // Required
		Key:          aws.String("ObjectKey"),  // Required
		RequestPayer: aws.String("RequestPayer"),
		RestoreRequest: &s3.RestoreRequest{
			Days: aws.Int64(1), // Required
		},
		VersionId: aws.String("ObjectVersionId"),
	}
	resp, err := svc.RestoreObject(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) RestoreObjectRequest

func (c *S3) RestoreObjectRequest(input *RestoreObjectInput) (req *request.Request, output *RestoreObjectOutput)

RestoreObjectRequest generates a request for the RestoreObject operation.

func (*S3) UploadPart

func (c *S3) UploadPart(input *UploadPartInput) (*UploadPartOutput, error)

Uploads a part in a multipart upload.

Note: After you initiate multipart upload and upload one or more parts, you must either complete or abort multipart upload in order to stop getting charged for storage of the uploaded parts. Only after you either complete or abort multipart upload, Amazon S3 frees up the parts storage and stops charging you for the parts storage.

Example
package main

import (
	"bytes"
	"fmt"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.UploadPartInput{
		Bucket:               aws.String("BucketName"),        // Required
		Key:                  aws.String("ObjectKey"),         // Required
		PartNumber:           aws.Int64(1),                    // Required
		UploadId:             aws.String("MultipartUploadId"), // Required
		Body:                 bytes.NewReader([]byte("PAYLOAD")),
		ContentLength:        aws.Int64(1),
		RequestPayer:         aws.String("RequestPayer"),
		SSECustomerAlgorithm: aws.String("SSECustomerAlgorithm"),
		SSECustomerKey:       aws.String("SSECustomerKey"),
		SSECustomerKeyMD5:    aws.String("SSECustomerKeyMD5"),
		ServerSideEncryption: aws.String("UploadPartRequestServerSideEncryption"),
	}
	resp, err := svc.UploadPart(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) UploadPartCopy

func (c *S3) UploadPartCopy(input *UploadPartCopyInput) (*UploadPartCopyOutput, error)

Uploads a part by copying data from an existing object as data source.

Example
package main

import (
	"fmt"
	"time"

	"github.com/aws/aws-sdk-go/aws"
	"github.com/aws/aws-sdk-go/aws/session"
	"github.com/aws/aws-sdk-go/service/s3"
)

func main() {
	svc := s3.New(session.New())

	params := &s3.UploadPartCopyInput{
		Bucket:                         aws.String("BucketName"),        // Required
		CopySource:                     aws.String("CopySource"),        // Required
		Key:                            aws.String("ObjectKey"),         // Required
		PartNumber:                     aws.Int64(1),                    // Required
		UploadId:                       aws.String("MultipartUploadId"), // Required
		CopySourceIfMatch:              aws.String("CopySourceIfMatch"),
		CopySourceIfModifiedSince:      aws.Time(time.Now()),
		CopySourceIfNoneMatch:          aws.String("CopySourceIfNoneMatch"),
		CopySourceIfUnmodifiedSince:    aws.Time(time.Now()),
		CopySourceRange:                aws.String("CopySourceRange"),
		CopySourceSSECustomerAlgorithm: aws.String("CopySourceSSECustomerAlgorithm"),
		CopySourceSSECustomerKey:       aws.String("CopySourceSSECustomerKey"),
		CopySourceSSECustomerKeyMD5:    aws.String("CopySourceSSECustomerKeyMD5"),
		RequestPayer:                   aws.String("RequestPayer"),
		SSECustomerAlgorithm:           aws.String("SSECustomerAlgorithm"),
		SSECustomerKey:                 aws.String("SSECustomerKey"),
		SSECustomerKeyMD5:              aws.String("SSECustomerKeyMD5"),
	}
	resp, err := svc.UploadPartCopy(params)

	if err != nil {
		// Print the error, cast err to awserr.Error to get the Code and
		// Message from an error.
		fmt.Println(err.Error())
		return
	}

	// Pretty-print the response data.
	fmt.Println(resp)
}
Output:

func (*S3) UploadPartCopyRequest

func (c *S3) UploadPartCopyRequest(input *UploadPartCopyInput) (req *request.Request, output *UploadPartCopyOutput)

UploadPartCopyRequest generates a request for the UploadPartCopy operation.

func (*S3) UploadPartRequest

func (c *S3) UploadPartRequest(input *UploadPartInput) (req *request.Request, output *UploadPartOutput)

UploadPartRequest generates a request for the UploadPart operation.

type Tag

type Tag struct {
	// Name of the tag.
	Key *string `min:"1" type:"string" required:"true"`

	// Value of the tag.
	Value *string `type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (Tag) GoString

func (s Tag) GoString() string

GoString returns the string representation

func (Tag) String

func (s Tag) String() string

String returns the string representation

type Tagging

type Tagging struct {
	TagSet []*Tag `locationNameList:"Tag" type:"list" required:"true"`
	// contains filtered or unexported fields
}

func (Tagging) GoString

func (s Tagging) GoString() string

GoString returns the string representation

func (Tagging) String

func (s Tagging) String() string

String returns the string representation

type TargetGrant

type TargetGrant struct {
	Grantee *Grantee `type:"structure"`

	// Logging permissions assigned to the Grantee for the bucket.
	Permission *string `type:"string" enum:"BucketLogsPermission"`
	// contains filtered or unexported fields
}

func (TargetGrant) GoString

func (s TargetGrant) GoString() string

GoString returns the string representation

func (TargetGrant) String

func (s TargetGrant) String() string

String returns the string representation

type TopicConfiguration

type TopicConfiguration struct {
	Events []*string `locationName:"Event" type:"list" flattened:"true" required:"true"`

	// Container for object key name filtering rules. For information about key
	// name filtering, go to Configuring Event Notifications (http://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html)
	// in the Amazon Simple Storage Service Developer Guide.
	Filter *NotificationConfigurationFilter `type:"structure"`

	// Optional unique identifier for configurations in a notification configuration.
	// If you don't provide one, Amazon S3 will assign an ID.
	Id *string `type:"string"`

	// Amazon SNS topic ARN to which Amazon S3 will publish a message when it detects
	// events of specified type.
	TopicArn *string `locationName:"Topic" type:"string" required:"true"`
	// contains filtered or unexported fields
}

Container for specifying the configuration when you want Amazon S3 to publish events to an Amazon Simple Notification Service (Amazon SNS) topic.

func (TopicConfiguration) GoString

func (s TopicConfiguration) GoString() string

GoString returns the string representation

func (TopicConfiguration) String

func (s TopicConfiguration) String() string

String returns the string representation

type TopicConfigurationDeprecated

type TopicConfigurationDeprecated struct {
	// Bucket event for which to send notifications.
	Event *string `type:"string" enum:"Event"`

	Events []*string `locationName:"Event" type:"list" flattened:"true"`

	// Optional unique identifier for configurations in a notification configuration.
	// If you don't provide one, Amazon S3 will assign an ID.
	Id *string `type:"string"`

	// Amazon SNS topic to which Amazon S3 will publish a message to report the
	// specified events for the bucket.
	Topic *string `type:"string"`
	// contains filtered or unexported fields
}

func (TopicConfigurationDeprecated) GoString

func (s TopicConfigurationDeprecated) GoString() string

GoString returns the string representation

func (TopicConfigurationDeprecated) String

String returns the string representation

type Transition

type Transition struct {
	// Indicates at what date the object is to be moved or deleted. Should be in
	// GMT ISO 8601 Format.
	Date *time.Time `type:"timestamp" timestampFormat:"iso8601"`

	// Indicates the lifetime, in days, of the objects that are subject to the rule.
	// The value must be a non-zero positive integer.
	Days *int64 `type:"integer"`

	// The class of storage used to store the object.
	StorageClass *string `type:"string" enum:"TransitionStorageClass"`
	// contains filtered or unexported fields
}

func (Transition) GoString

func (s Transition) GoString() string

GoString returns the string representation

func (Transition) String

func (s Transition) String() string

String returns the string representation

type UploadPartCopyInput

type UploadPartCopyInput struct {
	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	// The name of the source bucket and key name of the source object, separated
	// by a slash (/). Must be URL-encoded.
	CopySource *string `location:"header" locationName:"x-amz-copy-source" type:"string" required:"true"`

	// Copies the object if its entity tag (ETag) matches the specified tag.
	CopySourceIfMatch *string `location:"header" locationName:"x-amz-copy-source-if-match" type:"string"`

	// Copies the object if it has been modified since the specified time.
	CopySourceIfModifiedSince *time.Time `location:"header" locationName:"x-amz-copy-source-if-modified-since" type:"timestamp" timestampFormat:"rfc822"`

	// Copies the object if its entity tag (ETag) is different than the specified
	// ETag.
	CopySourceIfNoneMatch *string `location:"header" locationName:"x-amz-copy-source-if-none-match" type:"string"`

	// Copies the object if it hasn't been modified since the specified time.
	CopySourceIfUnmodifiedSince *time.Time `location:"header" locationName:"x-amz-copy-source-if-unmodified-since" type:"timestamp" timestampFormat:"rfc822"`

	// The range of bytes to copy from the source object. The range value must use
	// the form bytes=first-last, where the first and last are the zero-based byte
	// offsets to copy. For example, bytes=0-9 indicates that you want to copy the
	// first ten bytes of the source. You can copy a range only if the source object
	// is greater than 5 GB.
	CopySourceRange *string `location:"header" locationName:"x-amz-copy-source-range" type:"string"`

	// Specifies the algorithm to use when decrypting the source object (e.g., AES256).
	CopySourceSSECustomerAlgorithm *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-algorithm" type:"string"`

	// Specifies the customer-provided encryption key for Amazon S3 to use to decrypt
	// the source object. The encryption key provided in this header must be one
	// that was used when the source object was created.
	CopySourceSSECustomerKey *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key" type:"string"`

	// Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
	// Amazon S3 uses this header for a message integrity check to ensure the encryption
	// key was transmitted without error.
	CopySourceSSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-copy-source-server-side-encryption-customer-key-MD5" type:"string"`

	Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`

	// Part number of part being copied. This is a positive integer between 1 and
	// 10,000.
	PartNumber *int64 `location:"querystring" locationName:"partNumber" type:"integer" required:"true"`

	// Confirms that the requester knows that she or he will be charged for the
	// request. Bucket owners need not specify this parameter in their requests.
	// Documentation on downloading objects from requester pays buckets can be found
	// at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
	RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`

	// Specifies the algorithm to use to when encrypting the object (e.g., AES256).
	SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`

	// Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
	// data. This value is used to store the object and then it is discarded; Amazon
	// does not store the encryption key. The key must be appropriate for use with
	// the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
	// header. This must be the same encryption key specified in the initiate multipart
	// upload request.
	SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"`

	// Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
	// Amazon S3 uses this header for a message integrity check to ensure the encryption
	// key was transmitted without error.
	SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`

	// Upload ID identifying the multipart upload whose part is being copied.
	UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (UploadPartCopyInput) GoString

func (s UploadPartCopyInput) GoString() string

GoString returns the string representation

func (UploadPartCopyInput) String

func (s UploadPartCopyInput) String() string

String returns the string representation

type UploadPartCopyOutput

type UploadPartCopyOutput struct {
	CopyPartResult *CopyPartResult `type:"structure"`

	// The version of the source object that was copied, if you have enabled versioning
	// on the source bucket.
	CopySourceVersionId *string `location:"header" locationName:"x-amz-copy-source-version-id" type:"string"`

	// If present, indicates that the requester was successfully charged for the
	// request.
	RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`

	// If server-side encryption with a customer-provided encryption key was requested,
	// the response will include this header confirming the encryption algorithm
	// used.
	SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`

	// If server-side encryption with a customer-provided encryption key was requested,
	// the response will include this header to provide round trip message integrity
	// verification of the customer-provided encryption key.
	SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`

	// If present, specifies the ID of the AWS Key Management Service (KMS) master
	// encryption key that was used for the object.
	SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`

	// The Server-side encryption algorithm used when storing this object in S3
	// (e.g., AES256, aws:kms).
	ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
	// contains filtered or unexported fields
}

func (UploadPartCopyOutput) GoString

func (s UploadPartCopyOutput) GoString() string

GoString returns the string representation

func (UploadPartCopyOutput) String

func (s UploadPartCopyOutput) String() string

String returns the string representation

type UploadPartInput

type UploadPartInput struct {
	Body io.ReadSeeker `type:"blob"`

	Bucket *string `location:"uri" locationName:"Bucket" type:"string" required:"true"`

	// Size of the body in bytes. This parameter is useful when the size of the
	// body cannot be determined automatically.
	ContentLength *int64 `location:"header" locationName:"Content-Length" type:"integer"`

	Key *string `location:"uri" locationName:"Key" min:"1" type:"string" required:"true"`

	// Part number of part being uploaded. This is a positive integer between 1
	// and 10,000.
	PartNumber *int64 `location:"querystring" locationName:"partNumber" type:"integer" required:"true"`

	// Confirms that the requester knows that she or he will be charged for the
	// request. Bucket owners need not specify this parameter in their requests.
	// Documentation on downloading objects from requester pays buckets can be found
	// at http://docs.aws.amazon.com/AmazonS3/latest/dev/ObjectsinRequesterPaysBuckets.html
	RequestPayer *string `location:"header" locationName:"x-amz-request-payer" type:"string" enum:"RequestPayer"`

	// Specifies the algorithm to use to when encrypting the object (e.g., AES256).
	SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`

	// Specifies the customer-provided encryption key for Amazon S3 to use in encrypting
	// data. This value is used to store the object and then it is discarded; Amazon
	// does not store the encryption key. The key must be appropriate for use with
	// the algorithm specified in the x-amz-server-side​-encryption​-customer-algorithm
	// header. This must be the same encryption key specified in the initiate multipart
	// upload request.
	SSECustomerKey *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key" type:"string"`

	// Specifies the 128-bit MD5 digest of the encryption key according to RFC 1321.
	// Amazon S3 uses this header for a message integrity check to ensure the encryption
	// key was transmitted without error.
	SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`

	// The Server-side encryption algorithm used when storing this object in S3
	// (e.g., AES256).
	ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"UploadPartRequestServerSideEncryption"`

	// Upload ID identifying the multipart upload whose part is being uploaded.
	UploadId *string `location:"querystring" locationName:"uploadId" type:"string" required:"true"`
	// contains filtered or unexported fields
}

func (UploadPartInput) GoString

func (s UploadPartInput) GoString() string

GoString returns the string representation

func (UploadPartInput) String

func (s UploadPartInput) String() string

String returns the string representation

type UploadPartOutput

type UploadPartOutput struct {
	// Entity tag for the uploaded object.
	ETag *string `location:"header" locationName:"ETag" type:"string"`

	// If present, indicates that the requester was successfully charged for the
	// request.
	RequestCharged *string `location:"header" locationName:"x-amz-request-charged" type:"string" enum:"RequestCharged"`

	// If server-side encryption with a customer-provided encryption key was requested,
	// the response will include this header confirming the encryption algorithm
	// used.
	SSECustomerAlgorithm *string `location:"header" locationName:"x-amz-server-side-encryption-customer-algorithm" type:"string"`

	// If server-side encryption with a customer-provided encryption key was requested,
	// the response will include this header to provide round trip message integrity
	// verification of the customer-provided encryption key.
	SSECustomerKeyMD5 *string `location:"header" locationName:"x-amz-server-side-encryption-customer-key-MD5" type:"string"`

	// If present, specifies the ID of the AWS Key Management Service (KMS) master
	// encryption key that was used for the object.
	SSEKMSKeyId *string `location:"header" locationName:"x-amz-server-side-encryption-aws-kms-key-id" type:"string"`

	// The Server-side encryption algorithm used when storing this object in S3
	// (e.g., AES256, aws:kms).
	ServerSideEncryption *string `location:"header" locationName:"x-amz-server-side-encryption" type:"string" enum:"ServerSideEncryption"`
	// contains filtered or unexported fields
}

func (UploadPartOutput) GoString

func (s UploadPartOutput) GoString() string

GoString returns the string representation

func (UploadPartOutput) String

func (s UploadPartOutput) String() string

String returns the string representation

type VersioningConfiguration

type VersioningConfiguration struct {
	// 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.
	MFADelete *string `locationName:"MfaDelete" type:"string" enum:"MFADelete"`

	// The versioning state of the bucket.
	Status *string `type:"string" enum:"BucketVersioningStatus"`
	// contains filtered or unexported fields
}

func (VersioningConfiguration) GoString

func (s VersioningConfiguration) GoString() string

GoString returns the string representation

func (VersioningConfiguration) String

func (s VersioningConfiguration) String() string

String returns the string representation

type WebsiteConfiguration

type WebsiteConfiguration struct {
	ErrorDocument *ErrorDocument `type:"structure"`

	IndexDocument *IndexDocument `type:"structure"`

	RedirectAllRequestsTo *RedirectAllRequestsTo `type:"structure"`

	RoutingRules []*RoutingRule `locationNameList:"RoutingRule" type:"list"`
	// contains filtered or unexported fields
}

func (WebsiteConfiguration) GoString

func (s WebsiteConfiguration) GoString() string

GoString returns the string representation

func (WebsiteConfiguration) String

func (s WebsiteConfiguration) String() string

String returns the string representation

Directories

Path Synopsis
Package s3iface provides an interface for the Amazon Simple Storage Service.
Package s3iface provides an interface for the Amazon Simple Storage Service.
Package s3manager provides utilities to upload and download objects from S3 concurrently.
Package s3manager provides utilities to upload and download objects from S3 concurrently.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL