AWS SDK Version 3 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.

This operation initiates a multipart upload. Amazon Glacier creates a multipart upload resource and returns its ID in the response. The multipart upload ID is used in subsequent requests to upload parts of an archive (see UploadMultipartPart).

When you initiate a multipart upload, you specify the part size in number of bytes. The part size must be a megabyte (1024 KB) multiplied by a power of 2-for example, 1048576 (1 MB), 2097152 (2 MB), 4194304 (4 MB), 8388608 (8 MB), and so on. The minimum allowable part size is 1 MB, and the maximum is 4 GB.

Every part you upload to this resource (see UploadMultipartPart), except the last one, must have the same size. The last one can be the same size or smaller. For example, suppose you want to upload a 16.2 MB file. If you initiate the multipart upload with a part size of 4 MB, you will upload four parts of 4 MB each and one part of 0.2 MB.

You don't need to know the size of the archive when you start a multipart upload because Amazon Glacier does not require you to specify the overall archive size.

After you complete the multipart upload, Amazon Glacier removes the multipart upload resource referenced by the ID. Amazon Glacier also removes the multipart upload resource if you cancel the multipart upload or it may be removed if there is no activity for a period of 24 hours.

An AWS account has full permission to perform all operations (actions). However, AWS Identity and Access Management (IAM) users don't have any permissions by default. You must grant them explicit permission to perform specific actions. For more information, see Access Control Using AWS Identity and Access Management (IAM).

For conceptual information and underlying REST API, see Uploading Large Archives in Parts (Multipart Upload) and Initiate Multipart Upload in the Amazon Glacier Developer Guide.


For .NET Core and PCL this operation is only available in asynchronous form. Please refer to InitiateMultipartUploadAsync.

Namespace: Amazon.Glacier
Assembly: AWSSDK.Glacier.dll
Version: 3.x.y.z


public abstract InitiateMultipartUploadResponse InitiateMultipartUpload(
         InitiateMultipartUploadRequest request
Type: Amazon.Glacier.Model.InitiateMultipartUploadRequest

Container for the necessary parameters to execute the InitiateMultipartUpload service method.

Return Value
The response from the InitiateMultipartUpload service method, as returned by Glacier.


InvalidParameterValueException Returned if a parameter of the request is incorrectly specified.
MissingParameterValueException Returned if a required header or parameter is missing from the request.
ResourceNotFoundException Returned if the specified resource (such as a vault, upload ID, or job ID) doesn't exist.
ServiceUnavailableException Returned if the service cannot complete the request.


The example initiates a multipart upload to a vault named my-vault with a part size of 1 MiB (1024 x 1024 bytes) per file.

To initiate a multipart upload

var response = client.InitiateMultipartUpload(new InitiateMultipartUploadRequest 
    AccountId = "-",
    PartSize = "1048576",
    VaultName = "my-vault"

string location = response.Location;
string uploadId = response.UploadId;


Version Information

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

Portable Class Library:
Supported in: Windows Store Apps
Supported in: Windows Phone 8.1
Supported in: Xamarin Android
Supported in: Xamarin iOS (Unified)
Supported in: Xamarin.Forms