EMC ViPR REST API

Search (SHIFT+S)

API Reference


Create Host

POST /tenants/{id}/hosts
This call has been deprecated and will be removed in future versions

Creates a new host for the tenant organization. Discovery is initiated after the host is created.

This method is deprecated. Use /compute/hosts instead

idthe tenant organization id

Query Parameters

validate_connection

Required Roles

  • TENANT_ADMIN

Request Payload

All parameters are required unless otherwise stated.

Field Description Type Notes
<host_create>
<type> The host type. Valid values: Windows HPUX Linux Esx SUNVCS Other String
<host_name> The short or fully qualified host name or IP address of the host management interface. String
<os_version> The operating system version of the host. String
<name> The user label for this host. String Valid Values:
  •  Length: 2..128
<port_number> The integer port number of the host management interface. Integer Valid Values:
  •  Range: 1..65535
<user_name> The user name used to log in to the host. String
<password> The password credential used to login to the host. String
<use_ssl> The boolean flag that indicates if SSL should be used when communicating with the host. Boolean
<cluster> The URI of the cluster if the host is in a cluster. URI
<vcenter_data_center> The URI of a vCenter data center if the host is an ESX host in a data center. URI
<project> This field is currently not used. Any values passed into it will be ignored. URI
<discoverable> Gets the discoverable flag. Discoverable indicates if automatic discovery should be performed against this host. Defaults to true. Boolean
<tenant> The URI of the tenant owning the host. URI
<boot_volume> URI
</host_create>

Response Body

The host discovery async task representation.

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>

JSON Example

Request
POST: https://192.168.0.0:4443/tenants/urn:storageos:TenantOrg:039e117c-0247-40bf-8ebf-7a64fa8f9a76:/hosts.json HTTP/1.1

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

{
    "host_name": "host.y3BBF.com",
    "name": "host.y3BBF.com",
    "os_version": "1.0",
    "password": "password",
    "port_number": "8111",
    "type": "Windows",
    "use_ssl": null,
    "user_name": "user"
}
Response
HTTP/1.1 202 Accepted
Content-Type: application/json
{
    "link": {
        "href": "/compute/hosts/urn:storageos:Host:01687615-26b1-48ab-8545-92b0791bb9ff:/tasks/31c616ad-0d3c-405d-be78-31311dd3caf1",
        "rel": "self"
    },
    "message": "Operation completed successfully",
    "op_id": "31c616ad-0d3c-405d-be78-31311dd3caf1",
    "resource": {
        "id": "urn:storageos:Host:01687615-26b1-48ab-8545-92b0791bb9ff:",
        "link": {
            "href": "/compute/hosts/urn:storageos:Host:01687615-26b1-48ab-8545-92b0791bb9ff:",
            "rel": "self"
        },
        "name": "host.y3BBF.com"
    },
    "start_time": 1380722363908,
    "state": "ready"
}