startUpload method

Returns the ID that should be used in all subsequent operations for uploading objects.

If the object is to be stored with user-defined metadata, it should be passed in this request.


POST /{bucket}/{key}?uploads HTTP/1.1

Path parameters

Parameter Description
bucket Name of the bucket.
key Object key. The object will be saved in Object Storage under the specified name.

Query parameters

Parameter Description
uploads Flag indicating a multipart upload operation.


In a request, use the necessary common request headers.

You can also use the headers listed in the table below.

Header name Description
x-amz-meta-* User-defined metadata of the object.

Object Storage considers all headers starting with x-amz-meta- as user-defined. It does not process these headers, but saves them in the original form.

The total size of user-defined headers should not exceed 2 KB. The size of user-defined data is determined as the length of the UTF-8 encoded string. The header names and their values are included when calculating the size.
x-amz-storage-class Object storage class.

Possible values:
- STANDARD for uploading an object to standard storage.
- COLD, STANDARD_IA, and NEARLINE for uploading an object to cold storage.

If the header is omitted, the object is saved in standard storage.



A response can only contain common response headers.

Response codes

For a list of possible responses, see Responses.

A successful response contains additional data in XML format with the schema described below.

Data schema

Tag Description
InitiateMultipartUploadResult Response root tag.

Path: /InitiateMultipartUploadResult.
Bucket Name of the bucket the object is uploaded to.

Path: /InitiateMultipartUploadResult/Bucket.
Key Key associated with the object after the upload is complete.

Path: /InitiateMultipartUploadResult/Key.
UploadId Upload ID.

All subsequent upload operations should pass this ID to Object Storage.

Path: /InitiateMultipartUploadResult/UploadId.