vSphere to vCD 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 VPGSettings parameters are the same across all platforms. In the case of vSphere to vCD, only RecoveryOrgVdcNetworkIdentifier and RecoveryStoragePolicyIdentifier are parameters which are specific to vCD.

This section includes the following:

Create New VPG Settings
Edit Existing VPG Settings
Delete Existing VPG Settings

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

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


{   
  "LongTermRetention": {
   "Enabled": "Boolean",
   "RepositoryIdentifier": "repositoryIdentifier",
    "RetentionRunTime": "hh:mm",
     "RetentionSchedulePolicy": {
      "Daily": {
       "Enabled": "Boolean",
          "RetentionDuration": {
           "Count": "Integer",
         "DurationType": "Days|Weeks|Months|Years"
         }
   },
    "Weekly": {
      "Enabled": "Boolean",
        "DayOfWeek": "Sunday..Saturday",
                 "RetentionType": "Full|Incremental",
      "RetentionDuration": {
        "Count": "Integer",
        "DurationType": "Days|Weeks|Months|Years"
      }
    },
       "Monthly":
      "Enabled": "Boolean",
        "DayOfWeek: "Sunday..Saturday",
              "WeekOfMonth": "First|Second|Third|Fourth|Last",
       "DayOfMonth": "1..28|Last",
           "RetentionType": "Full|Incremental",
       "RetentionDuration": {
        "Count": "Integer",
        "DurationType": "Days|Weeks|Months|Years"
         }
   },
    "Yearly": {
      "Enabled": Boolean,
      "DayOfWeek": "Sunday..Saturday",
      "DayOfYear": "First|Last",
      "MonthOfYear": "January..December",
      "DayOfMonth": "1..31",
      "RetentionDuration": {
        "Count": "Integer",
        "DurationType": "Days|Weeks|Months|Years"
      }
    }
},
  "Retry": {
    "Enabled": "Boolean",
    "NumberOfAttempts": "Integer",
    "IntervalInMinutes": "Integer"
 },
  "Indexing": {
     "Vms": [ "VmIdentifier" ]
  }
 }
}

  "Networks": {
    "Failover": {
      Hypervisor": {
        "DefaultNetworkIdentifier": "String Content"
      }
      "VCD": "String Content"
    },
    "FailoverTest": {
      "Hypervisor": {
        "DefaultNetworkIdentifier": "String Content"
      }
      "VCD": "String Content"
    }
  },
  "Protected": {
    "VCD": {
    }
  }

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

  "Scripting": {
    
    "PreRecovery": {
      "Command": "String Content",
      "Parameters": "String Content",
      "TimeoutInSeconds": Number
  },

  "Vms": [],
  "VpgIdentifier": "String Content",
  "VpgSettingsIdentifier": "String Content"
}]

Add Values in the Empty VPG Template

Once you get the empty 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 RecoveryOrgVdcIdentifier, you are defining the recovery site as a vCD site. When RecoveryOrgVdcIdentifier is set, both the RecoveryOrgVdcNetworkIdentifier and RecoveryStoragePolicyIdentifier get a default value.

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 to create a VPG:

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

 

Request Body Using Json Format

Response In Json Format

Request Body Using Json Format

The following is an example vSphere to vCD request Json body.

[{

  "Basic": {
    "Name": "string content",
    "ProtectedSiteIdentifier": "string content",
    "RecoverySiteIdentifier": "string content"
    "ServiceProfileIdentifier": "string content"
  },

  "Networks": {
    "Failover": {
     "VCD": {
      "DefaultRecoveryOrgVdcNetworkIdentifier": "string content"
     }
    },
    "FailoverTest": {
     "VCD": {
      "DefaultRecoveryOrgVdcNetworkIdentifier": "string content"
     }
    },

  "Recovery": {
    "VCD": {
     "OrgVdcIdentifier": "'+RecoveryOrgVdcIdentifier+'"
    }
  },
  "Vms": [
    {
     "Recovery": {
      "VCD": {
       "StoragePolicyIdentifier": "string content"

      }
     },
     "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.

 

Current site

RecoverySiteIdentifier

The identifier of the site where the VPG virtual machines will be recovered.

Yes

 

ServiceProfileIdentifier

The identifier of the service profile to use for the VPG when a Zerto Cloud Manager is used.

Yes (for ZCM)

 

Networks

 

Failover

Information about the networks used for failover.

 

 

VCD

DefaultRecoveryOrgVdcNetworkIdentifier

The identifier of the Org vDC network. This is the default recovery settings applied to every virtual machine in the VPG. When OrgVdcIdentifier is set, DefaultRecoveryOrgVdcNetworkIdentifier is set by default. Default value is none or "00000000-0000-0000-0000-000000000000."

 

None

FailoverTest

Information about the networks used for testing failover.

 

 

VCD

DefaultRecoveryOrgVdcNetworkIdentifier

The identifier of the Org vDC network. This is the default recovery settings applied to every virtual machine in the VPG. When OrgVdcIdentifier is set, DefaultRecoveryOrgVdcNetworkIdentifier is set by default. Default value is none or "00000000-0000-0000-0000-000000000000."

 

None

Recovery

 

VCD

OrgVdcIdentifier

 

Yes

 

Vms

VmIdentifier

The identifier of the protected VMs.

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

 

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 vCD 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,  },

  "Journal": {
    "Limitation": {
      "HardLimitInMB": 153600,
      "HardLimitInPercent": 0,
      "WarningThresholdInMB": 115200,
      "WarningThresholdInPercent": 0
    }
  },


{   
  "LongTermRetention": {
   "Enabled": "Boolean",
   "RepositoryIdentifier": "repositoryIdentifier",
    "RetentionRunTime": "hh:mm",
     "RetentionSchedulePolicy": {
      "Daily": {
       "Enabled": "Boolean",
          "RetentionDuration": {
           "Count": "Integer",
         "DurationType": "Days|Weeks|Months|Years"
         }
   },
    "Weekly": {
      "Enabled": "Boolean",
        "DayOfWeek": "Sunday..Saturday",
                 "RetentionType": "Full|Incremental",
      "RetentionDuration": {
        "Count": "Integer",
        "DurationType": "Days|Weeks|Months|Years"
      }
    },
       "Monthly":
      "Enabled": "Boolean",
        "DayOfWeek: "Sunday..Saturday",
              "WeekOfMonth": "First|Second|Third|Fourth|Last",
       "DayOfMonth": "1..28|Last",
           "RetentionType": "Full|Incremental",
       "RetentionDuration": {
        "Count": "Integer",
        "DurationType": "Days|Weeks|Months|Years"
         }
   },
    "Yearly": {
      "Enabled": Boolean,
      "DayOfWeek": "Sunday..Saturday",
      "DayOfYear": "First|Last",
      "MonthOfYear": "January..December",
      "DayOfMonth": "1..31",
      "RetentionDuration": {
        "Count": "Integer",
        "DurationType": "Days|Weeks|Months|Years"
      }
    }
},
  "Retry": {
    "Enabled": "Boolean",
    "NumberOfAttempts": "Integer",
    "IntervalInMinutes": "Integer"
 },
  "Indexing": {
     "Vms": [ "VmIdentifier" ]
  }
 }
}

  "Networks": {
    "Failover": {
      "VCD": {
       "IsEnableGuestCustomization": Boolean
       "DefaultRecoveryOrgVdcNetworkIdentifier": "string content"
      }
    }
    "FailoverTest": {
      "VCD": {
       "IsEnableGuestCustomization": Boolean
       "DefaultRecoveryOrgVdcNetworkIdentifier": "string content"
      }
    }
  },

  "Recovery": {
    "VCD": {
      "OrgVdcIdentifier": "String Content"
    }
  },

  "Vms":[
    {

    "Journal":{
      "Limitation":{
        "HardLimitInMB":153600,
        "HardLimitInPercent":0,
        "WarningThresholdInMB":115200,
        "WarningThresholdInPercent":0
      }
    },

    "Nics": [
     {
      "Failover":{
        "VCD": {
         "IpAddress": null,
         "IpMode": "int",
         "IsConnected": Boolean,
         "IsPrimary": Boolean
         "IsResetMacAddress": Boolean
         "RecoveryOrgVdcNetworkIdentifier":"String content",
        }
      },
      "FailoverTest":{
        "VCD": {
         "IpAddress": null,
         "IpMode": "int",
         "IsConnected": Boolean,
         "IsPrimary": Boolean
         "IsResetMacAddress": Boolean
         "RecoveryOrgVdcNetworkIdentifier":"String content",
        }
     },
      "NicIdentifier":"String content"
    }
 ],

    "Recovery":{
      "VCD": {
       "StoragePolicyIdentifier": "string content",
       }
    },
    "VmIdentifier": "string content",

    "Volumes":[{
      "IsSwap": Boolean,
      "VCD": {
         "IsThin": Boolean
       },
      "VolumeIdentifier":"String content"
    }]
  },
 ]

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

Parameter

Description

Basic

JournalHistoryInHours

The time that all write commands are saved in the journal. The value is between 1 and 336 (14 days).

Name

The name of the VPG.

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.

ProtectedSiteIdentifier

The identifier of the site where the VPG virtual machines will be protected. This is the site where the API runs.

RecoverySiteIdentifier

The identifier of the site where the VPG virtual machines will be recovered.

RpoInSeconds

The maximum desired time between each automatic checkpoint being written to the journal before an alert is issued.

ServiceProfileIdentifier

The identifier of the service profile to use for the VPG when a Zerto Cloud Manager is used.

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.

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.

Journal

Limitation

Information about the journal limitations.

HardLimitInMB

The maximum journal size in MBs. 0 means unlimited. Integer values.

HardLimitInPercent

The percentage of the virtual machine volume size the journal can grow to. 0 means unlimited. Integer values.

WarningThresholdInMB

The journal size, in MBs, that generates a warning that the journal is nearing its hard limit. 0 means unlimited. Integer values.

WarningThresholdInPercent

The percentage of the virtual machine volume size that generates a warning. 0 means unlimited. Integer values.

Networks

Failover

Information about the networks used for failover.

VCD

IsEnableGuestCustomization

True: The computer name and network settings configured for this virtual machine are applied to its Guest OS when the virtual machine is powered on. Use this option to enable re-IPing the recovered virtual machines.
False: The computer name and network settings configured for this virtual machine are not applied to its Guest OS when the virtual machine is powered on. Re-IPing is not available.

Note: The same value should be set for both failover and failover test.

DefaultRecoveryOrgVdcNetworkIdentifier

The identifier of the Org vDC network. This is the default recovery settings applied to every virtual machine in the VPG. When OrgVdcIdentifier is set, DefaultRecoveryOrgVdcNetworkIdentifier is set by default. Default value is none or "00000000-0000-0000-0000-000000000000."

FailoverTest

Information about the networks used for failover test.

VCD

IsEnableGuestCustomization

True: The computer name and network settings configured for this virtual

machine are applied to its Guest OS when the virtual machine is powered on. Use this option to enable re-IPing the recovered virtual machines.

False: The computer name and network settings configured for this virtual

machine are not applied to its Guest OS when the virtual machine is powered on. Re-Iping is not available.

Note: The same value should be set for both failover and failover test.

DefaultRecoveryOrgVdcNetworkIdentifier

The identifier of the Org vDC network. This is the default recovery settings applied to every virtual machine in the VPG. When OrgVdcIdentifier is set, DefaultRecoveryOrgVdcNetworkIdentifier is set by default. Default value is none or "00000000-0000-0000-0000-000000000000."

Recovery

VCD

OrgVcdIdentifier

The identifier of an Org vDC.

Vms

Journal

Limitation

Information about the journal limitations.

HardLimitInMB

The maximum journal size in MBs. 0 means unlimited. Integer values.

HardLimitInPercent

The percentage of the virtual machine volume size the journal can grow to. 0 means unlimited. Integer values.

WarningThresholdInMB

The journal size, in MBs, that generates a warning that the journal is nearing its hard limit. 0 means unlimited. Integer values.

WarningThresholdInPercent

The percentage of the virtual machine volume size that generates a warning. 0 means unlimited. Integer values.

Nics

Failover

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

VCD

IpMode

The IP mode. Possible values are:

0: Static IP Pool - pulls IP addresses from the network IP pool.
1: DHCP - pulls IP addresses from a DHCP server.
2: Static Manual - allows you to specify an IP address.

IsConnected

True: Is NIC connected

False: Is NIC not connected.

IsPrimary

True: The DNS server that handles Internet protocol mapping is the primary.

False: The DNS server that handles Internet protocol mapping is not the primary.

IsResetMacAddress

True: The Media Access Control (MAC) address used on the protected site will be copied to the recovery site.

False: The Media Access Control (MAC) address used on the protected site will not be copied to the recovery site.

RecoveryOrgVdcNetworkIdentifier

The identifier of the Org vDC network. This is the recovery settings applied to the virtual machine When OrgVdcIdentifier is set, RecoveryOrgVdcNetworkIdentifier is set by default. Default value is none or "00000000-0000-0000-0000-000000000000."

FailoverTest

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

VCD

IpMode

The IP mode. Possible values are:

0: Static IP Pool - pulls IP addresses from the network IP pool.
1: DHCP - pulls IP addresses from a DHCP server.
2: Static Manual - allows you to specify an IP address.

IsConnected

True: Is NIC connected

False: Is NIC not connected.

IsPrimary

True: The DNS server that handles Internet protocol mapping is the primary.

False: The DNS server that handles Internet protocol mapping is not the primary.

IsResetMacAddress

True: The Media Access Control (MAC) address used on the protected site will be copied to the recovery site.

False: The Media Access Control (MAC) address used on the protected site will not be copied to the recovery site.

RecoveryOrgVdcNetworkIdentifier

The identifier of the Org vDC network. This is the recovery settings applied to the virtual machine When OrgVdcIdentifier is set, RecoveryOrgVdcNetworkIdentifier is set by default

NicIdentifier

The identifier of the NIC for which settings are returned.

Recovery

VCD

StoragePolicyIdentifier

The identifier of the recovery storage policy. When the VmIdentifier is set, the StoragePolicyIdentifier is set by default. Default value is none or "00000000-0000-0000-0000-000000000000."

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.

VCD

IsThin

True: The recovery volumes are thin-provisioned.

False: The recovery volumes are not thin-provisioned.

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 vCD VPG Management APIs

Back to All APIs

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 journal settings object

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

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 NIC settings object

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

Edit volume settings object

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.

nicIdentifier

The identifier of a NIC that is to be updated.

volumeId

The identifier of the volume that is to be updated.

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

[{

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

  "Journal": {
    "Limitation": {
      "HardLimitInMB": 153600,
      "HardLimitInPercent": 0,
      "WarningThresholdInMB": 115200,
      "WarningThresholdInPercent": 0
    }
  },

  "Networks": {
    "Failover": {
      "VCD": {
       "IsEnableGuestCustomization": Boolean
       "DefaultRecoveryOrgVdcNetworkIdentifier": "string content"
      }
    }
    "FailoverTest": {
      "VCD": {
       "IsEnableGuestCustomization": Boolean
       "DefaultRecoveryOrgVdcNetworkIdentifier": "string content"
      }
    }
  },

  "Recovery": {
    "VCD": {
      "OrgVdcIdentifier": "String Content"
    }
  },

  "Vms":[
    {

    "Journal":{
      "Limitation":{
        "HardLimitInMB":153600,
        "HardLimitInPercent":0,
        "WarningThresholdInMB":115200,
        "WarningThresholdInPercent":0
      }
    },

    "Nics": [
     {
      "Failover":{
        "VCD": {
         "IpAddress": null,
         "IpMode": "int",
         "IsConnected": Boolean,
         "IsPrimary": Boolean
         "IsResetMacAddress": Boolean
         "RecoveryOrgVdcNetworkIdentifier":"String content",
        }
      },
      "FailoverTest":{
        "VCD": {
         "IpAddress": null,
         "IpMode": "int",
         "IsConnected": Boolean,
         "IsPrimary": Boolean
         "IsResetMacAddress": Boolean
         "RecoveryOrgVdcNetworkIdentifier":"String content",
        }
     },
      "NicIdentifier":"String content"
    }
 ],

    "Recovery":{
      "VCD": {
       "StoragePolicyIdentifier": "string content",
       }
    },
    "VmIdentifier": "string content",

    "Volumes":[{
      "IsSwap": Boolean,
      "VCD": {
         "IsThin": Boolean
       },
      "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.

  "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}/journal.

  "Journal": {
    "Limitation": {
      "HardLimitInMB": 153600,
      "HardLimitInPercent": 0,
      "WarningThresholdInMB": 115200,
      "WarningThresholdInPercent": 0
    }
  },

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

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

  "Networks": {
    "Failover": {
      "VCD": {
       "IsEnableGuestCustomization": Boolean
       "DefaultRecoveryOrgVdcNetworkIdentifier": "string content"
      }
    }
    "FailoverTest": {
      "VCD": {
       "IsEnableGuestCustomization": Boolean
       "DefaultRecoveryOrgVdcNetworkIdentifier": "string content"
      }
    }
  },

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

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

 "Vms": [
  "Journal":{
    "Limitation":{
      "HardLimitInMB":4294967295,
      "HardLimitInPercent":4294967295,
      "WarningThresholdInMB":4294967295,
      "WarningThresholdInPercent":4294967295
    }
  },

    "Nics": [
     {
      "Failover":{
        "VCD": {
         "IpAddress": null
         "IpMode": "int",
         "IsConnected": Boolean,
         "IsPrimary": Boolean
         "IsResetMacAddress": Boolean
         "RecoveryOrgVdcNetworkIdentifier":"String content",
        }
      },
      "FailoverTest":{
        "VCD": {
         "IpAddress": null,
         "IpMode": "int",
         "IsConnected": Boolean,
         "IsPrimary": Boolean
         "IsResetMacAddress": Boolean
         "RecoveryOrgVdcNetworkIdentifier":"String content",
        }
     },
      "NicIdentifier":"String content"
    }
 ],

    "Recovery":{
      "VCD": {
       "StoragePolicyIdentifier": "string content",
       }
    },
    "VmIdentifier": "string content",

    "Volumes":[{
      "IsSwap": Boolean,
      "VCD": {
         "IsThin": Boolean
       },
      "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}/nics/{nicIdentifier}.

{
    "Nics": [
     {
      "Failover":{
        "VCD": {
         "IpAddress": null,
         "IpMode": "int",
         "IsConnected": Boolean,
         "IsPrimary": Boolean
         "IsResetMacAddress": Boolean
         "RecoveryOrgVdcNetworkIdentifier":"String content",
        }
      },
      "FailoverTest":{
        "VCD": {
         "IpAddress": null,
         "IpMode": "int",
         "IsConnected": Boolean,
         "IsPrimary": Boolean
         "IsResetMacAddress": Boolean
         "RecoveryOrgVdcNetworkIdentifier":"String content",
        }
     },
      "NicIdentifier":"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}.

    "Volumes":[{
      "IsSwap": Boolean,
      "VCD": {
         "IsThin": Boolean
       },
      "VolumeIdentifier":"String content"
    }]
  },
 ]

Request Values

Update a VPG settings object

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

Parameter

Description

Basic

JournalHistoryInHours

The time that all write commands are saved in the journal. The value is between 1 and 336 (14 days).

Name

The name of the VPG.

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.

ProtectedSiteIdentifier

The identifier of the site where the VPG virtual machines will be protected. This is the site where the API runs.

RecoverySiteIdentifier

The identifier of the site where the VPG virtual machines will be recovered.

RpoInSeconds

The maximum desired time between each automatic checkpoint being written to the journal before an alert is issued.

ServiceProfileIdentifier

The identifier of the service profile to use for the VPG when a Zerto Cloud Manager is used.

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.

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.

Journal

Limitation

Information about the journal limitations.

HardLimitInMB

The maximum journal size in MBs. 0 means unlimited. Integer values.

HardLimitInPercent

The percentage of the virtual machine volume size the journal can grow to. 0 means unlimited. Integer values.

WarningThresholdInMB

The journal size, in MBs, that generates a warning that the journal is nearing its hard limit. 0 means unlimited. Integer values.

WarningThresholdInPercent

The percentage of the virtual machine volume size that generates a warning. 0 means unlimited. Integer values.

Networks

Failover

Information about the networks used for failover.

VCD

IsEnableGuestCustomization

True: The computer name and network settings configured for this virtual machine are applied to its Guest OS when the virtual machine is powered on. Use this option to enable re-IPing the recovered virtual machines.
False: The computer name and network settings configured for this virtual machine are not applied to its Guest OS when the virtual machine is powered on. Re-Iping is not available.

Note: The same value should be set for both failover and failover test.

DefaultRecoveryOrgVdcNetworkIdentifier

The identifier of the Org vDC network. This is the default recovery settings applied to every virtual machine in the VPG. When OrgVdcIdentifier is set, DefaultRecoveryOrgVdcNetworkIdentifier is set by default

FailoverTest

Information about the networks used for failover test.

VCD

IsEnableGuestCustomization

True: The computer name and network settings configured for this virtual

machine are applied to its Guest OS when the virtual machine is powered on. Use this option to enable re-IPing the recovered virtual machines.

False: The computer name and network settings configured for this virtual

machine are not applied to its Guest OS when the virtual machine is powered on. Re-Iping is not available.

Note: The same value should be set for both failover and failover test.

DefaultRecoveryOrgVdcNetworkIdentifier

The identifier of the Org vDC network. This is the default recovery settings applied to every virtual machine in the VPG. When OrgVdcIdentifier is set, DefaultRecoveryOrgVdcNetworkIdentifier is set by default.

Recovery

VCD

OrgVcdIdentifier

The identifier of an Org vDC.

Vms

Journal

Limitation

Information about the journal limitations.

HardLimitInMB

The maximum journal size in MBs. 0 means unlimited. Integer values.

HardLimitInPercent

The percentage of the virtual machine volume size the journal can grow to. 0 means unlimited. Integer values.

WarningThresholdInMB

The journal size, in MBs, that generates a warning that the journal is nearing its hard limit. 0 means unlimited. Integer values.

WarningThresholdInPercent

The percentage of the virtual machine volume size that generates a warning. 0 means unlimited. Integer values.

Nics

Failover

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

VCD

IpMode

The IP mode. Possible values are:

0: Static IP Pool - pulls IP addresses from the network IP pool.
1: DHCP - pulls IP addresses from a DHCP server.
2: Static Manual - allows you to specify an IP address.

IsConnected

True: Is NIC connected

False: Is NIC not connected.

IsPrimary

True: The DNS server that handles Internet protocol mapping is the primary.

False: The DNS server that handles Internet protocol mapping is not the primary.

IsResetMacAddress

True: The Media Access Control (MAC) address used on the protected site will be copied to the recovery site.

False: The Media Access Control (MAC) address used on the protected site will not be copied to the recovery site.

RecoveryOrgVdcNetworkIdentifier

The identifier of the Org vDC network. This is the recovery settings applied to the virtual machine When OrgVdcIdentifier is set, RecoveryOrgVdcNetworkIdentifier is set by default

FailoverTest

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

VCD

IpMode

The IP mode. Possible values are:

0: Static IP Pool - pulls IP addresses from the network IP pool.
1: DHCP - pulls IP addresses from a DHCP server.
2: Static Manual - allows you to specify an IP address.

IsConnected

True: Is NIC connected

False: Is NIC not connected.

IsPrimary

True: The DNS server that handles Internet protocol mapping is the primary.

False: The DNS server that handles Internet protocol mapping is not the primary.

IsResetMacAddress

True: The Media Access Control (MAC) address used on the protected site will be copied to the recovery site.

False: The Media Access Control (MAC) address used on the protected site will not be copied to the recovery site.

RecoveryOrgVdcNetworkIdentifier

The identifier of the Org vDC network. This is the recovery settings applied to the virtual machine When OrgVdcIdentifier is set, RecoveryOrgVdcNetworkIdentifier is set by default

NicIdentifier

The identifier of the NIC for which settings are returned.

Recovery

VCD

StoragePolicyIdentifier

The identifier of the recovery storage policy. When the VmIdentifier is set, the StoragePolicyIdentifier is set by default.

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.

VCD

IsThin

True: The recovery volumes are thin-provisioned.

False: The recovery volumes are not thin-provisioned.

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

Basic

JournalHistoryInHours

The time that all write commands are saved in the journal. The value is between 1 and 336 (14 days).

Name

The name of the VPG.

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.

ProtectedSiteIdentifier

The identifier of the site where the VPG virtual machines will be protected. This is the site where the API runs.

RecoverySiteIdentifier

The identifier of the site where the VPG virtual machines will be recovered.

RpoInSeconds

The maximum desired time between each automatic checkpoint being written to the journal before an alert is issued.

ServiceProfileIdentifier

The identifier of the service profile to use for the VPG when a Zerto Cloud Manager is used.

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.

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.

Update the journal settings in a VPG settings object

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

Parameter

Description

Limitation

Information about the journal limitations.

HardLimitInMB

The maximum journal size in MBs. 0 means unlimited. Integer values.

HardLimitInPercent

The percentage of the virtual machine volume size the journal can grow to. 0 means unlimited. Integer values.

WarningThresholdInMB

The journal size, in MBs, that generates a warning that the journal is nearing its hard limit. 0 means unlimited. Integer values.

WarningThresholdInPercent

The percentage of the virtual machine volume size that generates a warning. 0 means unlimited. Integer values.

Update the network settings in a VPG settings object

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

Parameter

Description

Networks

Failover

Information about the networks used for failover.

VCD

IsEnableGuestCustomization

True: The computer name and network settings configured for this virtual

machine are applied to its Guest OS when the virtual machine is powered on. Use this option to enable re-IPing the recovered virtual machines.

False: The computer name and network settings configured for this virtual

machine are not applied to its Guest OS when the virtual machine is powered on. Re-Iping is not available.

Note: The same value should be set for both failover and failover test.

DefaultRecoveryOrgVdcNetworkIdentifier

The identifier of the Org vDC network. This is the default recovery settings applied to every virtual machine in the VPG. When OrgVdcIdentifier is set, DefaultRecoveryOrgVdcNetworkIdentifier is set by default

FailoverTest

Information about the networks used for failover test.

VCD

IsEnableGuestCustomization

True: The computer name and network settings configured for this virtual

machine are applied to its Guest OS when the virtual machine is powered on. Use this option to enable re-IPing the recovered virtual machines.

False: The computer name and network settings configured for this virtual

machine are not applied to its Guest OS when the virtual machine is powered on. Re-Iping is not available.

Note: The same value should be set for both failover and failover test.

DefaultRecoveryOrgVdcNetworkIdentifier

The identifier of the Org vDC network. This is the default recovery settings applied to every virtual machine in the VPG. When OrgVdcIdentifier is set, DefaultRecoveryOrgVdcNetworkIdentifier is set by default.

Update the virtual machine settings in a VPG settings object

Request values for

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

Parameter

Description

Vms

Journal

Limitation

Information about the journal limitations.

HardLimitInMB

The maximum journal size in MBs. 0 means unlimited. Integer values.

HardLimitInPercent

The percentage of the virtual machine volume size the journal can grow to. 0 means unlimited. Integer values.

WarningThresholdInMB

The journal size, in MBs, that generates a warning that the journal is nearing its hard limit. 0 means unlimited. Integer values.

WarningThresholdInPercent

The percentage of the virtual machine volume size that generates a warning. 0 means unlimited. Integer values.

Nics

Failover

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

VCD

IpMode

The IP mode. Possible values are:

0: Static IP Pool - pulls IP addresses from the network IP pool.
1: DHCP - pulls IP addresses from a DHCP server.
2: Static Manual - allows you to specify an IP address.

IsConnected

True: Is NIC connected

False: Is NIC not connected.

IsPrimary

True: The DNS server that handles Internet protocol mapping is the primary.

False: The DNS server that handles Internet protocol mapping is not the primary.

IsResetMacAddress

True: The Media Access Control (MAC) address used on the protected site will be copied to the recovery site.

False: The Media Access Control (MAC) address used on the protected site will not be copied to the recovery site.

RecoveryOrgVdcNetworkIdentifier

The identifier of the Org vDC network. This is the recovery settings applied to the virtual machine When OrgVdcIdentifier is set, RecoveryOrgVdcNetworkIdentifier is set by default

FailoverTest

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

VCD

IpMode

The IP mode. Possible values are:

0: Static IP Pool - pulls IP addresses from the network IP pool.
1: DHCP - pulls IP addresses from a DHCP server.
2: Static Manual - allows you to specify an IP address.

IsConnected

True: Is NIC connected

False: Is NIC not connected.

IsPrimary

True: The DNS server that handles Internet protocol mapping is the primary.

False: The DNS server that handles Internet protocol mapping is not the primary.

IsResetMacAddress

True: The Media Access Control (MAC) address used on the protected site will be copied to the recovery site.

False: The Media Access Control (MAC) address used on the protected site will not be copied to the recovery site.

RecoveryOrgVdcNetworkIdentifier

The identifier of the Org vDC network. This is the recovery settings applied to the virtual machine When OrgVdcIdentifier is set, RecoveryOrgVdcNetworkIdentifier is set by default

NicIdentifier

The identifier of the NIC for which settings are returned.

Recovery

VCD

StoragePolicyIdentifier

The identifier of the recovery storage policy. When the VmIdentifier is set, the StoragePolicyIdentifier is set by default.

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.

VCD

IsThin

True: The recovery volumes are thin-provisioned.

False: The recovery volumes are not thin-provisioned.

VolumeIdentifier

The identifier of the volume.

Update the virtual machine settings in a VPG settings object

Request values for
https://zvm_ip:port/v1/vpgSettings/vms/{vmIdentifier}/{vmIdentifier}/nics/{nicIdentifier}.

Parameter

Description

Nics

Failover

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

VCD

IpMode

The IP mode. Possible values are:

0: Static IP Pool - pulls IP addresses from the network IP pool.
1: DHCP - pulls IP addresses from a DHCP server.
2: Static Manual - allows you to specify an IP address.

IsConnected

True: Is NIC connected

False: Is NIC not connected.

IsPrimary

True: The DNS server that handles Internet protocol mapping is the primary.

False: The DNS server that handles Internet protocol mapping is not the primary.

IsResetMacAddress

True: The Media Access Control (MAC) address used on the protected site will be copied to the recovery site.

False: The Media Access Control (MAC) address used on the protected site will not be copied to the recovery site.

RecoveryOrgVdcNetworkIdentifier

The identifier of the Org vDC network. This is therecovery settings applied to the virtual machine When OrgVdcIdentifier is set, RecoveryOrgVdcNetworkIdentifier is set by default

FailoverTest

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

VCD

IpMode

The IP mode. Possible values are:

0: Static IP Pool - pulls IP addresses from the network IP pool.
1: DHCP - pulls IP addresses from a DHCP server.
2: Static Manual - allows you to specify an IP address.

IsConnected

True: Is NIC connected

False: Is NIC not connected.

IsPrimary

True: The DNS server that handles Internet protocol mapping is the primary.

False: The DNS server that handles Internet protocol mapping is not the primary.

IsResetMacAddress

True: The Media Access Control (MAC) address used on the protected site will be copied to the recovery site.

False: The Media Access Control (MAC) address used on the protected site will not be copied to the recovery site.

RecoveryOrgVdcNetworkIdentifier

The identifier of the Org vDC network. This is the recovery settings applied to the virtual machine When OrgVdcIdentifier is set, RecoveryOrgVdcNetworkIdentifier is set by default

Update the virtual machine settings in a VPG settings object

Request values for

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

Parameter

Description

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.

VCD

IsThin

True: The recovery volumes are thin-provisioned.

False: The recovery volumes are not thin-provisioned.

VolumeIdentifier

The identifier of the volume.

Response Format

The response bodies are empty.

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 journal settings from a VPG

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

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}

Reset NIC settings object to Default

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

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.