vSphere to Azure VPG Management APIs

Important:  This document is being phased out and does not contain up-to-date information. For updated API documentation for Zerto versions 9.5 and later, see ZVM REST API - Swagger.

You can also access Swagger from the ZVM: click the menu button () on the top right and select APIs or navigate to https://<ZVM IP>:9669/swagger/index.html in a Windows ZVM or https://<ZVM IP>/management/api/swagger/index.html in ZVM Appliance.

Using the VpgSettings APIs, you can create, edit and delete VPGs from a protected vSphere site to a recovery vCD site.

The same VPGSettings parameters apply across all platforms. When recovering from vSphere to Azure, the following parameters are specific to Azure:

SecurityGroupIdentifier
SubnetIdentifier
VirtualNetworkIdentifier
VmInstanceType
RecoveryDiskType

This section includes the following:

vSphere to Azure - Create New VPG Settings
vSphere to Azure - Edit Existing VPG Settings
vSphere to Azure - Delete Existing 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 for a new VPG. Use this template to add 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.

[{
  "Extended Journal Copy": "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": "String Content"
    },
    "FailoverTest": {
      "Hypervisor": {
        "DefaultNetworkIdentifier": "String Content"
      }
      "PublicCloud": null,
      "VCD": "String Content"
    }
  },
  "Protected": {
    "VCD": {
    }
  }

  "Recovery": {
    "DefaultDatastoreClusterIdentifier": "String Content",
    "DefaultDatastoreIdentifier": "String Content",
    "DefaultFolderIdentifier": "String Content",
    "DefaultHostClusterIdentifier": "String Content",
    "DefaultHostIdentifier": "String Content",
    "PublicCloud": null,
    "ResourcePoolIdentifier": "String Content"
    "VCD": {
    }
  },

  "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 a 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.

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"
    "ServiceProfileIdentifier": "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 virtual machines 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.

See Available vNets.

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.

See Available vNets.

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

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.

See VM Instance Type.

Yes None

Azure

     

RecoveryDiskType

The Azure recovery storage type to which the entire VPG will be recovered; UnmanagedStandard,ManagedPremiumSSD ManagedStandardSSD or ManagedStandardHDD.

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 basic 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.

[{

  "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 virtual machines will be protected. This is the site where the API runs.

Yes  

RecoverySiteIdentifier

The identifier of the site where the VPG virtual machines 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
Network

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.

See Available vNets.

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 failover.    
PublicCloud
     

VirtualNetworkIdentifier

The identifier of the virtual network. This is the default recovery settings applied to every virtual machine in the VPG.

See Available vNets.

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

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.

See VM Instance Type.

Yes  
Azure
     
RecoveryDiskType

The Azure recovery storage type to which the entire VPG will be recovered; UnmanagedStandard,ManagedPremiumSSD ManagedStandardSSD or ManagedStandardHDD.

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.

See VM Instance Type.

Yes  
Azure
     
RecoveryDiskType

The Azure recovery storage type to which the entire VPG will be recovered; UnmanagedStandard,ManagedPremiumSSD ManagedStandardSSD or ManagedStandardHDD.

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.

See Available vNets.

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  
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.

See VM Instance Type.

Yes  
Azure
     
RecoveryDiskType
The Azure recovery storage type to which the entire VPG will be recovered; UnmanagedStandard,ManagedPremiumSSD ManagedStandardSSD or ManagedStandardHDD. 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.

See VM Instance Type.

Yes  
Azure
     
RecoveryDiskType
The Azure recovery storage type to which the entire VPG will be recovered; UnmanagedStandard,ManagedPremiumSSD ManagedStandardSSD or ManagedStandardHDD. 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

vSphere to Azure - Edit Existing VPG Settings

The PUT method is used to update a VPG settings object.

Edit VPG settings object

https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}

Edit basic settings object

https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/basic

Edit network settings object

https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/networks

Edit VM settings object

https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}

Edit a specific volume, of a specific VM

https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}/volumes/{volumeId}

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 object.

vmIdentifier

The identifier of the virtual machine. The identifier comprises the server identifier and the virtual machine moref, with the format, serverid.moref.

Request Body Using Json Format

The following is an example of a request body in Json format for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}.

[{

  "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"

     "Hypervisor": null,


     }
      "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": {
  },
  "VmIdentifier": "string content",

    "Volumes":[{
      "Datastore": null,
      "IsSwap": Boolean,
      "Preseed": null,
      "RDM": null,
      "VCD": null
      "VolumeIdentifier":"String content"
    }]
  },
 ]

  "VpgIdentifier": "String Content",
  "VpgSettingsIdentifier": "String Content"
}

The following is an example of a request body in Json format for

https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/basic.

 {
    "JournalHistoryInHours": 24,
    "Name": "String Content",
    "Priority": "String Content",
    "ProtectedSiteIdentifier": "String Content",
    "RecoverySiteIdentifier": "String Content",
    "RpoInSeconds": 300,
    "ServiceProfileIdentifier": "string content"
    "TestIntervalInMinutes": 262080,
    "UseWanCompression": Boolean,  },
  }

The following is an example of a request body in Json format for

https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/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
    }
  }

The following is an example of a request body in Json format for

https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}

    "BootGroupIdentifier": null,
    "Journal": null,

   "Nics": [
   {
    "Failover":{
     "Hypervisor": null,
     "PublicCloud": {
      "PrivateIP": "string content",
      "VirtualNetworkIdentifier": "string content",
      "SubnetIdentifier": "string content",
      "SecurityGroupIdentifier": "string content"
     },
     "VCD":
    },
    "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"
    }]
}

The following is an example of a request body in Json format for

https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}/volumes/{volumeId}.

{
      "Datastore": null,
      "IsSwap": Boolean,
      "Preseed": null,
      "RDM": null,
      "VCD":null,
      "VolumeIdentifier":"String content"
]

Request Values

Update a VPG settings object

Update the basic settings in a VPG settings object

Update the network settings in a VPG settings object

Update the virtual machine settings in a VPG settings object - vmIdentifier

Update the virtual machine settings in a VPG settings object - volumeId

Update a VPG settings object

Request values for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}

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 virtual machines will be protected. This is the site where the API runs.

Yes  

RecoverySiteIdentifier

The identifier of the site where the VPG virtual machines 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.

See Available vNets.

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 failover test.

   

PublicCloud

   

VirtualNetworkIdentifier

The identifier of the virtual network. This is the default recovery settings applied to every virtual machine in the VPG.

See Available vNets.

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

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.

See VM Instance Type.

Yes  

Azure

     

RecoveryDiskType

The Azure recovery storage type to which the entire VPG will be recovered; UnmanagedStandard,ManagedPremiumSSD ManagedStandardSSD or ManagedStandardHDD. 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.

See VM Instance Type.

Yes  
Azure
     

RecoveryDiskType

The Azure recovery storage type to which the entire VPG will be recovered;UnmanagedStandard,ManagedPremiumSSD ManagedStandardSSD or ManagedStandardHDD. 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.

See Available vNets.

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  

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.

See Available vNets.

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

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.

See VM Instance Type.

Yes  

Azure

     

RecoveryDiskType

The Azure recovery storage type to which the entire VPG will be recovered; UnmanagedStandard,ManagedPremiumSSD ManagedStandardSSD or ManagedStandardHDD.

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.

See VM Instance Type.

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

     

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

   
Update the basic settings in a VPG settings object

Request values for https://zvm_ip:port/v1/vpgSettings/basic.

Parameter

Description

Mandatory Default

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 virtual machines will be protected. This is the site where the API runs.

Yes  

RecoverySiteIdentifier

The identifier of the site where the VPG virtual machines 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
Update the network settings in a VPG settings object

Request values for https://zvm_ip:port/v1/vpgSettings/networks.

Parameter

Description

Mandatory Default

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.

See Available vNets.

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 failover test.

   

PublicCloud

   

VirtualNetworkIdentifier

The identifier of the virtual network. This is the default recovery settings applied to every virtual machine in the VPG.

See Available vNets.

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
Update the virtual machine settings in a VPG settings object - vmIdentifier

Request values for

https://zvm_ip:port/v1/vpgSettings/vms/{vmIdentifier}/{vmIdentifier}.

Parameter

Description

Mandatory Default

Nics

   

Failover

Information about the networks used for failover by this virtual machine.

   

PublicCloud

   

PrivateIP

 

  DHCP

VirtualNetworkIdentifier

The identifier of the virtual network. This is the default recovery settings applied to every virtual machine in the VPG.

See Available vNets.

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 failover test by this virtual machine.

   

PublicCloud

   

VirtualNetworkIdentifier

The identifier of the virtual network. This is the default recovery settings applied to every virtual machine in the VPG.

See Available vNets..

Yes  

SubnetIdentifier

True: Is NIC connectedThe 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

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.

See VM Instance Type.

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.

See VM Instance Type.

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.

   
Update the virtual machine settings in a VPG settings object - volumeId

Request values for

https://zvm_ip:port/v1/vpgSettings/vms/{vmIdentifier}/{vmIdentifier}/volumes/{volumeId}.

Parameter

Description

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.

Response Format

The response bodies are empty.

vSphere to Azure - Delete Existing VPG Settings

Delete all or part of the VPG settings object.

Note: Mandatory parameters that do not have a default value must be set using the PUT command after using the Delete option.

URL

Delete a VPG settings object

https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}

Delete basic settings from a VPG

https://zvm_ip:port/v1/{vpgSettingsIdentifier}/basic

Delete network settings from a VPG

https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/networks

Delete recovery settings from a VPG

https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/recovery

Delete a VM from a VPG

https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}

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 object.

Request Body Using Json Format

The request bodies are empty.

Response Format

The response bodies are empty.