EMC ViPR REST API

Search (SHIFT+S)

API Reference


Create Protection System

POST /vdc/protection-systems

Allow the user to manually create a protection system.


Required Roles

Requires one of the following roles:

  • SYSTEM_ADMIN
  • RESTRICTED_SYSTEM_ADMIN

Request Payload

All parameters are required unless otherwise stated.

Field Description Type Notes
<protection_system_create>
<name> The label given to the new Protection System String Valid Values:
  •  Length: 2..128
<system_type> System type for the new Protection System String
<ip_address> IP Address of the Protection System device String
<port_number> Management Port Number of the Protection System device Integer
<user_name> The user name to connect to the Protection System device management port String
<password> The password to connect to the Protection System device management port String
<registration_mode> The registration mode for the Protection System Valid values: REGISTERED UNREGISTERED String
</protection_system_create>

Response Body

An asynchronous task corresponding to the discovery job scheduled for the new Protection System.

This is an asychronous operation that returns a task object. For information on working with tasks, see Asynchronous Operations.

Field Description Type Notes
<task>
<op_id> The task operation id String
<resource>    
<name> The name of the resource String
<id> ViPR ID of the related object URI
<link> A hyperlink to the related object
</resource>      
<tenant>    
<id> ViPR ID of the related object URI
<link> A hyperlink to the related object
</tenant>      
<associated_resources> A list of links for associated resources
<associated_resource>     0-* Elements
<name> The name of the resource String
<id> ViPR ID of the related object URI
<link> A hyperlink to the related object
</associated_resource>      
</associated_resources>
<state> The state of the task Valid values: queued = task is queued pending = task is pending ready = task succeed error = task fails suspended_error = task is suspended due to an error suspended_no_error = task is suspended due to config/request String
<allowed_operations> The allowed operations of the task String
<message> The task detail message String
<description> The description of the task String
<service_error>    
<code> The numerical code associated with the error encountered when processing a service request Integer
<description> The description of the error String
<details> Detailed information concerning the error String
</service_error>      
<start_time> The date and time of when the task was started DateTime
<end_time> The date and time of when the task ended DateTime
<progress> Integer
<workflow>    
<id> ViPR ID of the related object URI
<link> A hyperlink to the related object
</workflow>      
<queuedStartTime> DateTime
<queueName> String
<name> The name assigned to this resource in ViPR. The resource name is set by a user and can be changed at any time. It is not a unique identifier. String
<id> An identifier that is generated by ViPR when the resource is created. The resource ID is guaranteed to be unique and immutable across all virtual data centers for all time. URI
<link> A hyperlink to the details for this resource
<creation_time> A timestamp that shows when this resource was created in ViPR DateTime
<tags> Keywords and labels that can be added by a user to a resource to make it easy to find when doing a search.
<tag> String 0-* Elements
</tags>
<inactive> Whether or not the resource is inactive. When a user removes a resource, the resource is put in this state before it is removed from the ViPR database. Boolean
<global> Boolean
<remote> Boolean
<vdc>    
<id> ViPR ID of the related object URI
<link> A hyperlink to the related object
</vdc>      
<internal> Whether or not the resource is an internal resource. Boolean
</task>

Examples

Request
POST https://192.168.0.0:4443/vdc/protection-systems HTTP/1.1

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

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<protection_system_create>
   <ip_address>192.168.0.0</ip_address>
   <name>rp_protection_system</name>
   <password>admin</password>
   <port_number>7225</port_number>
   <registration_mode>SYSTEM</registration_mode>
   <system_type>rp</system_type>
   <user_name>admin</user_name>
</protection_system_create>
Response
HTTP/1.1 202 Accepted
Content-Type: application/xml

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<task>
   <link href="/vdc/protection-systems/urn:storageos:ProtectionSystem:ed3c8075-9e0e-49f0-8d38-ffe338f973db:/tasks/c4e2297e-d08a-4e1f-bceb-0c7b755aeb57"
      rel="self"
   </link>
   <op_id>c4e2297e-d08a-4e1f-bceb-0c7b755aeb57</op_id>
   <resource>
      <id>urn:storageos:ProtectionSystem:ed3c8075-9e0e-49f0-8d38-ffe338f973db:</id>
      <link href="/vdc/protection-systems/urn:storageos:ProtectionSystem:ed3c8075-9e0e-49f0-8d38-ffe338f973db:"
         rel="self"
      </link>
      <name>rp_protection_system</name>
   </resource>
   <start_time>1380164202131</start_time>
   <state>pending</state>
</task>