AWS SDK Version 2 for .NET
API Reference

AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

.NET Framework 3.5
Contains all the parameters that can be set when making a this request with the TransferUtility method.

Inheritance Hierarchy


Namespace: Amazon.S3.Transfer
Assembly: AWSSDK.dll
Version: (assembly version)


public class TransferUtilityUploadRequest : BaseUploadRequest

The TransferUtilityUploadRequest type exposes the following members



Public Property AutoCloseStream System.Boolean Gets or sets whether or not the stream used with this request is automatically closed when all of the content is read from the stream.
Public Property AutoResetStreamPosition System.Boolean If this value is set to true then the stream's position will be reset to the start before being read for upload. Default: true.
Public Property BucketName System.String Gets or sets the name of the bucket.
Public Property CannedACL Amazon.S3.S3CannedACL Gets or sets the canned access control list (ACL) for the uploaded object. Please refer to S3CannedACL for information on Amazon S3 canned ACLs.
Public Property ContentType System.String Gets or sets the content type of the uploaded Amazon S3 object.
Public Property FilePath System.String

Gets or sets the file path where the Amazon S3 object will be uploaded from.

For WinRT and Windows Phone this property must be in the form of "ms-appdata:///local/file.txt".

Public Property Headers Amazon.S3.Model.HeadersCollection The collection of headers for the request.
Public Property InputStream System.IO.Stream Input stream for the request; content for the request will be read from the stream.
Public Property Key System.String Gets or sets the key under which the Amazon S3 object is to be stored.
Public Property Metadata Amazon.S3.Model.MetadataCollection The collection of meta data for the request.
Public Property PartSize System.Int64 Gets or sets the part size of the upload in bytes. The uploaded file will be divided into parts the size specified and uploaded to Amazon S3 individually.
Public Property ServerSideEncryptionCustomerMethod Amazon.S3.ServerSideEncryptionCustomerMethod The Server-side encryption algorithm to be used with the customer provided key.
Public Property ServerSideEncryptionCustomerProvidedKey System.String The base64-encoded encryption key for Amazon S3 to use to encrypt the object

Using the encryption key you provide as part of your request Amazon S3 manages both the encryption, as it writes to disks, and decryption, when you access your objects. Therefore, you don't need to maintain any data encryption code. The only thing you do is manage the encryption keys you provide.

When you retrieve an object, you must provide the same encryption key as part of your request. Amazon S3 first verifies the encryption key you provided matches, and then decrypts the object before returning the object data to you.

Important: Amazon S3 does not store the encryption key you provide.

Public Property ServerSideEncryptionCustomerProvidedKeyMD5 System.String The MD5 of the customer encryption key specified in the ServerSideEncryptionCustomerProvidedKey property. The MD5 is base 64 encoded. This field is optional, the SDK will calculate the MD5 if this is not set.
Public Property ServerSideEncryptionKeyManagementServiceKeyId System.String The id of the AWS Key Management Service key that Amazon S3 should use to encrypt and decrypt the object. If a key id is not specified, the default key will be used for encryption and decryption.
Public Property ServerSideEncryptionMethod Amazon.S3.ServerSideEncryptionMethod Gets and sets the ServerSideEncryptionMethod property. Specifies the encryption used on the server to store the content.
Public Property StorageClass Amazon.S3.S3StorageClass Gets or sets the storage class for the uploaded Amazon S3 object. Please refer to S3StorageClass for information on S3 Storage Classes.
Public Property Timeout System.Nullable<System.TimeSpan> Overrides the default request timeout value.


Public Method RemoveCannedACL() Removes the cannned access control list (ACL) for the uploaded object.
Public Method WithAutoCloseStream(bool) Sets whether or not the stream used with this request is automatically closed when all of the content is read from the stream and returns this object instance, enabling additional method calls to be chained together.


Event UploadProgressEvent The event for UploadProgressEvent notifications. All subscribers will be notified when a new progress event is raised.

The UploadProgressEvent is fired as data is uploaded to S3. The delegates attached to the event will be passed information detailing how much data has been uploaded as well as how much will be uploaded.

Version Information

.NET Framework:
Supported in: 4.5, 4.0, 3.5

.NET for Windows Store apps:
Supported in: Windows 8.1, Windows 8

.NET for Windows Phone:
Supported in: Windows Phone 8.1, Windows Phone 8