Zerto APIs : Virtualization Sites API : Format
  
Format
Json, XML
Request Body Using Json Format
The request body is empty.
Response In Json Format
Virtualization sites
The following is an example response Json body for https://zvm_ip:port/v1/virtualizationsites and for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}.
 
[{
  "SiteIdentifier": "String content",
  "VirtualizationSiteName": "String content"
}
{
  "SiteIdentifier": "String content",
  "VirtualizationSiteName": "String content"
]
 
Datastore clusters
The following is an example response Json body for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/datastoreclusters.
 
[{
  "DatastoreClusterName": "String content"
}
{
  "DatastoreClusterName": "String content"
}]
 
Datastores
The following is an example response Json body for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/datastores.
 
[{
  "DatastoreIdentifier": "String content",
  "DatastoreName": "String content"
}
{
  "DatastoreIdentifier": "String content",
  "DatastoreName": "String content"
}]
 
Devices for all hosts
The following is an example response Json body for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/devices
 
[{
  "DeviceIdentifier": "String content",
  "DatastoreIdentifier": "String content",
  "VmIdentifier": "String content",
  "HostIdentifiers {
    "HostIdentifier": "String content"
    }
  "SizeInKb":
}]
Devices for a specific host
The following is an example response Json body for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/devices&hostIdentifier={hostIdentifier}
 
{
  "DeviceIdentifier": "String content",
  "DatastoreIdentifier": "String content",
  "VmIdentifier": "String content",
  "HostIdentifier": "String content",
  "SizeInKb":
}
 
 
Folders
The following is an example response Json body for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/folders.
 
[{
  "FolderIdentifier": "String content",
  "FolderName": "String content"
}
{
  "FolderIdentifier": "String content",
  "FolderName": "String content"
}]
 
Host clusters
The following is an example response Json body for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/hostclusters.
 
[{
  "ClusterIdentifier": "String content",
  "VirtualizationClusterName": "String content"
}
{
  "ClusterIdentifier": "String content",
  "VirtualizationClusterName": "String content"
}]
 
Hosts
The following is an example response Json body for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/hosts and for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/hosts/{hostIdentifier}.
 
[{
  "HostIdentifier": "String content",
  "VirtualizationHostName": "String content"
}
{
  "HostIdentifier": "String content",
  "VirtualizationHostName": "String content"
}]
 
Networks
The following is an example response Json body for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/networks.
 
[{
  "NetworkIdentifier": "String content",
  "VirtualizationNetworkName": "String content"
}
{
  "NetworkIdentifier": "String content",
  "VirtualizationNetworkName": "String content"
}]
VMware only: Resource Pools
The following is an example response Json body for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/resourcepools.
 
[{
  "ResourcePoolIdentifier": "String content",
  "ResourcepoolName": "String content"
}
{
  "ResourcePoolIdentifier": "String content",
  "ResourcepoolName": "String content"
}]
 
Unprotected VMs
The following is an example response Json body for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/vms
 
[{
  "VmIdentifier": "String content",
  "VmName": "String content"
}
{
  "VmIdentifier": "String content",
  "VmName": "String content"
}]
 
VM Instance Type
The following is an example response Json body for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/publicCloud/vmInstanceTypes
 
[{
  “VMInstanceType”: “Standard_DS1_v2”,
  “Description”: “string” ,
  “VMSeries”: “DSv-2”,
  “IsPremiumSupported”: boolean
}
{
 
Available vNets
The following is an example response Json body for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/publicCloud/virtualNetworks
 
[{
  “VirtualNetworkIdentifier”: string,
  “VirtualNetworkName”: string
}
{
 
Available Subnets
The following is an example response Json body for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/publicCloud/subnets
 
[{
  “VirtualNetworkIdentifier”:string,
  “SubnetIdentifier”: string,
  “SubnetName”: string,
  “IPRange”: string - e.g. 10.0.0.0/24
}
{
 
Security Groups
The following is an example response Json body for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/publicCloud/securityGroups
 
[{
  “SecurityGroupIdentifier”: string,
  “SecurityGroupName”: string
}
{
 
XML Response Format
For the XML response format, see “Virtualization Sites API XML Response Format”, on page 369.
Response Values
Response values for https://zvm_ip:port/v1/virtualizationsites and for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}.
 
Parameter
Description
SiteIdentifier
The identifier of the Zerto Virtual Manager site.
VirtualizationSiteName
The hypervisor manager name. For example the VMware vCenter Server name or Microsoft SCVMM name.
 
Response values for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/datastoreclusters.
 
Parameter
Description
DatastoreClusterName
The storage cluster name.
 
Note: Storage in Microsoft SCVMM is also returned using this API.
Response values for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/datastores.
 
Parameter
Description
DatastoreIdentifier
The internal identifier of the storage. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.
DatastoreName
The storage name.
 
Note: Storage in Microsoft SCVMM is also returned using this API and the response labels are DatastoreIdentifier and DatastoreName.
Response values for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/devices
 
Parameter
Description
DeviceIdentifier
The unique identifier of the device.
DatastoreIdentifier
The identifier of the datastore that uses the device. If no value is set (null), then it means no datastore is using this device. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.
VmIdentifier
This the identifier of the VM that uses this device. If no VM is using this device, then value is null. When a device is used directly by a VM, this state is called RDM (Raw Device Management).
HostIdentifiers
A list of all hosts that can reach this device. That is, this device can be allocated for any entity in the domain of the particular host (datastore or VM).
HostIdentifier
The unique identifier of the host.
SizeInKb
The amount of storage allocated for the device
Response values for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/devices&hostIdentifier={hostIdentifier}
 
Parameter
Description
DeviceIdentifier
The unique identifier of the device.
DatastoreIdentifier
The identifier of the datastore where the disk is stored.The identifier comprises the server identifier and the storage moref, with the format, serverid.moref
VmIdentifier
The unique identifier of the VM
HostIdentifier
The unique identifier of the host.
SizeInKb
The size of the device in KB.
 
Response values for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/folders.
 
Parameter
Description
FolderIdentifier
The internal identifier of the folder. The identifier comprises the server identifier and the folder moref, with the format, serverid.moref.
FolderName
The folder name.
 
Response values for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/hostclusters.
 
Parameter
Description
ClusterIdentifier
The unique identifier of the host cluster. The identifier comprises the server identifier and the host cluster moref, with the format, serverid.moref.
VirtualizationClusterName
The name of the host cluster.
 
Response values for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/hosts and for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/hosts/{hostIdentifier}.
 
Parameter
Description
HostIdentifier
The unique identifier of the host.
VirtualizationHostName
The name of the host.
 
Response values for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/networks.
 
Parameter
Description
NetworkIdentifier
The internal identifier of the network.
VirtualizationNetworkName
The network name.
If identical network names are returned, the switch name will be added to the network name. For example, VM network (DSwitch).
 
VMware only: Response values for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/resourcepools.
 
Parameter
Description
ResourcePoolIdentifier
The internal identifier of the resource pool.
ResourcepoolName
The resource pool name.
 
Response values for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/vms.
 
Parameter
Description
VmIdentifier
The internal identifier of the virtual machine that is not protected by Zerto.
VmName
The virtual machine name that is not protected by Zerto.
 
Note: The response includes:
a) Virtual machines that are not protected in any VPG.
b) Virtual machines that are protected in VPGs but can be protected in additional VPGs. A virtual machine can be protected in a maximum number of three VPGs as long as:
The VPGs do not recover to the same site.
The protected and recovery sites, as well as the VRAs on each site, are of version 5.0 and higher.
 
 
Response values for https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/publicCloud/vmInstanceTypes
 
Parameter
Description
VmIdentifier
The internal identifier of the virtual machine that is not protected by Zerto.
VmName
The virtual machine name that is not protected by Zerto.
Need to add for the other 3 as well.