Zerto APIs : vSphere to Azure VPG Management APIs : vSphere to Azure - Create New VPG Settings
  
vSphere to Azure - Create New VPG Settings
To create a VPG, run the following APIs:
1. Get a VPG Settings Identifier
2. Get an Empty VPG Template
3. Add Values in the Empty VPG Template
4. Get a Full VPG Template
 
 
 
Get a VPG Settings Identifier
Run this API to get a VPG settings identifier. With the VPG Settings Identifier, you can request for an empty VPG template.
Request Body Using Json Format
Response In Json Format
 
method
url
POST
https://zvm_ip:port/v1/vpgSettings
 
Where:
 
zvm_ip
The IP address of the Zerto Virtual Manager where the API is run.
port
The port to access the Zerto Virtual Manager. The default port is 9669.
 
Request Body Using Json Format
You can create a skeleton VPG settings object by using the following request body:
{}
Response In Json Format
The following is an example response.
 
{
  "VpgSettingsIdentifier": "String content"
}
 
VpgSettingsIdentifier
The identifier of the VPG settings.
 
Back to vSphere to Azure VPG Management APIs
Back to All APIs
Get an Empty VPG Template
Run this API to get an empty VPG template to create a new VPG. Use this template to add parameters values for the VPG Settings Identifier. See Add Values in the Empty VPG Template.
 
method
url
GET
https://zvm_ip:port/v1/vpgSettings/{VpgSettingsIdentifier}
 
Where:
 
zvm_ip
The IP address of the Zerto Virtual Manager where the API is run.
port
The port to access the Zerto Virtual Manager. The default port is 9669.
VpgSettingsIdentifier
The identifier of the VPG settings.
 
Request Body Using Json Format
Response In Json Format
Request Body Using Json Format
The request body is empty.
Response In Json Format
The following is an example response.
 
[{
  "Backup": "String Content",
  "Basic": {
    "JournalHistoryInHours": number,
    "Name": "String Content",
    "Priority": "String Content",
    "ProtectedSiteIdentifier": "String Content",
    "RecoverySiteIdentifier": "String Content",
    "RpoInSeconds": Number,
    "ServiceProfileIdentifier": "String Content",
    "TestIntervalInMinutes":Number,
    "UseWanCompression": Boolean,
    "ZorgIdentifier": "String Content"
  },
  "BootGroups": {
    "BootGroups":[{
      "BootDelayInSeconds": Number,
      "BootGroupIdentifier": "String Content",
      "Name": "String Content"
    }]
  },
  "Journal": {
    "DatastoreIdentifier": "String Content",
    "Limitation": {
      "HardLimitInMB": Number,
      "HardLimitInPercent": Number,
      "WarningThresholdInMB": Number,
      "WarningThresholdInPercent": Number
    }
  },
  "Networks": {
    "Failover": {
      Hypervisor": {
        "DefaultNetworkIdentifier": "String Content"
      },
      "PublicCloud": null,
      "VCD": null
    },
    "FailoverTest": {
      "Hypervisor": {
        "DefaultNetworkIdentifier": "String Content"
      },
      "PublicCloud": null,
      "VCD": null
    }
  },
  "Protected":{
    "VCD": null
  },
  "Recovery": {
    "DefaultDatastoreClusterIdentifier": "String Content",
    "DefaultDatastoreIdentifier": "String Content",
    "DefaultFolderIdentifier": "String Content",
    "DefaultHostClusterIdentifier": "String Content",
    "DefaultHostIdentifier": "String Content",
    "PublicCloud": null,
    "ResourcePoolIdentifier": "String Content"
    "VCD": null
  },
  "Scripting": {
    "PostBackup": "String Content",
    "PostRecovery": {
      "Command": "String Content",
      "Parameters": null,
      "TimeoutInSeconds": Number
    },
    "PreRecovery": {
      "Command": "String Content",
      "Parameters": "String Content",
      "TimeoutInSeconds": Number
  },
  "Vms": [],
  "VpgIdentifier": "String Content",
  "VpgSettingsIdentifier": "String Content"
}]
 
 
 
 
 
Add Values in the Empty VPG Template
Add values for the new VPG by running a PUT API. The empty template includes mandatory fields for creating a VPG. The mandatory fields are specified in the Request Body Using Json Format.
By running the PUT API with a value in RecoverySiteIdentifier, you are defining the recovery site as an Azure site.
After adding the values in the empty template, run a GET API to receive the full template, with the newly defined parameters and their sub-parameters. Run a PUT API to add values for the sub-parameters. See Get a Full VPG Template.
Note: Once all parameters are set, commit the changes using POST commit with the full JSON request body:
https://zvm_ip:port/v1/vpgSettings/{VpgSettingsIdentifier}/commit
 
method
url
PUT
https://zvm_ip:port/v1/vpgSettings/{VpgSettingsIdentifier}
Where:
 
zvm_ip
The IP address of the Zerto Virtual Manager where the API is run.
port
The port to access the Zerto Virtual Manager. The default port is 9669.
VpgSettingsIdentifier
The identifier of the VPG settings.
Request Body Using Json Format
Response In Json Format
Request Body Using Json Format
The following is an example vSphere to Azure request Json body.
 
[{
  "Basic": {
    "Name": "string content",
    "ProtectedSiteIdentifier": "string content",
    "RecoverySiteIdentifier": "string content"
  },
  "Networks": {
    "Failover": {
     "PublicCloud": {
      "VirtualNetworkIdentifier": "string content",
      "SubnetIdentifier": "string content",
      "SecurityGroupIdentifier": "string content"
     }
    },
    "FailoverTest": {
     "PublicCloud": {
      "VirtualNetworkIdentifier": "string content",
      "SubnetIdentifier": "string content",
      "SecurityGroupIdentifier": "string content"
     }
    }
  },
  "Recovery": {
    "PublicCloud": {
     "Failover": {
      "VmInstanceType": string,
      "Azure":{
       "RecoveryDiskType": string
      }
     },
     "FailoverTest": {
      "VmInstanceType": string,
      "Azure":{
       "RecoveryDiskType": string
      }
     }
    }
  },
  "Vms": [
    {
     "VmIdentifier": "string content"
    }
  ]
}
 
Parameter
Description
Mandatory
Default
Basic
 
Name
The name of the VPG.
Yes
 
ProtectedSiteIdentifier
The identifier of the site where the VPG will be protected. This is the site where the API runs.
Yes
Current site
RecoverySiteIdentifier
The identifier of the site where the VPG will be recovered.
Yes
 
Networks
Failover
Information about the networks used for failover.
 
 
PublicCloud
VirtualNetworkIdentifier
The identifier of the virtual network. This is the default recovery settings applied to every virtual machine in the VPG.
Yes
 
SubnetIdentifier
The identifier of the subnet which is under the specified virtual network. This is the default recovery settings applied to every virtual machine in the VPG. See Available Subnets.
Yes
 
SecurityGroupIdentifier
The identifier of the Azure network security to be associated with the virtual machines in this VPG. This is the default recovery settings applied to every virtual machine in the VPG. See Security Groups.
Yes
None
FailoverTest
Information about the networks used for testing failover.
 
 
PublicCloud
VirtualNetworkIdentifier
The identifier of the virtual network. This is the default recovery settings applied to every virtual machine in the VPG.
Yes
 
SubnetIdentifier
The identifier of the subnet which is under the specified virtual network. This is the default recovery settings applied to every virtual machine in the VPG.
Yes
 
SecurityGroupIdentifier
The identifier of the Azure network security to be associated with the virtual machines in this VPG. This is the default recovery settings applied to every virtual machine in the VPG.
Yes
None
Recovery
 
PublicCloud
Failover
 
 
 
VmInstanceType
The virtual machine instance type, within the virtual machine series, to assign to recovered virtual machines. Different sizes within a virtual machine series vary, for example in a number of cores, RAM, and local storage size.
Yes
 
Azure
 
 
 
RecoveryDiskType
The Azure recovery storage type to which the entire VPG will be recovered; UnmanagedStandard or ManagedPremiumSSD.
Yes
UnmanagedStandard
FailoverTest
 
 
 
VmInstanceType
The virtual machine instance type, within the virtual machine series, to assign to recovered virtual machines. Different sizes within a virtual machine series vary, for example in a number of cores, RAM, and local storage size.
Yes
 
Azure
 
 
 
RecoveryDiskType
The Azure recovery storage type to which the entire VPG will be recovered; UnmanagedStandard or ManagedPremiumSSD.
Yes
UnmanagedStandard
Vms
VmIdentifier
The identifier of the selected VM to be protected.
Yes
 
 
Response In Json Format
The response body is empty.
Get a Full VPG Template
After you add the values to the mandatory parameters, run this API to receive a more detailed template. The detailed template includes sub-parameters of the parameters to which you added values. Add values to the sub-parameters using the PUT API. See Add Values in the Empty VPG Template.
 
method
url
GET
https://zvm_ip:port/v1/vpgSettings/{VpgSettingsIdentifier}
 
Where:
 
zvm_ip
The IP address of the Zerto Virtual Manager where the API is run.
port
The port to access the Zerto Virtual Manager. The default port is 9669.
VpgSettingsIdentifier
The identifier of the VPG settings.
 
Request Body Using Json Format
Response In Json Format
Request Body Using Json Format
The request body is empty.
Response In Json Format
The following is an example Azure response Json body.
 
{
  "Backup": null,
  "Basic": {
    "JournalHistoryInHours": 24,
    "Name": "String Content",
    "Priority": "String Content",
    "ProtectedSiteIdentifier": "String Content",
    "RecoverySiteIdentifier": "String Content",
    "RpoInSeconds": 300,
    "ServiceProfileIdentifier": "string content"
    "TestIntervalInMinutes": 262080,
    "UseWanCompression": Boolean,  },
  "BootGroups":null,
  "Journal":null,
  "Networks": {
    "Failover": {
     "Hypervisor": null,
     "PublicCloud": {
      "VirtualNetworkIdentifier": "string content",
      "SubnetIdentifier": "string content",
      "SecurityGroupIdentifier": "string content"
     },
     "VCD": null
    },
    "FailoverTest": {
     "Hypervisor": null,
     "PublicCloud": {
      "VirtualNetworkIdentifier": "string content",
      "SubnetIdentifier": "string content",
      "SecurityGroupIdentifier": "string content"
     },
     "VCD": null
    }
  },
  "Recovery": {
    "DefaultDatastoreClusterIdentifier": null,
    "DefaultDatastoreIdentifier": null,
    "DefaultFolderIdentifier": null,
    "DefaultHostClusterIdentifier": null,
    "DefaultHostIdentifier": null,
    "PublicCloud": {
     "Failover": {
      "VmInstanceType": "string content",
      "Azure":{
       "RecoveryDiskType": "string content"
      }
     },
     "FailoverTest": {
      "VmInstanceType": "string content",
      "Azure":{
       "RecoveryDiskType": "string content"
      }
     }
    },
    "ResourcePoolIdentifier": null,
    "VCD": null
  },
  "Vms":[
  {
   "BootGroupIdentifier": null,
   "Journal": null,
   "Nics": [
   {
    "Failover": {
     "Hypervisor": null,
     "PublicCloud": {
      "PrivateIP": "string content",
      "VirtualNetworkIdentifier": "string content",
      "SubnetIdentifier": "string content",
      "SecurityGroupIdentifier": "string content"
     },
     "VCD": null
    },
    "FailoverTest": {
     "Hypervisor": null,
     "PublicCloud": {
      "PrivateIP": "string content",
      "VirtualNetworkIdentifier": "string content",
      "SubnetIdentifier": "string content",
      "SecurityGroupIdentifier": "string content"
     },
     "VCD": null
    },
    "NicIdentifier":"String content"
   }
  ],
  "Recovery": {
    "DatastoreClusterIdentifier": null,
    "DatastoreIdentifier": null,
    "FolderIdentifier": null,
    "HostClusterIdentifier": null,
    "HostIdentifier": null,
    "PublicCloud": {
     "Failover": {
      "VmInstanceType": "string content",
      "Azure":{
       "RecoveryDiskType": "string content"
      }
     },
     "FailoverTest": {
      "VmInstanceType": "string content",
      "Azure":{
       "RecoveryDiskType": "string content"
      }
     }
    },
    "ResourcePoolIdentifier": null,
    "VCD": null
  },
  "VmIdentifier": "string content",
    "Volumes":[{
      "Datastore": null,
      "IsSwap": Boolean,
      "Preseed": null,
      "RDM": null,
      "VCD":null,
      "VolumeIdentifier":"String content"
    }]
  },
 ]
  "VpgIdentifier": "String Content",
  "VpgSettingsIdentifier": "String Content"
}
 
Parameter
Description
Mandatory
Default
Basic
 
 
JournalHistoryInHours
The time that all write commands are saved in the journal. The value is between 1 and 336 (14 days).
 
24
Name
The name of the VPG.
Yes
 
Priority
The priority specified for the VPG. Possible values are:
â–  Low: The VPG has a low priority for transferring data.
â–  Medium: The VPG has a medium priority for transferring data.
â–  High: The VPG has a high priority for transferring data.
 
Medium
ProtectedSiteIdentifier
The identifier of the site where the VPG will be protected. This is the site where the API runs.
Yes
 
RecoverySiteIdentifier
The identifier of the site where the VPG will be recovered.
Yes
 
RpoInSeconds
The maximum desired time between each automatic checkpoint being written to the journal before an alert is issued.
 
300
TestIntervalInMinutes
The time, in minutes, recommended between testing the integrity of the VPG. A warning is issued if a test is not done within this time frame. Possible values are:
â–  0: No testing is expected.
â–  43200 or null: Testing is expected monthly.
â–  131040: Testing is expected every three months.
â–  262080: Testing is expected every six months.
â–  394560: Testing is expected every nine months.
â–  525600: Testing is expected every twelve months.
 
262080
UseWanCompression
True: Data will be compressed before sending it to the recovery site.
False: Data will not be compressed before sending it to the recovery site.
 
True
Networks
 
 
Failover
Information about the networks used for failover.
 
 
PublicCloud
 
 
VirtualNetworkIdentifier
The identifier of the virtual network. This is the default recovery settings applied to every virtual machine in the VPG.
Yes
 
SubnetIdentifier
The identifier of the subnet which is under the specified virtual network. This is the default recovery settings applied to every virtual machine in the VPG.
Yes
 
SecurityGroupIdentifier
The identifier of the Azure network security to be associated with the virtual machines in this VPG. This is the default recovery settings applied to every virtual machine in the VPG.
Yes
None
FailoverTest
Information about the networks used for testing failover.
 
 
PublicCloud
 
 
VirtualNetworkIdentifier
The identifier of the virtual network. This is the default recovery settings applied to every virtual machine in the VPG.
Yes
 
SubnetIdentifier
The identifier of the subnet which is under the specified virtual network. This is the default recovery settings applied to every virtual machine in the VPG.
Yes
 
SecurityGroupIdentifier
The identifier of the Azure network security to be associated with the virtual machines in this VPG. This is the default recovery settings applied to every virtual machine in the VPG.
Yes
None
Recovery
 
 
PublicCloud
 
 
Failover
 
 
 
VmInstanceType
The virtual machine instance type, within the virtual machine series, to assign to recovered virtual machines. Different sizes within a virtual machine series vary, for example in a number of cores, RAM, and local storage size.
Yes
 
Azure
 
 
 
RecoveryDiskType
The Azure recovery storage type to which the entire VPG will be recovered; UnmanagedStandard or ManagedPremiumSSD .
Yes
UnmanagedStandard
FailoverTest
 
 
 
VmInstanceType
The virtual machine instance type, within the virtual machine series, to assign to recovered virtual machines. Different sizes within a virtual machine series vary, for example in a number of cores, RAM, and local storage size.
Yes
 
Azure
 
 
 
RecoveryDiskType
The Azure recovery storage type to which the entire VPG will be recovered; UnmanagedStandard or ManagedPremiumSSD.
Yes
UnmanagedStandard
Vms
 
 
Nics
 
 
Failover
Information about the networks used for failover.
 
 
PublicCloud
 
 
PrivateIP
 
 
DHCP
VirtualNetworkIdentifier
The identifier of the virtual network. This is the default recovery settings applied to every virtual machine in the VPG.
Yes
 
SubnetIdentifier
The identifier of the subnet which is under the specified virtual network. This is the default recovery settings applied to every virtual machine in the VPG.
Yes
 
SecurityGroupIdentifier
The identifier of the Azure network security to be associated with the virtual machines in this VPG. This is the default recovery settings applied to every virtual machine in the VPG.
Yes
None
FailoverTest
Information about the networks used for testing failover.
 
 
PublicCloud
 
 
VirtualNetworkIdentifier
The identifier of the virtual network. This is the default recovery settings applied to every virtual machine in the VPG.
Yes
 
SubnetIdentifier
The identifier of the subnet which is under the specified virtual network. This is the default recovery settings applied to every virtual machine in the VPG.
Yes
 
SecurityGroupIdentifier
The identifier of the Azure network security to be associated with the virtual machines in this VPG. This is the default recovery settings applied to every virtual machine in the VPG.
Yes
None
NicIdentifier
The identifier of the NIC for which settings are returned.
Protecting to Azure this value is NULL.
 
 
Recovery
 
 
PublicCloud
 
 
Failover
 
 
 
VmInstanceType
The virtual machine instance type, within the virtual machine series, to assign to recovered virtual machines. Different sizes within a virtual machine series vary, for example in a number of cores, RAM, and local storage size.
Yes
 
Azure
 
 
 
RecoveryDiskType
The Azure recovery storage type to which the entire VPG will be recovered; UnmanagedStandard or ManagedPremiumSSD .
Yes
UnmanagedStandard
FailoverTest
 
 
 
VmInstanceType
The virtual machine instance type, within the virtual machine series, to assign to recovered virtual machines. Different sizes within a virtual machine series vary, for example in a number of cores, RAM, and local storage size.
Yes
 
Azure
 
 
 
RecoveryDiskType
The Azure recovery storage type to which the entire VPG will be recovered; UnmanagedStandard or ManagedPremiumSSD.
Yes
UnmanagedStandard
VmIdentifier
The identifier of the virtual machine. The identifier comprises the server identifier and the virtual machine moref, with the format, serverid.more.
 
 
Volumes
Information about the volumes used by the virtual machine.
 
 
IsSwap
True: The recovery disk is marked as a temp data disk.
False: The recovery disk is not marked as a temp data disk.
 
 
VolumeIdentifier
The identifier of the volume.
 
 
VpgIdentifier
The VPG identifier will be specified if a VPG was already created in a previous session.
 
 
VpgSettingsIdentifier
The identifier received after running the following POST API: https://zvm_ip:port/v1/vpgSettings
 
 
 
Back to vSphere to Azure VPG Management APIs
Back to All APIs