Метод startUpload

Возвращает идентификатор, который следует использовать во всех дальнейших операциях по загрузке объекта.

Если вместе с объектом необходимо хранить пользовательские метаданные, то передавать их следует в этом запросе.

Запрос

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

Path параметры

Параметр Описание
bucket Имя бакета.
key Ключ объекта. Под указанным именем объект будет сохранен в Object Storage.

Query параметры

Параметр Описание
uploads Флаг, обозначающий операцию составной загрузки.

Заголовки

Используйте в запросе необходимые общие заголовки.

Дополнительно можно использовать заголовки, перечисленные в таблице ниже.

Заголовок Описание
x-amz-meta-* Пользовательские метаданные объекта.

Все заголовки, начинающиеся с x-amz-meta-Object Storage воспринимает как пользовательские, не обрабатывает их и сохраняет в том виде, в котором они переданы.

Общий размер пользовательских заголовков не должен превышать 2 КБ. Размер пользовательских данных определяется как длина строки в кодировке UTF-8. В размере учитываются и названия заголовков и их значения.
x-amz-storage-class Класс хранилища объекта.

Может иметь любое из значений:
- STANDARD для загрузки объекта в стандартное хранилище.
- COLD, STANDARD_IA и NEARLINE для загрузки объекта в холодное хранилище.

Если заголовок не указан, то объект сохраняется в хранилище, установленном в настройках бакета.

С помощью заголовков, перечисленных ниже, можно установить ACL для загружаемого объекта.

Заголовок Описание
x-amz-acl Устанавливает предопределенный ACL для объекта.
x-amz-grant-read Устанавливает получателю доступа разрешение на чтение объекта.
x-amz-grant-read-acp Устанавливает получателю доступа разрешение на чтение ACL объекта.
x-amz-grant-write-acp Устанавливает получателю доступа разрешение на запись ACL объекта.
x-amz-grant-full-control Устанавливает получателю доступа разрешения: READ, WRITE, READ_ACP, WRITE_ACP на объект.

Значение для заголовков x-amz-grant-* представляет собой разделенный запятыми список получателей доступа. Каждый получатель доступа идентифицируется структурой вида <тип получателя доступа>:<идентификатор получателя доступа>. Object Storage поддерживает следующие типы получателей:

  • id — получатель доступа — пользователь облака.
  • uri — получатель доступа — системная группа.

Пример:

x-amz-grant-read: uri="http://acs.amazonaws.com/groups/s3/AuthenticatedUsers"

Ответ

Заголовки

Ответ может содержать только общие заголовки.

Коды ответов

Перечень возможных ответов смотрите в разделе Ответы.

Успешный ответ содержит дополнительные данные в формате XML, схема которого описана ниже.

Схема данных

<InitiateMultipartUploadResult>
  <Bucket>bucket-name</Bucket>
  <Key>object-key</Key>
  <UploadId>upload-id</UploadId>
</InitiateMultipartUploadResult>
Тег Описание
InitiateMultipartUploadResult Корневой тег ответа.

Путь: /InitiateMultipartUploadResult.
Bucket Имя бакета в который загружается объект.

Путь: /InitiateMultipartUploadResult/Bucket.
Key Ключ, который ассоциируется с объектом, после окончания загрузки.

Путь: /InitiateMultipartUploadResult/Key.
UploadId Идентификатор загрузки.

Все последующие операции с загрузкой должны передавать в Object Storage этот идентификатор.

Путь: /InitiateMultipartUploadResult/UploadId.