Cloud Enterprise Object Storage REST API

Search (SHIFT+S)




Create Bucket

PUT

Creates a new bucket.

Only authenticated users can create buckets, anonymous requests are never allowed to create buckets. The current user will become the bucket owner. Bucket region parameters will be ignored, and US Standard region will be always used.

The bucket ACL can be set with the bucket creation request, but it is optional. If the ACL is supplied, it 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. If both are specified, the canned ACL will be ignored.

When using host style addressing, the url is of the form: bucketname.ns1.emc.com, where ns1 is the namespace, and emc.com is the base url.

Rules for Bucket Naming

Bucket names must comply with the following rules in order to be DNS compliant:

  • Bucket names must be at least 3 and no more than 63 characters long

  • Bucket name must be a series of one or more labels separated by a period (.)

  • Bucket names can contain lowercase letters, numbers and dashes

  • Bucket names must not be formatted as an IP address (for example 192.168.5.4).

URL Format

Host Style: http://bucketname.ns1.emc.com
Path Style: http://ns1.emc.com/bucketname

Request Headers

x-emc-namespace optionalNamespace to be used for this bucket. If the namespace is not specified using the S3 convention of host/path style request, it can be specified using the x-emc-namespace header. If the namespace is not specified in this header either, and if the request is from a registered user, the namespace associated with that user is used. If all of these attempts fail, the request is rejected.
x-emc-dataservice-vpool optionalThe replication group to associate the new bucket with. This determines the data stores used to store the objects associated with this bucket. If this header is not present, the default replication group defined for the associated namespace is used.
x-amz-acl optionalThe canned ACL to apply to the bucket 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 list the objects in the bucket
x-amz-grant-write optionalAllows grantee to create, overwrite and delete any object in the bucket
x-amz-grant-read-acp optionalEnables the grantee(s) to read the ACL of the bucket.
x-amz-grant-write-acp optionalEnables the grantee(s) to write or set the ACL for the bucket.
x-amz-grant-full-control optionalEnables the grantee(s) read, write, READ_ACP and WRITE_ACP permissions on the bucket.
x-emc-retention-period optionalImplicitly applying retention period in seconds for all objects in bucket, -1 denotes infinity
x-emc-autocommit-period optionalautocommit period in seconds (applicable to FS enabled bucket and for requests from NFS and Atmos heads)
x-amz-date optionalThe current date and time according to the requester. Example: Wed, 01 Mar 2009 12:00:00 GMT. When you specify the Authorization header, you must specify either the x-amz-date or the Date header. If you specify both, the value specified for the x-amz-date header takes precedence.
x-emc-file-system-access-enabled optionalFlag that indicates whether the bucket can be accessed as HDFS
x-emc-is-stale-allowed optionalContainer Flag that indicates whether the bucket can be accessed during a temporary VDC outage in a federated configuration
x-emc-compliance-enabled optionalFlag indicating whether bucket has compliance mode enabled.
x-emc-server-side-encryption-enabled optionalFlag indicating whether any object placed within bucket is encrypted by the System
x-emc-metadata-search optionalAssigns a list in the form "keyname[;datatype],..." of system- and user-metadata keynames that can be used later in bucket searches for the purpose of filtering object lists based querying these keys

Prerequisites

The following conditions must be met in order to call this operation.

  • Only authenticated users can create buckets

  • BaseUrl used in a hosts-style request URL should be pre-configured using the ECS Management API or the ECS Portal (for example, emc.com in URL: bucketname.ns1.emc.com)

  • Namespace corresponding to this bucket should exist (for example, ns1)


Request Payload

No Request Payload


Response Headers

x-amz-id alwaysBucket id obtained from request.
x-amz-request-id alwaysRequest id returned for this PUT request.
x-amz-date optionalThe current date and time according to the requester. Example: Wed, 01 Mar 2009 12:00:00 GMT.
x-amz-location alwaysLocation of the created bucket.
ContentLength optionalzero content length.
Connection optionalStatus of the connection.

Response Body

Response indicating Success or Failure for this operation.