Namespace:Create Namespace

Search (SHIFT+S)




New in this release

Create Namespace

POST /object/namespaces/namespace

Creates a namespace with the given details.


Required Roles

  • SYSTEM_ADMIN


Request Payload

All parameters are required unless otherwise stated.

Field Description Type Notes
<namespace_create>
<namespace> User provided namespace (verified unique)

can not include dots or slashes (.|/) in the name

String Valid Values:
  •  Can contain slashes (/)
  •  Can contain dots (.)
<default_object_project> Default project id for this tenant when creating buckets URI
<default_data_services_vpool> Default replication group identifier for this tenant when creating buckets URI
<allowed_vpools_list> List of replication groups that are allowed to create buckets on the corresponding namespace URI 0-* Elements
<disallowed_vpools_list> List of replication groups that are not allowed to create buckets on the corresponding namespace URI 0-* Elements
<namespace_admins> Comma separated list of namespace admins String
<user_mapping>     0-* Elements
<domain> A single-valued attribute indicating the user's IDP domain String Valid Values:
  •  Examples: "emc.com" or "netapp.com"
<attributes>
<attribute>     0-* Elements
<key> Lookup string for this key-value pair String
<value> Lookup result for this key-value pair String 0-* Elements
</attribute>      
</attributes>
<groups>
<group> String 0-* Elements
</groups>
</user_mapping>      
<is_encryption_enabled> tag to enable encryption for the namespace Boolean
<default_bucket_block_size> Default bucket quota size. Long
<external_group_admins> List of groups from AD Server String
<is_stale_allowed> Tag to allow stale data within the namespace Boolean
<compliance_enabled> Tag to enable namespace compliance Boolean
</namespace_create>

Response Body

Response indicating the result of the create operation

Field Description Type Notes
<namespace>
<default_data_services_vpool> Default replication group identifier for this tenant when creating buckets URI
<allowed_vpools_list> List of replication group that are allowed access to namespace URI 0-* Elements
<disallowed_vpools_list> List of replication group that are not allowed access to namespace URI 0-* Elements
<namespace_admins> Comma separated list of namespace admins String
<is_encryption_enabled> encryption status of the namesapce String
<user_mapping>     0-* Elements
<domain> A single-valued attribute indicating the user's IDP domain String Valid Values:
  •  Examples: "emc.com" or "netapp.com"
<attributes>
<attribute>     0-* Elements
<key> Lookup string for this key-value pair String
<value> Lookup result for this key-value pair String 0-* Elements
</attribute>      
</attributes>
<groups>
<group> String 0-* Elements
</groups>
</user_mapping>      
<default_bucket_block_size> Default bucket quota size. Long
<external_group_admins> List of groups from AD Server String
<is_stale_allowed> Namespace isStaleAllowed flag Boolean
<is_compliance_enabled> Namespace isComplianceEnabled flag Boolean
<name> Name assigned to this resource in ECS. The resource name is set by a user and can be changed at any time. It is not a unique identifier. String
<id> Identifier that is generated by ECS when the resource is created. The resource Id is guaranteed to be unique and immutable across all virtual data centers for all time. URI Valid Values:
  •  urn:storageos:resource-type:UUID:
<link> Hyperlink to the details for this resource
<creation_time> Timestamp that shows when this resource was created in ECS DateTime Valid Values:
  •  YYYY-MM-DDTHH:mm:ssZ
<inactive> Indicates whether the resource is inactive. When a user removes a resource, the resource is put in this state before it is removed from the ECS database. Boolean Valid Values:
  •  true
  •  false
<global> Indicates whether the resource is global. Boolean Valid Values:
  •  true
  •  false
<remote> Indicates whether the resource is remote. Boolean Valid Values:
  •  true
  •  false
<vdc>    
<id> ECS Id of the related object URI
<link> Hyperlink to the related object
</vdc>      
<internal> Indicated whether the resource is an internal resource Boolean Valid Values:
  •  true
  •  false
</namespace>

Examples

Request
POST https://192.168.0.0:4443/object/namespaces/namespace HTTP/1.1

Content-Type: application/xml
X-SDS-AUTH-TOKEN: <AUTH_TOKEN>

<?xml version="1.0" encoding="UTF-8"?>
<namespace_create>
  <namespace>jt_namespace2</namespace>
  <namespace_admins>admin1,admin2,admin3</namespace_admins>
  <default_object_project>project4</default_object_project>
  <isStaleAllowed>true</isStaleAllowed>
  <user_mapping>
    <domain>jt_domain</domain>
    <attributes>
      <attribute>
                <key>key1</key>
                <value>value1</value>
          </attribute>
        <attribute>
                <key>key2</key>
                <value>value2</value>
          </attribute>
    </attributes>
    <groups>
      <group>group1</group>
    </groups>
  </user_mapping>
  <user_mapping>
    <domain>jt_domain_2</domain>
    <attributes>
      <attribute>
                <key>key2_1</key>
                <value>value2_1</value>
          </attribute>
        <attribute>
                <key>key2_2</key>
                <value>value2_2</value>
          </attribute>
    </attributes>
    <groups>
      <group>group2</group>
    </groups>
  </user_mapping>
</namespace_create>
Response
HTTP/1.1 200 OK
Content-Type: application/xml

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<namespace>
    <id>jt_namespace2</id>
    <inactive>false</inactive>
    <link rel="self" href="/object/namespaces/namespace/jt_namespace2"/>
    <name>jt_namespace2</name>
    <tags/>
    <namespace_admins>admin1,admin2,admin3</namespace_admins>
    <default_data_services_vpool></default_data_services_vpool>
    <user_mapping>
        <attributes>
            <attribute>
                <key>key1</key>
                <value>value1</value>
            </attribute>
            <attribute>
                <key>key2</key>
                <value>value2</value>
            </attribute>
        </attributes>
        <domain>jt_domain</domain>
        <groups>
            <group>group1</group>
        </groups>
    </user_mapping>
    <user_mapping>
        <attributes>
            <attribute>
                <key>key2_1</key>
                <value>value2_1</value>
            </attribute>
            <attribute>
                <key>key2_2</key>
                <value>value2_2</value>
            </attribute>
        </attributes>
        <domain>jt_domain_2</domain>
        <groups>
            <group>group2</group>
        </groups>
    </user_mapping>
</namespace>
Notes: