Dell Technologies ECS REST API

Search (SHIFT+S)




Changes to Create Or Update Object

Creates an object or performs an update, append or overwrite operation for a specified byte range within an object. Byte range updates, appends, and overwrites are ECS extensions to the S3 API.

For object creation, if there is already an existing object with the same name, the object is overwritten.

The object ACL can be set with the object creation request, but it is optional. When set, the ACL can be specified with a canned ACL using the x-amz-acl request header, or specified explicitly using the x-amz-grant-read, x-amz-grant-write, x-amz-grant-read-acp, x-amz-grant-write-acp, x-amz-grant-full-control headers. These headers map to the set of permissions S3 supports in an ACL. The object ACL can be set with either a canned ACL or explicitly, if both are specified the canned ACL is ignored.

Request Header Changes

Content optionalUsed to specify the number of bytes supplied by an append, update, or overwritten operation.
Range optionalSpecifies byte range with an object.
  1. To append use:bytes=-1-
  2. To update use:bytes=<start>-<end> for example, bytes=10-14
  3. To overwrite, use bytes=<start-position>-,for example:bytes=10-
x-amz-acl optionalUsed to specify the canned ACL for the object you are creating. Valid values: private, public-read, public-read-write, authenticated-read, bucket-owner-read, bucket-owner-full-control
x-amz-grant-read optionalAllows grantee to read the object data and metadata
x-amz-grant-read-acp optionalAllows grantee to read the object ACL
x-amz-grant-write-acp optionalAllows grantee to write the ACL for the object
x-amz-grant-full-control optionalAllows grantee the READ, READ_ACP, and WRITE_ACP permissions on the object
x-emc-retention-period optionalApplying retention period in seconds, -1 denotes infinity
x-emc-retention-policy optionalApplying retention policy
If-None-Match optionalIf "If-None-match:*" is set, then put-if-absent semantics for the createObject
x-amz-copy-source optionalUsed to specify the name of the source bucket and key name of the source object, separated by a slash. Default copy mode is shallow and only specific scenario where the shallow copy cannot be performed will be switch over to deep-mode, such as in the case of TSO, different encryption settings for bucket, etc.
x-amz-metadata-directive optionalUsed to specify the metadata directive to be used when copying an object either to itself or a different object, valid values include,
  1. COPY - This metadata directive value will copy over all metadata information from the source object to the destination object. It is only allowed if the object is not being copied to itself.
  2. MERGE - This metadata directive value will copy over all metadata information from the source object to the destination object including any new metadata from the request.
  3. REPLACE - This metadata directive value will replace all metadata information from the source object with the any new metadata from the request.
x-emc-multipart-copy optionalIndicates a copy-range API request
x-emc-copy-mode optionalIs a ECS extension header for x-emc-multipart-copy API, which is another ECS extension developed specifically for DD (Data Domain). Multi-part copy API by default operates in deep copy mode while regular S3 object copy API by default is in shallow mode.