VPG Management API

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.

/v1/vpgSettings returns information about VPG settings, creates new VPGs, edits VPG settings, or deletes all or selected VPG settings for a VPG.

HTTP Methods

Security

See Also

Format

The following API are available:

VPG Settings: GET

VPG Settings: POST

VPG Settings: PUT

VPG Settings: DELETE

vSphere and Hyper-V - Copy VPG Settings

For vCD VPG management APIs, go to Managing vCD APIs.

Purpose Method URL
Get settings for VPGs GET https://zvm_ip:port/v1/vpgSettings

Get settings for a VPG GET https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}

Get VPG basic settings GET https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/basic
Get VPG boot settings GET https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/bootgroup
Get VPG journal settings GET https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/journal
Get VPG Extended Journal Copy settings GET https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/ltr
Get VPG network settings GET https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/networks
Get the VPG priority GET https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/priority
Get VPG recovery settings GET https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/recovery
Get VPG script settings GET https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/scripting
Get all VM settings for a VPG GET https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms

Use the UseVmEncryption option to enable encryption of the Recovery VM. True = enable encryption, False = no encryption.

Get VM settings for a VM in a VPG GET https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}
Get all VM NIC settings GET https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}/nics
Get settings for a VM NIC GET https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}/nics/{nicIdentifier}
Get VM volume settings GET https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}/volumes
Get settings for a VM volume GET https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}/volumes/{volumeId}
Create new VPG settings object POST https://zvm_ip:port/v1/vpgSettings
Create default VPG Extended Journal Copy settings POST https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/ltr
Create VPG settings object for an existing VPG POST https://zvm_ip:port/v1/vpgSettings
Commit a settings object POST https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/commit
Add VMs to a settings object POST https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms

Use the UseVmEncryption option to enable encryption of the Recovery VM. True = enable encryption, False = no encryption.

Edit VPG settings object PUT https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}
Edit basic settings object PUT https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/basic
Edit boot settings object PUT https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/bootgroup
Edit journal settings object PUT https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/journal
Edit Extended Journal Copy settings PUT https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/ltr
Edit network settings object PUT https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/networks
Edit recovery settings object PUT https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/recovery
Edit script settings object PUT https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/scripting
Edit VM settings object PUT https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}
Edit NIC settings object PUT https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}/nics/{nicIdentifier}
Edit volume settings object PUT https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}/volumes/{volumeId}
Delete a settings object DELETE https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}
Delete basic settings object DELETE https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/basic
Delete boot settings object DELETE https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/bootgroup
Delete journal settings object DELETE https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/journal
Delete Extended Journal Copy settings object DELETE https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/ltr
Delete network settings object DELETE https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/networks
Delete recovery settings object DELETE https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/recovery
Delete script settings object DELETE https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/scripting
Delete VM settings from a VPG DELETE https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}
Delete NIC settings object DELETE https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}/nics/{nicIdentifier}

HTTP Methods

GET, POST, PUT, DELETE

Security

The API is exposed over HTTPS. Client code must use the x-zerto-session HTTP authorization header.

See Also

Starting a session: Session: POST

View the results of the create VPG operation: Events API

Return the datastore identifier: Datastores

Return the resource pool identifier: VMware only: Resource Pools

Return the source and target site identifiers: Virtualization sites

Return the vCenter vApp identifier to protect: Unprotected VMs

Return the list of unprotected virtual machine identifiers: Unprotected VMs

Retrieve details of the task being performed: Tasks API

Perform actions, such as testing, a VPG: VPGs API

Format

Json, XML

VPG Settings: GET

The GET methods are used to retrieve values in a VPG settings object.

See also:

VPG Settings: POST
VPG Settings: PUT
VPG Settings: DELETE

Get settings for VPGs https://zvm_ip:port/v1/vpgSettings
Get settings for a VPG https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}
Get VPG basic settings https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/basic
Get VPG boot settings https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/bootgroup
Get VPG journal settings https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/journal
Get VPG Extended Journal Copy settings https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/ltr
Get VPG network settings https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/networks
Get the VPG priority https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/priority
Get VPG recovery settings https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/recovery
Get VPG script settings https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/scripting
Get all VM settings for a VPG https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms
Get VM settings for a VM in a VPG https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}
Get all VM NIC settings https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}/nics
Get settings for a VM NIC https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}/nics/{nicIdentifier}
Get VM volume settings https://zvm_ip:port/v1/vpgSettings/vpgSettingsIdentifier}/vms/{vmIdentifier}/volumes
Get settings for a VM volume 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 for which information is retrieved.
vmIdentifier The identifier of the virtual machine for which settings are retrieved. The identifier comprises the server identifier and the virtual machine moref, with the format, serverid.moref.
nicIdentifier The identifier of the NIC for which settings are retrieved.
volumeId The identifier of the volume for which settings are retrieved.
Request Body Using Json Format

The request body is empty.

Response In Json Format

The following is an example response Json body for https://zvm_ip:port/v1/vpgSettings and, without the array statement, for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}.

  "Basic": {
    "JournalHistoryInHours":2147483647,
    "Name": "String content",
    "Priority": "String content",
    "ProtectedSiteIdentifier": "String content",
    "RecoverySiteIdentifier": "String content",
    "RpoInSeconds":300,
    "ServiceProfileIdentifier": "String content",
    "TestIntervalInMinutes":43200,
    "UseWanCompression": Boolean,
    "ZorgIdentifier": "String content"
  },

  "BootGroups": {
    "BootGroups":[{
      "BootDelayInSeconds":0,
      "BootGroupIdentifier": "String content",
      "Name": "String content"
    }]
  },

  "Journal": {

    "DatastoreIdentifier": "String content",
    "Limitation": {
      "HardLimitInMB":2147483647,
      "HardLimitInPercent":2147483647,
      "WarningThresholdInMB":2147483647,
      "WarningThresholdInPercent":2147483647
    }
  },

{
  "longTermRetention":{
    "Enabled": true,
    "Indexing": {
      "Vms": []
    },
    "RepositoryIdentifier": "RepositoryIdentifier",
    "RetentionRunTime": "03:00",
    "Compression": "OptimalCompression",
    "Retry": {
      "Enabled": false,
      "IntervalInMinutes": 0,
      "Number": 0
    },
    "SchedulerPolicy": {
      "Daily": {
        "Enabled": true,
        "RetentionDuration": {
          "Count": 7,
          "DurationType": "Days"}
    },
    "Monthly": {
      "DayOfMonth": null,
      "DayOfWeek": "Sunday",
      "Enabled": true,
      "RetentionDuration": {
        "Count": 12,
        "DurationType": "Months"
    },
    "RetentionType": "Full",
    "WeekOfMonth": "First"
    },
    "Weekly": null,
    "Yearly": null
    }
  }
}

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

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

  "Scripting": {
    
    "PostRecovery": {
      "Command": "String content",
      "Parameters": "String content",
      "TimeoutInSeconds":2147483647
    },
    "PreRecovery": {
      "Command": "String content",
      "Parameters": "String content",
      "TimeoutInSeconds":2147483647
    }
  },

    "BootGroupIdentifier": "String content",
    "Journal": {

      "DatastoreIdentifier": "String content",
      "Limitation": {
        "HardLimitInMB":4294967295,
        "HardLimitInPercent":4294967295,
        "WarningThresholdInMB":4294967295,
        "WarningThresholdInPercent":4294967295
      }
    },

    "Nics":[{
      "Failover": {
        "Hypervisor": {
          "DnsSuffix": "String content",
          "IpConfig": {
            "Gateway": "String content",
            "IsDhcp": Boolean,
            "PrimaryDns": "String content",
            "SecondaryDns": "String content",
            "StaticIp": "String content",
            "SubnetMask": "String content"
          },
          "NetworkIdentifier": "String content",
          "ShouldReplaceMacAddress": Boolean

        }
      },
      "FailoverTest": {
        "Hypervisor": {
          "DnsSuffix": "String content",
          "IpConfig": {
            "Gateway": "String content",
            "IsDhcp": Boolean,
            "PrimaryDns": "String content",
            "SecondaryDns": "String content",
            "StaticIp": "String content",
            "SubnetMask": "String content"
          },
          "NetworkIdentifier": "String content",
          "ShouldReplaceMacAddress": Boolean

        }
      },
      "NicIdentifier": "String content"
    }],

    "Recovery": {
      "DatastoreClusterIdentifier": "String content",
      "DatastoreIdentifier": "String content",
      "FolderIdentifier": "String content",
      "HostClusterIdentifier": "String content",
      "HostIdentifier": "String content",
      "ResourcePoolIdentifier": "String content"
    },

    "VmIdentifier": "String content",
    "Volumes":[{
      "Datastore": {
        "DatastoreClusterIdentifier": "String content",
        "DatastoreIdentifier": "String content",
        "IsThin": Boolean
      },
      "IsSwap": Boolean,
      "Preseed": {
       "DatastoreIdentifier": "String content",
       "Path": "folder/subfolers/VmName.suffix"
      }
      "RDM": {,
        "DeviceIdentifier": "String content",
       "IsPhysical": true
      }
      "VCD": null,
      "VolumeIdentifier": "String content"
    }]
  }],

  "VpgIdentifier": "String content",
  "VpgSettingsIdentifier": "String content"
}]

The following is an example response Json body for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/basic.

{
  "JournalHistoryInHours":2147483647,
  "Name": "String content",
  "Priority": "String content",
  "ProtectedSiteIdentifier": "String content",
  "RecoverySiteIdentifier": "String content",
  "RpoInSeconds":4294967295,
  "ServiceProfileIdentifier": "String content",
  "TestIntervalInMinutes":2147483647,
  "UseWanCompression": Boolean,
  "ZorgIdentifier": "String content"
}

The following is an example response Json body for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/bootgroup.

{
  "BootGroups":[{
    "BootDelayInSeconds":4294967295,
    "BootGroupIdentifier": "String content",
    "Name": "String content"
  }]
}

The following is an example response Json body for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/journal.

{
  "DatastoreIdentifier": "String content",
  "Limitation": {
    "HardLimitInMB":2147483647,
    "HardLimitInPercent":2147483647,
    "WarningThresholdInMB":2147483647,
    "WarningThresholdInPercent":2147483647
  }
}

The following is an example response Json body for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/ltr

{
  "longTermRetention":{
    "Enabled": true,
    "Indexing": {
      "Vms": []
   },
    "RepositoryIdentifier": "RepositoryIdentifier",
    "RetentionRunTime": "03:00",
    "Compression": "OptimalCompression",
    "Retry": {
      "Enabled": false,
      "IntervalInMinutes": 0,
      "Number": 0
    },
    "SchedulerPolicy": {
      "Daily": {
        "Enabled": true,
        "RetentionDuration": {
          "Count": 7,
          "DurationType": "Days"}
    },
    "Monthly": {
      "DayOfMonth": null,
      "DayOfWeek": "Sunday",
      "Enabled": true,
      "RetentionDuration": {
        "Count": 12,
        "DurationType": "Months"
    },
    "RetentionType": "Full",
    "WeekOfMonth": "First"
    },
    "Weekly": null,
    "Yearly": null
    }
  }
}

The following is an example response Json body for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/networks

{
  "Failover": {
    "Hypervisor": {
      "DefaultNetworkIdentifier": "String content"
    }

  },
  "FailoverTest": {
    "Hypervisor": {
      "DefaultNetworkIdentifier": "String content"
    }

  }
}

The following is an example response Json body for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/priority.

"String content"

The following is an example response Json body for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/recovery.

{
  "DefaultDatastoreClusterIdentifier": "String content",
  "DefaultDatastoreIdentifier": "String content",
  "DefaultFolderIdentifier": "String content",
  "DefaultHostClusterIdentifier": "String content",
  "DefaultHostIdentifier": "String content",
  "ResourcePoolIdentifier": "String content"
}

The following is an example response Json body for

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

{
  
  "PostRecovery": {
    "Command": "String content",
    "Parameters": "String content",
    "TimeoutInSeconds":2147483647
  },
  "PreRecovery": {
    "Command": "String content",
    "Parameters": "String content",
    "TimeoutInSeconds":2147483647
  }
}

The following is an example response Json body for

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

[{
  "BootGroupIdentifier": "String content",
  "Journal": {

    "DatastoreIdentifier": "String content",
    "Limitation": {
      "HardLimitInMB":4294967295,
      "HardLimitInPercent":4294967295,
      "WarningThresholdInMB":4294967295,
      "WarningThresholdInPercent":4294967295
    }
  },

  "Nics":[{
    "Failover": {
      "Hypervisor": {
        "DnsSuffix": "String content",
        "IpConfig": {
          "Gateway": "String content",
          "IsDhcp": Boolean,
          "PrimaryDns": "String content",
          "SecondaryDns": "String content",
          "StaticIp": "String content",
          "SubnetMask": "String content"
        },
        "NetworkIdentifier": "String content",
        "ShouldReplaceMacAddress": Boolean
      }

    },
    "FailoverTest": {
      "Hypervisor": {
        "DnsSuffix": "String content",
        "IpConfig": {
          "Gateway": "String content",
          "IsDhcp": Boolean,
          "PrimaryDns": "String content",
          "SecondaryDns": "String content",
          "StaticIp": "String content",
          "SubnetMask": "String content"
        },
        "NetworkIdentifier": "String content",
        "ShouldReplaceMacAddress": Boolean
      }

    },
    "NicIdentifier": "String content"
  }],

  "Recovery": {
    "DatastoreClusterIdentifier": "String content",
    "DatastoreIdentifier": "String content",
    "FolderIdentifier": "String content",
    "HostClusterIdentifier": "String content",
    "HostIdentifier": "String content",
    "ResourcePoolIdentifier": "String content"
  },

  "VmIdentifier": "String content",
    "Volumes":[{
      "Datastore": {
        "DatastoreClusterIdentifier": "String content",
        "DatastoreIdentifier": "String content",
        "IsThin": Boolean
      },
      "IsSwap": Boolean,
      "Preseed": {
       "DatastoreIdentifier": "String content",
       "Path": "folder/subfolers/VmName.suffix"
      }
      "RDM": {,
        "DeviceIdentifier": "String content",
       "IsPhysical": true
      }
      
      "VCD": null,
      "VolumeIdentifier": "String content"
}]

The following is an example response Json body for

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

{
  "BootGroupIdentifier": "String content",
  "Journal": {

    "DatastoreIdentifier": "String content",
    "Limitation": {
      "HardLimitInMB":4294967295,
      "HardLimitInPercent":4294967295,
      "WarningThresholdInMB":4294967295,
      "WarningThresholdInPercent":4294967295
    }
  },

  "Nics":[{
    "Failover": {
      "Hypervisor": {
        "DnsSuffix": "String content",
        "IpConfig": {
          "Gateway": "String content",
          "IsDhcp": Boolean,
          "PrimaryDns": "String content",
          "SecondaryDns": "String content",
          "StaticIp": "String content",
          "SubnetMask": "String content"
        },
        "NetworkIdentifier": "String content",
        "ShouldReplaceMacAddress": Boolean
      }
    },
    "FailoverTest": {
      "Hypervisor": {
        "DnsSuffix": "String content",
        "IpConfig": {
          "Gateway": "String content",
          "IsDhcp": Boolean,
          "PrimaryDns": "String content",
          "SecondaryDns": "String content",
          "StaticIp": "String content",
          "SubnetMask": "String content"
        },
        "NetworkIdentifier": "String content",
        "ShouldReplaceMacAddress": Boolean
      }

    },
    "NicIdentifier": "String content"
  }],

  "Recovery": {
    "DatastoreClusterIdentifier": "String content",
    "DatastoreIdentifier": "String content",
    "FolderIdentifier": "String content",
    "HostClusterIdentifier": "String content",
    "HostIdentifier": "String content",
    "ResourcePoolIdentifier": "String content"
  },

  "VmIdentifier": "String content",
    "Volumes":[{
      "Datastore": {
        "DatastoreClusterIdentifier": "String content",
        "DatastoreIdentifier": "String content",
        "IsThin": Boolean
      },
      "IsSwap": Boolean,
      "Preseed": {
       "DatastoreIdentifier": "String content",
       "Path": "folder/subfolers/VmName.suffix"
      }
      "RDM": {,
        "DeviceIdentifier": "String content",
       "IsPhysical": true
      }
      
      "VCD": null,
      "VolumeIdentifier": "String content"
  }]
}

The following is an example response Json body for

https://zvm_ip:port/v1/vpgSvettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}/nics.

[{
  "Failover": {
    "Hypervisor": {
      "DnsSuffix": "String content",
      "IpConfig": {
        "Gateway": "String content",
        "IsDhcp": Boolean,
        "PrimaryDns": "String content",
        "SecondaryDns": "String content",
        "StaticIp": "String content",
        "SubnetMask": "String content"
      },
      "NetworkIdentifier": "String content",
      "ShouldReplaceMacAddress": Boolean
    }

  },
  "FailoverTest": {
    "Hypervisor": {
      "DnsSuffix": "String content",
      "IpConfig": {
        "Gateway": "String content",
        "IsDhcp": Boolean,
        "PrimaryDns": "String content",
        "SecondaryDns": "String content",
        "StaticIp": "String content",
        "SubnetMask": "String content"
      },
      "NetworkIdentifier": "String content",
      "ShouldReplaceMacAddress": Boolean
    }

  },
  "NicIdentifier": "String content"
}]

The following is an example response Json body for

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

{
  "Failover": {
    "Hypervisor": {
      "DnsSuffix": "String content",
      "IpConfig": {
        "Gateway": "String content",
        "IsDhcp": Boolean,
        "PrimaryDns": "String content",
        "SecondaryDns": "String content",
        "StaticIp": "String content",
        "SubnetMask": "String content"
      },
      "NetworkIdentifier": "String content",
      "ShouldReplaceMacAddress": Boolean
    }

  },
  "FailoverTest": {
    "Hypervisor": {
      "DnsSuffix": "String content",
      "IpConfig": {
        "Gateway": "String content",
        "IsDhcp": Boolean,
        "PrimaryDns": "String content",
        "SecondaryDns": "String content",
        "StaticIp": "String content",
        "SubnetMask": "String content"
      },
      "NetworkIdentifier": "String content",
      "ShouldReplaceMacAddress": Boolean

    }
  },
  "NicIdentifier": "String content"
}

The following is an example response Json body for

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

[{
      "Datastore": {
        "DatastoreClusterIdentifier": "String content",
        "DatastoreIdentifier": "String content",
        "IsThin": Boolean
      },
      "IsSwap": Boolean,
      "Preseed": {
       "DatastoreIdentifier": "String content",
       "Path": "folder/subfolers/VmName.suffix"
      }
      "RDM": {,
        "DeviceIdentifier": "String content",
       "IsPhysical": true
      }
      
      "VCD": null,
      "VolumeIdentifier": "String content"
 

The following is an example response Json body for

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

{
      "Datastore": {
        "DatastoreClusterIdentifier": "String content",
        "DatastoreIdentifier": "String content",
        "IsThin": Boolean
      },
      "IsSwap": Boolean,
      "Preseed": {
       "DatastoreIdentifier": "String content",
       "Path": "folder/subfolers/VmName.suffix"
      }
      "RDM": {,
        "DeviceIdentifier": "String content",
       "IsPhysical": true
      }
      
      "VCD": null,
      "VolumeIdentifier": "String content"}

Response Values
VPG settings

Response values for https://zvm_ip:port/v1/vpgSettings and for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}.

Parameter Description Default
Basic Basic VPG settings.  

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 source site where the VPG virtual machines are protected.  

RecoverySiteIdentifier

The identifier of the target site where the VPG virtual machines are 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 is compressed before sending it to the recovery site.
False: Data is not compressed before sending it to the recovery site.
 

ZorgIdentifier

The identifier of the ZORG, Zerto organization, defined in the Zerto Cloud Manager.  
BootGroups Information about boot groups.  

BootGroups

Information about boot groups.  

BootDelayInSeconds

Specifies the delay, in seconds, between starting up the virtual machines in this group and starting up the virtual machines in the next group.  

BootGroupIdentifier

The identifier of a boot group.  

Name

The name of a boot group.  
Journal Information about the journal.  

DatastoreIdentifier

The identifier of the storage used by the journal. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.  

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.  
Extended Journal Copy
  Enabled

True: Extended Journal Copy is enabled.

False:Extended Journal Copy is disabled.

True
   RepositoryIdentifier

Repository identifier. Retrieved with:

https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/repositories

 
   RetentionRunTime The scheduled time to run all Retention processes. The format is in UTC ISO 8601as hh:mm. 03:00
   SchedulePolicy Retention schedule policies configures the Retention process to run Daily, Weekly, Monthly and Yearly.  
     Daily If the Retention schedule policy is set to Daily, Daily Retention processes will run.  
        Enabled

True: Daily scheduling policy is enabled.

False: Daily scheduling policy is disabled.

True
        RetentionDuration The Retention duration settings - count and duration type.  
             Count

Define the amount of time to keep the Daily Retentions for. A rotation of the Retention process will be performed to enforce the predefined Retention.

The possible values are 1 day to 7 years.

7
             DurationType

The unit of time keep the Daily Retentions for.

Possible values:

Days
Weeks
Months
Years
Days
     Weekly If the Retention schedule policy is set to Weekly, Weekly Retention processes will run. Null
        Enabled

True: Weekly scheduling policy is enabled.

False: Weekly scheduling policy is disabled

False
        DayofWeek

Define the day of week to run the Retention process.

The possible values are Sunday through Saturday.

Sunday
        RetentionType

Retention type - Full or Incremental:

Full: All the data is copied to the Repository.

Incremental: Only the changes from the last Retention process are copied.

Full
        RetentionDuration The Retention duration settings - count and duration type.  
             Count

Define the amount of time to keep the Weekly Retentions for. A rotation of the Retention process will be performed to enforce the predefined Retention.

The possible values are 1 day to 7 years.

4
             DurationType

The unit of time keep the Weekly Retentions for.

Possible values:

Days
Weeks
Months
Years
Weeks
     Monthly If the Retention schedule policy is set to Monthly, Monthly Retention processes will run.  
         Enabled

True: Monthly scheduling policy is enabled.

False: Monthly scheduling policy is disabled.

True
         DayofWeek

Define the day of week to run the Retention process.

The possible values are Sunday through Saturday.

Sunday
         WeekofMonth

Run a Retention process on the first, second, third, fourth or last selected day of each month. For example, you can choose to run a Retention process on the last Sunday of each month.

DayofMonth cannot be defined if this field is defined.

First
         DayofMonth

Run a Retention process on a specific date of the month up to the 28th and last. For example, you can choose to run a Retention process on the 12th of each month.

WeekofMonth cannot be defined if this field is defined.

 
         RetentionType

Retention type - Full or Incremental.

Full: All the data is copied to the Repository.

Incremental: Only the changes from the last Retention process are copied.

Full
         RetentionDuration The Retention duration settings - count and duration type.  
               Count

Define the amount of time to keep the Monthly Retentions for. A rotation of the Retention process will be performed to enforce the predefined Retention.

The possible values are 1 day to 7 years.

12
               DurationType

The unit of time keep the Monthly Retentions for.

Possible values:

Days
Weeks
Months
Years
Month
    Yearly If the Retention schedule policy is set to Yearly, Yearly Retention processes will run. Null
       Enabled

True: Yearly scheduling policy is enabled.

False: Yearly scheduling policy is disabled.

False
       DayofWeek

Define the day of week to run the Retention process.

The possible values are Sunday through Saturday.

Sunday
       DayofYear

Run a Retention process on the first or last selected day of the year. For example, you can choose to run a Retention process on the first Sunday of each year.

MonthofYear cannot be defined if this field is defined.

First
        MonthofYear Run a Retention process on a specific day and month of the year. For example, you can choose to run a Retention process every 12th of July. Possible values: January to December.  
        DayofMonth

Run a Retention process on a specific day and month of the year. For example, you can choose to run a Retention process every 12th of July.

The possible values are 1 to 28.

DayofYear cannot be defined if this field is defined.

 
        RetentionDuration Retention duration settings - count and duration type.  
              Count

Define the amount of time to keep the Yearly Retentions for. A rotation of the Retention process will be performed to enforce the predefined Retention.

The possible values are 1 day to 7 years.

7
              DurationType

The unit of time keep the Yearly Retentions for.

Possible values:

Days
Weeks
Months
Years
Years
  Retry

Automatically runs the Retention process in case the process does not start on the scheduled time.

 
     Enabled True: Automatic retry is enabled.

False: Automatic retry is disabled.

True
     Number Define the number of retry attempts. 3
     IntevalInMinutes Define the interval between retries in minutes. 10
  Indexing VM Indexing. Indexes the VM's file system so the VM's file and folder names can be easily and quickly searched for.  
      Vms Array of indexed VM identifiers. Empty
Networks Information about the networks that connect the protected and recovery sites.  

Failover

Information about the networks used for failover.  

Hypervisor

   

DefaultNetworkIdentifier

The network identifier of the network to use during a failover or move operation in which the recovered virtual machines will run.  

FailoverTest

Information about the networks used for testing failover.  

Hypervisor

   

DefaultNetworkIdentifier

The network identifier of the network to use when testing the failover of virtual machines in the recovery site.  

Recovery

Information about the recovery site.  

DefaultDatastoreClusterIdentifier

The identifier of the default datastore cluster used in the recovery site.

Note: Only when the recovery site is a vSphere site.


 

DefaultDatastoreIdentifier

The identifier of the default storage where the metadata files for the virtual machines are stored, such as the vmx or vhdx files. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.  

DefaultFolderIdentifier

The identifier of the default folder used for recovery. The identifier comprises the server identifier and the folder moref, with the format, serverid.moref.  

DefaultHostClusterIdentifier

The identifier of the default host cluster that handles the replicated data. The identifier comprises the server identifier and the host cluster moref, with the format, serverid.moref.  

DefaultHostIdentifier

The identifier of the default host that handles the replicated data. The identifier comprises the server identifier and the host moref, with the format, serverid.moref.  

ResourcePoolIdentifier

The identifier of the resource pool for the recovered virtual machines.  
Scripting Information about the scripts to run, either before or after recovery operation.  

PostRecovery

Information about scripts that are run after a recovery operation is performed.  

Command

The full path of the script. The script must be located on the same machine as the Zerto Virtual Manager for the recovery site.  

Parameters

Parameters to pass to the script.  

TimeoutInSeconds

The time-out, in seconds, for the script to run.  

PreRecovery

Information about scripts that are run before a recovery operation is performed.  

Command

The full path of the script. The script must be located on the same machine as the Zerto Virtual Manager for the recovery site.  

Parameters

Parameters to pass to the script.  

TimeoutInSeconds

The time-out, in seconds, for the script to run.  
Vms Information about the virtual machines in a VPG.  

BootGroupIdentifier

The boot group identifier of a virtual machine.  

Journal

Journal information of the virtual machine  

DatastoreIdentifier

The identifier of the storage used by the journal for the virtual machine. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.  

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

Information about NICs used by the virtual machine in the VPG.  

Failover

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

Hypervisor

   

DnsSuffix

The DNS name excluding the host.  

IpConfig

Information about the IP configuration of the recovery site used for failovers.  

Gateway

The mask for the network.  

IsDhcp

True: DHCP is used for the virtual machine on the recovery site.
False: A static IP address is used for the virtual machine on the recovery site.
 

PrimaryDns

The IP address of the primary DNS server that handles Internet protocol mapping.  

SecondaryDns

The IP address of the alternate, secondary, DNS server that handles Internet protocol mapping.  

StaticIp

The IP of the restored virtual machine.  

SubnetMask

The subnet mask for the network.  

NetworkIdentifier

The network identifier of the network used for failover or move by this virtual machine.  

ShouldReplaceMacAddress

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

FailoverTest

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

Hypervisor

   

DnsSuffix

The DNS name excluding the host.  

IpConfig

Information about the IP configuration of the recovery site used for testing failovers.  

Gateway

The mask for the network.  

IsDhcp

True: DHCP is used for the virtual machine on the recovery site.
False: A static IP address is used for the virtual machine on the recovery site.
 

PrimaryDns

The IP address of the primary DNS server that handles Internet protocol mapping.  

SecondaryDns

The IP address of the alternate, secondary, DNS server that handles Internet protocol mapping.  

StaticIp

The IP of the restored virtual machine.  

SubnetMask

The subnet mask for the network.  

NetworkIdentifier

The network identifier of the network used for testing failover by this virtual machine.  

ShouldReplaceMacAddress

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

NicIdentifier

The identifier of the NIC for which settings are returned.  

Recovery

Information about the recovery site.  

DatastoreClusterIdentifier

The identifier of the datastore cluster used in the recovery site for the VM.

Note: Only when the recovery site is a vSphere site.


 

DatastoreIdentifier

The identifier of the storage used by the journal for the virtual machine. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.  

FolderIdentifier

The identifier of the folder used for recovery by the virtual machine. The identifier comprises the server identifier and the folder moref, with the format, serverid.moref.  

HostClusterIdentifier

The identifier of the host cluster that handles the replicated data. The identifier comprises the server identifier and the host cluster moref, with the format, serverid.moref.  

HostIdentifier

The identifier of the host that handles the replicated data. The identifier comprises the server identifier and the host moref, with the format, serverid.moref.  

ResourcePoolIdentifier

The identifier of the resource pool for the recovered virtual machines. The identifier comprises the server identifier and the resource pool moref, with the format, serverid.moref.  

VmIdentifier

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

Volumes

Information about the volumes used by the virtual machine.  

Datastore

Information about the datastore used by the virtual machine.  

DatastoreClusterIdentifier

The identifier of the datastore cluster used in the recovery site for the volume.

Note: Only when the recovery site is a vSphere site.


 

DatastoreIdentifier

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

IsThin

True: The recovery volumes are thin-provisioned.
False: The recovery volumes are not thin-provisioned.
 

IsSwap

True: The recovery disk is marked as a temp data disk.
False: The recovery disk is not marked as a temp data disk.
 
Preseed Information about the disk used for preseeding.  

DatastoreIdentifier

The identifier of the datastore where the disk is stored.The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.  

Path

The path to the vmdk (vSphere) or vhdx (Hyper-V) file in the recovery site.

For all environments:
Use a single forward slash (/) to separate the components of a path. For example: ZertoVMs/dummy_vra_znest175hv02.zertolab.local/RecoveryVolumes/41b4fac2/vm44/VM-1.vhdx.
Backslash (\) is not supported.

 

RDM

Information about the RDM.  

DeviceIdentifier

The identifier of the device that is used for RDM.  

IsPhysical

True: The device will be used as RDM-Physical.
False: The device will be used as RDM-Virtual.
 

vCD

   

VolumeIdentifier

The identifier of the volume.  
VpgIdentifier The identifier of the VPG.  
VpgSettingsIdentifier The identifier of the VPG settings object.  
Basic

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

Parameter Description
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 source site where the VPG virtual machines are protected.
RecoverySiteIdentifier The identifier of the target site where the VPG virtual machines are 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 is compressed before sending it to the recovery site.
False: Data is not compressed before sending it to the recovery site.
ZorgIdentifier The identifier of the ZORG, Zerto organization, defined in the Zerto Cloud Manager.
Boot group

Response values for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/bootgroup.

Parameter Description
BootGroups Information about boot groups.

BootDelayInSeconds

Specifies the delay, in seconds, between starting up the virtual machines in this group and starting up the virtual machines in the next group.

BootGroupIdentifier

The identifier of a boot group.

Name

The name of a boot group.
Journal

Response values for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/journal.

Parameter Description
DatastoreIdentifier The identifier of the storage used by the journal. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.
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.
Extended Journal Copy

Response values for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/ltr.

Parameter Description
  Enabled

True: Extended Journal Copy is enabled.

False: If set to false, Extended Journal Copy will be deleted from VPG settings.

   RepositoryIdentifier

Repository identifier. Retrieved with:

https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/repositories

   RetentionRunTime Time to run all retention processes in UTC ISO 8601 format as hh:mm.
   SchedulePolicy Retention schedule policies - Daily, Weekly, Monthly and Yearly.
     Daily Retention processes will run daily.
        Enabled

True: Daily scheduling policy is enabled.

False: If set to false, daily scheduling policy will be deleted from Extended Journal Copy settings.

        RetentionDuration Retention duration settings.
             Count Define the number of days to keep the Daily Retentions. A rotation of the Retention process will be performed to enforce the predefined Retention. Possible values: 1 day through 7 days.
             DurationType The unit of time. Possible values: days, weeks, months, years.
     Weekly Retention processes will run weekly.
        Enabled

True: Weekly scheduling policy is enabled.

False: If set to false, Weekly scheduling policy will be deleted from Extended Journal Copy settings.

        DayofWeek Define the day of week to run the Retention process. Possible values: Sunday through Saturday.
        RetentionType

Retention type - Full or Incremental:

Full: All the data is copied to the Repository.

Incremental: Only the changes from the last Retention process are copied.

        RetentionDuration Retention duration settings.
             Count Define the number of weeks to keep the Weekly retentions. A rotation of the Retention process will be performed to enforce the predefined Retention. Possible values: 1 to 4 weeks.
             DurationType The unit of time. Possible values: days, weeks, months, years.
     Monthly Retention processes will run monthly.
         Enabled

True: Monthly scheduling policy is enabled.

False: If set to false, Monthly scheduling policy will be deleted from Extended Journal Copy settings.

         DayofWeek Define the day of week to run the Retention process. Possible values: Sunday through Saturday.
         WeekofMonth Run a Retention process on the first, second, third, fourth or last selected day of each month. For example, you can choose to run a Retention process on the last Sunday of each month.
         DayofMonth Run a Retention process on a specific date of the month up to the 28th and last. For example, you can choose to run a Retention process on the 12th of each month.
         RetentionType

Retention type - Full or Incremental:

Full: All the data is copied to the Repository.

Incremental: Only the changes from the last Retention process are copied.

         RetentionDuration Retention duration settings.
               Count Define the number of months to keep the Monthly retentions. A rotation of the Retention process will be performed to enforce the predefined Retention. Possible values: 1 to 12 months.
               DurationType The unit of time. Possible values: days, weeks, months, years.
    Yearly Retention processes will run yearly.
       Enabled

True: Yearly scheduling policy is enabled.

False: If set to false, Yearly scheduling policy will be deleted from Extended Journal Copy settings.

       DayofWeek Define the day of week to run the Retention process. Possible values: Sunday through Saturday.
       DayofYear Run a Retention process on the first or last selected day of the year. For example, you can choose to run a Retention process on the first Sunday of each year.
        MonthofYear Run a Retention process on a specific day and month of the year. For example, you can choose to run a Retention process every 12th of July. Possible values: January to December.
        DayofMonth Run a Retention process on a specific day and month of the year. For example, you can choose to run a Retention process every 12th of July. Possible values: 1 to 28.
        RetentionDuration Retention duration settings.
              Count Define the number of years to keep the Yearly retentions. A rotation of the Retention process will be performed to enforce the predefined Retention. Possible values: 1 to 7 years..
              DurationType The unit of time. Possible values: days, weeks, months, years.
  Retry Retry interval.
     Enabled Specifies whether retry is enabled.
     Number Number of retry attempts.
     IntevalInMinutes Interval in minutes between retries.
  Indexing VM indexing.
      Vms Array of indexed VM identifiers.
Network

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

Parameter Description
Failover Information about the networks used for failover.

Hypervisor

 

DefaultNetworkIdentifier

The network identifier of the network to use during a failover or move operation in which the recovered virtual machines will run.
FailoverTest Information about the networks used for testing failover.

Hypervisor

 

DefaultNetworkIdentifier

The network identifier of the network to use when testing the failover of virtual machines in the recovery site.
Priority

Response values for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/priority.

Response: Description
Possible VPG priorities:

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

Response values for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/recovery.

Parameter Description
DefaultDatastoreClusterIdentifier The identifier of the default datastore cluster used in the recovery site.

Note: Only when the recovery site is a vSphere site.


DefaultDatastoreIdentifier The identifier of the default storage where the metadata files for the virtual machines are stored, such as the vmx or vhdx files. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.
DefaultFolderIdentifier The identifier of the default folder used for recovery. The identifier comprises the server identifier and the folder moref, with the format, serverid.moref.
DefaultHostClusterIdentifier The identifier of the default host cluster that handles the replicated data. The identifier comprises the server identifier and the host cluster moref, with the format, serverid.moref.
DefaultHostIdentifier The identifier of the default host that handles the replicated data. The identifier comprises the server identifier and the host moref, with the format, serverid.moref.
ResourcePoolIdentifier The identifier of the resource pool for the recovered virtual machines. The identifier comprises the server identifier and the resource pool moref, with the format, serverid.moref.
Scripting

Response values for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/scripting.

Parameter Description
PostRecovery Information about scripts that are run after a recovery operation is performed.

Command

The full path of the script. The script must be located on the same machine as the Zerto Virtual Manager for the recovery site.

Parameters

Parameters to pass to the script.

TimeoutInSeconds

The time-out, in seconds, for the script to run.
PreRecovery Information about scripts that are run before a recovery operation is performed.

Command

The full path of the script. The script must be located on the same machine as the Zerto Virtual Manager for the recovery site.

Parameters

Parameters to pass to the script.

TimeoutInSeconds

The time-out, in seconds, for the script to run.
Virtual machines

Response values for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms and

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

Parameter Description
BootGroupIdentifier The boot group identifier of a virtual machine.
Journal Journal information of the virtual machine

DatastoreIdentifier

The identifier of the storage used by the journal for the virtual machine. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.

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

Information about NICs used by the virtual machine in the VPG.

Failover

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

Hypervisor

 

DnsSuffix

The DNS name excluding the host.

IpConfig

Information about the IP configuration of the recovery site used for failovers.

Gateway

The mask for the network.

IsDhcp

True: DHCP is used for the virtual machine on the recovery site.
False: A static IP address is used for the virtual machine on the recovery site.

PrimaryDns

The IP address of the primary DNS server that handles Internet protocol mapping.

SecondaryDns

The IP address of the alternate, secondary, DNS server that handles Internet protocol mapping.

StaticIp

The IP of the restored virtual machine.

SubnetMask

The subnet mask for the network.

NetworkIdentifier

The network identifier of the network used for failover or move by this virtual machine.

ShouldReplaceMacAddress

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

FailoverTest

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

Hypervisor

 

DnsSuffix

The DNS name excluding the host.

IpConfig

Information about the IP configuration of the recovery site used for testing failovers.

Gateway

The mask for the network.

IsDhcp

True: DHCP is used for the virtual machine on the recovery site.
False: A static IP address is used for the virtual machine on the recovery site.

PrimaryDns

The IP address of the primary DNS server that handles Internet protocol mapping.

SecondaryDns

The IP address of the alternate, secondary, DNS server that handles Internet protocol mapping.

StaticIp

The IP of the restored virtual machine.

SubnetMask

The subnet mask for the network.

NetworkIdentifier

The network identifier of the network used for testing failover by this virtual machine.

ShouldReplaceMacAddress

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

NicIdentifier

The identifier of the NIC for which settings are returned.
Recovery Information about the recovery site.

DatastoreClusterIdentifier

The identifier of the datastore cluster used in the recovery site for the VM.

Note: Only when the recovery site is a vSphere site.


DatastoreIdentifier

The identifier of the storage used by the journal for the virtual machine. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.

FolderIdentifier

The identifier of the folder used for recovery by the virtual machine. The identifier comprises the server identifier and the folder moref, with the format, serverid.moref.

HostClusterIdentifier

The identifier of the host cluster that handles the replicated data. The identifier comprises the server identifier and the host cluster moref, with the format, serverid.moref.

HostIdentifier

The identifier of the host that handles the replicated data. The identifier comprises the server identifier and the host moref, with the format, serverid.moref.

ResourcePoolIdentifier

The identifier of the resource pool for the recovered virtual machines. The identifier comprises the server identifier and the resource pool moref, with the format, serverid.moref.
VmIdentifier The identifier of the virtual machine. The identifier comprises the server identifier and the virtual machine moref, with the format, serverid.moref.

Volumes

Information about the volumes used by the virtual machine.

Datastore

Information about the datastore used by the virtual machine.

DatastoreClusterIdentifier

The identifier of the datastore cluster used in the recovery site for the volume.

Note: Only when the recovery site is a vSphere site.


DatastoreIdentifier

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

IsThin

True: The recovery volumes are thin-provisioned.
False: The recovery volumes are not thin-provisioned.

IsSwap

True: The recovery disk is marked as a temp data disk.False: The recovery disk is not marked as a temp data disk.
Preseed Information about the disk used for preseeding.

DatastoreIdentifier

The identifier of the datastore where the disk is stored.The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.

Path

The path to the vmdk (vSphere) or vhdx (Hyper-V) file in the recovery site.

For all environments:
Use a single forward slash (/) to separate the components of a path. For example: ZertoVMs/dummy_vra_znest175hv02.zertolab.local/RecoveryVolumes/41b4fac2/vm44/VM-1.vhdx.
Backslash (\) is not supported.

RDM Information about the RDM.

DeviceIdentifier

The identifier of the device that is used for RDM.

IsPhysical

True: The device will be used as RDM-Physical.
False: The device will be used as RDM-Virtual.

vCD

 

VolumeIdentifier

The identifier of the volume.
Virtual machine NICs

Response values for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}/nic and https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}/nic/{nicIdentifier}.

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

Hypervisor

 

DnsSuffix

The DNS name excluding the host.

IpConfig

Information about the IP configuration of the recovery site used for failovers.

Gateway

The mask for the network.

IsDhcp

True: DHCP is used for the virtual machine on the recovery site.
False: A static IP address is used for the virtual machine on the recovery site.

PrimaryDns

The IP address of the primary DNS server that handles Internet protocol mapping.

SecondaryDns

The IP address of the alternate, secondary, DNS server that handles Internet protocol mapping.

StaticIp

The IP of the restored virtual machine.

SubnetMask

The subnet mask for the network.

NetworkIdentifier

The network identifier of the network used for failover or move by this virtual machine.

ShouldReplaceMacAddress

True: The Media Access Control (MAC) address used on the protected site is copied to the recovery site.
False: The Media Access Control (MAC) address used on the protected site is not copied to the recovery site.
FailoverTest Information about the networks used for testing failover by this virtual machine.

Hypervisor

 

DnsSuffix

The DNS name excluding the host.

IpConfig

Information about the IP configuration of the recovery site used for testing failovers.

Gateway

The mask for the network.

IsDhcp

True: DHCP is used for the virtual machine on the recovery site.
False: A static IP address is used for the virtual machine on the recovery site.

PrimaryDns

The IP address of the primary DNS server that handles Internet protocol mapping.

SecondaryDns

The IP address of the alternate, secondary, DNS server that handles Internet protocol mapping.

StaticIp

The IP of the restored virtual machine.

SubnetMask

The subnet mask for the network.

NetworkIdentifier

The network identifier of the network used for testing failover by this virtual machine.

ShouldReplaceMacAddress

True: Copy the Media Access Control (MAC) address used on the protected site to the recovery site.
False: Do not copy the MAC address from the protected site to the recovery site.
NicIdentifier The identifier of the NIC for which settings are returned.
Virtual machine volumes

Response values for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms/{vmIdentifier}/volumes and https://zvm_ip:port/v1/vpgSettings/vpgSettingsIdentifier}/vms/{vmIdentifier}/volumes/{volumeId}.

Parameter Description
Datastore Information about the datastore used by the virtual machine.

DatastoreClusterIdentifier

The identifier of the datastore cluster used in the recovery site for the volume.

Note: Only when the recovery site is a vSphere site.


DatastoreIdentifier

The identifier of the storage used by the journal for the virtual machine. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.

IsThin

True: The recovery volumes are thin-provisioned.
False: The recovery volumes are not thin-provisioned.
IsSwap True: The recovery disk is marked as a temp data disk.
False: The recovery disk is not marked as a temp data disk.
Preseed Information about the disk used for preseeding.

DatastoreIdentifier

The identifier of the datastore where the disk is stored.The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.

Path

The path to the vmdk (vSphere) or vhdx (Hyper-V) file in the recovery site.

For all environments:
Use a single forward slash (/) to separate the components of a path. For example: ZertoVMs/dummy_vra_znest175hv02.zertolab.local/RecoveryVolumes/41b4fac2/vm44/VM-1.vhdx.
Backslash (\) is not supported.

RDM Information about the RDM.

DeviceIdentifier

The identifier of the device that is used for RDM.

IsPhysical

True: The device will be used as RDM-Physical.
False: The device will be used as RDM-Virtual.
VolumeIdentifier The identifier of the datastore where the disk is stored. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.

VPG Settings: POST

The POST method is used for the following purposes:

To create a VPG settings identifier, or a session identifier.
To commit the settings object to deploy the VPG in the Zerto Virtual Manager
To add virtual machines to a VPG
To add NIC settings to a virtual machine.

You can use the same URL, https://zvm_ip:port/v1/vpgSettings, to either create a new VPG or edit an existing one.

To create a new VPG, put the parameters you wish to include in the VPG - in the request body.
To update an existing VPG, put the VPG Identifier in the request body.

Note: A maximum of 100 VPGSettings objects can coexist in temporary state. Make sure you commit or delete VPG settings objects that are no longer in use.

See also:

VPG Settings: GET
VPG Settings: PUT
VPG Settings: DELETE
URL
Create a new VPG settings Identifier https://zvm_ip:port/v1/vpgSettings
Create VPG settings Identifier for an existing VPG https://zvm_ip:port/v1/vpgSettings
Create VPG Extended Journal Copy settings object https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/ltr
Commit a settings object https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/commit
Add VMs to a settings object https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/vms

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 that is to be added to a VPG or for a NIC that is added to a virtual machine in the VPG. The identifier comprises the server identifier and the virtual machine moref, with the format, serverid.moref.

When creating a VPG settings object, The following is an example of a request body in Json format for https://zvm_ip:port/v1/vpgSettings.

  "Basic": {
    "JournalHistoryInHours":2147483647,
    "Name": "String content",
    "Priority": "String content",
    "ProtectedSiteIdentifier": "String content",
    "RecoverySiteIdentifier": "String content",
    "RpoInSeconds":4294967295,
    "ServiceProfileIdentifier": "String content",
    "TestIntervalInMinutes":2147483647,
    "UseWanCompression": Boolean,
    "ZorgIdentifier": "String content"
  },

  "BootGroups": {
    "BootGroups":[{
      "BootDelayInSeconds":4294967295,
      "BootGroupIdentifier": "String content",
      "Name": "String content"
    }]
  },

  "Journal": {

    "DatastoreIdentifier": "String content",
    "Limitation": {
      "HardLimitInMB":2147483647,
      "HardLimitInPercent":2147483647,
      "WarningThresholdInMB":2147483647,
      "WarningThresholdInPercent":2147483647
    }
  },


{   
  "LongTermRetention": {
   "Enabled": Boolean,
   "RepositoryIdentifier": "repositoryIdentifier",
    "RetentionRunTime": "hh:mm",
     "SchedulePolicy": {
      "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,
    "Number": "Integer",
    "IntervalInMinutes": "Integer"
 },
  "Indexing": {
     "Vms": [ "VmIdentifier" ]
  }
 }
}

  "Networks": {
    "Failover": {
      "Hypervisor": {
        "DefaultNetworkIdentifier": "String content"
      }
    },
    "FailoverTest": {
      "Hypervisor": {
        "DefaultNetworkIdentifier": "String content"
      }
    }
  },

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

  "Scripting": {
    
    "PostRecovery": {
      "Command": "String content",
      "Parameters": "String content",
      "TimeoutInSeconds":2147483647
    },
    "PreRecovery": {
      "Command": "String content",
      "Parameters": "String content",
      "TimeoutInSeconds":2147483647
    }
  },

  "Vms":[{

    "BootGroupIdentifier": "String content",
    "Journal": {

      "DatastoreIdentifier": "String content",
      "Limitation": {
        "HardLimitInMB":4294967295,
        "HardLimitInPercent":4294967295,
        "WarningThresholdInMB":4294967295,
        "WarningThresholdInPercent":4294967295
      }
    },

  "Nics":[{
      "Failover": {
        "Hypervisor": {
          "DnsSuffix": "String content",
          "IpConfig": {
            "Gateway": "String content",
            "IsDhcp": Boolean,
            "PrimaryDns": "String content",
            "SecondaryDns": "String content",
            "StaticIp": "String content",
            "SubnetMask": "String content"
          },
          "NetworkIdentifier": "String content",
          "ShouldReplaceMacAddress": Boolean
        }
      },

        "FailoverTest": {
        "Hypervisor": {
          "DnsSuffix": "String content",
          "IpConfig": {
            "Gateway": "String content",
            "IsDhcp": Boolean,
            "PrimaryDns": "String content",
            "SecondaryDns": "String content",
            "StaticIp": "String content",
            "SubnetMask": "String content"
          },
          "NetworkIdentifier": "String content",
          "ShouldReplaceMacAddress": Boolean
        },
      },
      "NicIdentifier": "String content"
    }],

    "Recovery": {
      "DatastoreClusterIdentifier": "String content",
      "DatastoreIdentifier": "String content",
      "FolderIdentifier": "String content",
      "HostClusterIdentifier": "String content",
      "HostIdentifier": "String content",
      "ResourcePoolIdentifier": "String content"
    },
    "VmIdentifier": "String content",
    "Volumes":[{
      "Datastore": {
        "DatastoreClusterIdentifier": "String content",
        "DatastoreIdentifier": "String content",
        "IsThin": Boolean
      },
      "IsSwap": Boolean,
      "Preseed": null,
      "RDM": null,
      "VCD": null,
      "VolumeIdentifier": "String content"

When creating a VPG settings object for an existing VPG, the following is an example of a request body in Json format for https://zvm_ip:port/v1/vpgSettings.

{
  "VpgIdentifier":"String content"
}

The request body for https://zvm_ip:port/v1/vpgSettings/commit is empty.

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

{
  "BootGroupIdentifier":"String content",
  "Journal":{

    "DatastoreIdentifier":"String content",
    "Limitation":{
      "HardLimitInMB":4294967295,
      "HardLimitInPercent":4294967295,
      "WarningThresholdInMB":4294967295,
      "WarningThresholdInPercent":4294967295
    }
  },

  "Nics":[{
    "Failover":{
      "Hypervisor":{
        "DnsSuffix":"String content",
        "IpConfig":{
          "Gateway":"String content",
          "IsDhcp":true,
          "PrimaryDns":"String content",
          "SecondaryDns":"String content",
          "StaticIp":"String content",
          "SubnetMask":"String content"
        },
        "NetworkIdentifier":"String content",
        "ShouldReplaceMacAddress":true
      }
    },
    "FailoverTest":{
      "Hypervisor":{
        "DnsSuffix":"String content",
        "IpConfig":{
          "Gateway":"String content",
          "IsDhcp":true,
          "PrimaryDns":"String content",
          "SecondaryDns":"String content",
          "StaticIp":"String content",
          "SubnetMask":"String content"
        },
        "NetworkIdentifier":"String content",
        "ShouldReplaceMacAddress":true
      }
    },
    "NicIdentifier":"String content"
  }],

  "Recovery":{
    "DatastoreClusterIdentifier":"String content",
    "DatastoreIdentifier":"String content",
    "FolderIdentifier":"String content",
    "HostClusterIdentifier":"String content",
    "HostIdentifier":"String content",
    "ResourcePoolIdentifier":"String content"
  },

  "VmIdentifier":"String content",
    "Volumes":[{
      "Datastore": {
        "DatastoreClusterIdentifier": "String content",
        "DatastoreIdentifier": "String content",
        "IsThin": Boolean
      },
      "IsSwap": Boolean,
      "Preseed": null,
      "RDM": null,
      "VCD": null,
      "VolumeIdentifier": "String content"
 

Request Values
Create a VPG settings object for a new VPG

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

Parameter Description
Basic Basic VPG settings.

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

RecoverySiteIdentifier

The identifier of the target 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.

ZorgIdentifier

The identifier of the ZORG, Zerto organization, defined in the Zerto Cloud Manager.
BootGroups Information about boot groups.

BootGroups

BootDelayInSeconds

Specifies the delay, in seconds, between starting up the virtual machines in this group and starting up the virtual machines in the next group.

BootGroupIdentifier

The identifier of a boot group.

Name

The name of a boot group.
Journal Information about the journal.

DatastoreIdentifier

The identifier of the storage used by the journal for the virtual machine. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.

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.
Extended Journal Copy
  Enabled

True: Extended Journal Copy is enabled.

False: If set to false, Extended Journal Copy will be deleted from VPG settings.

   RepositoryIdentifier

Repository identifier. Retrieved with:

https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/repositories

   RetentionRunTime Time to run all retention processes in UTC ISO 8601 format as hh:mm.
   SchedulePolicy Retention schedule policies - Daily, Weekly, Monthly and Yearly.
     Daily Retention processes will run daily.
        Enabled

True: Daily scheduling policy is enabled.

False: If set to false, daily scheduling policy will be deleted from Extended Journal Copy settings.

        RetentionDuration Retention duration settings.
             Count Define the number of days to keep the Daily Retentions. A rotation of the Retention process will be performed to enforce the predefined Retention. Possible values: 1 day through 7 days.
             DurationType The unit of time. Possible values: days, weeks, months, years.
     Weekly Retention processes will run weekly.
        Enabled

True: Weekly scheduling policy is enabled.

False: If set to false, Weekly scheduling policy will be deleted from Extended Journal Copy settings.

        DayofWeek Define the day of week to run the Retention process. Possible values: Sunday through Saturday.
        RetentionType

Retention type - Full or Incremental:

Full: All the data is copied to the Repository.

Incremental: Only the changes from the last Retention process are copied.

        RetentionDuration Retention duration settings.
             Count Define the number of weeks to keep the Weekly retentions. A rotation of the Retention process will be performed to enforce the predefined Retention. Possible values: 1 to 4 weeks.
             DurationType The unit of time. Possible values: days, weeks, months, years.
     Monthly Retention processes will run monthly.
         Enabled

True: Monthly scheduling policy is enabled.

False: If set to false, Monthly scheduling policy will be deleted from Extended Journal Copy settings.

         DayofWeek Define the day of week to run the Retention process. Possible values: Sunday through Saturday.
         WeekofMonth Run a Retention process on the first, second, third, fourth or last selected day of each month. For example, you can choose to run a Retention process on the last Sunday of each month.
         DayofMonth Run a Retention process on a specific date of the month up to the 28th and last. For example, you can choose to run a Retention process on the 12th of each month.
         RetentionType

Retention type - Full or Incremental:

Full: All the data is copied to the Repository.

Incremental: Only the changes from the last Retention process are copied.

         RetentionDuration Retention duration settings.
               Count Define the number of months to keep the Monthly retentions. A rotation of the Retention process will be performed to enforce the predefined Retention. Possible values: 1 to 12 months.
               DurationType The unit of time. Possible values: days, weeks, months, years.
    Yearly Retention processes will run yearly.
       Enabled

True: Yearly scheduling policy is enabled.

False: If set to false, Yearly scheduling policy will be deleted from Extended Journal Copy settings.

       DayofWeek Define the day of week to run the Retention process. Possible values: Sunday through Saturday.
       DayofYear Run a Retention process on the first or last selected day of the year. For example, you can choose to run a Retention process on the first Sunday of each year.
        MonthofYear Run a Retention process on a specific day and month of the year. For example, you can choose to run a Retention process every 12th of July. Possible values: January to December.
        DayofMonth Run a Retention process on a specific day and month of the year. For example, you can choose to run a Retention process every 12th of July. Possible values: 1 to 28.
        RetentionDuration Retention duration settings.
              Count Define the number of years to keep the Yearly retentions. A rotation of the Retention process will be performed to enforce the predefined Retention. Possible values: 1 to 7 years..
              DurationType The unit of time. Possible values: days, weeks, months, years.
  Retry Retry interval.
     Enabled Specifies whether retry is enabled.
     Number Number of retry attempts.
     IntevalInMinutes Interval in minutes between retries.
  Indexing VM indexing.
      Vms Array of indexed VM identifiers.

Networks

Information about the networks that connect the protected and recovery sites.

Failover

Information about the networks used for failover.

Hypervisor

DefaultNetworkIdentifier

The network identifier of the network to use during a failover or move operation in which the recovered virtual machines will run.

FailoverTest

Information about the networks used for testing failover.

Hypervisor

DefaultNetworkIdentifier

The network identifier of the network to use when testing the failover of virtual machines in the recovery site.
Recovery Information about the recovery site.

DefaultDatastoreClusterIdentifier

The identifier of the default datastore cluster used in the recovery site.

Note: Only when the recovery site is a vSphere site.


DefaultDatastoreIdentifier

The identifier of the default storage where the metadata files for the virtual machines are stored, such as the vmx or vhdx files. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.

DefaultFolderIdentifier

The identifier of the default host cluster that handles the replicated data. The identifier comprises the server identifier and the folder moref, with the format, serverid.moref.

DefaultHostClusterIdentifier

The identifier of the default host that handles the replicated data. The identifier comprises the server identifier and the host cluster moref, with the format, serverid.moref.

DefaultHostIdentifier

The identifier of the resource pool for the recovered virtual machines. The identifier comprises the server identifier and the host moref, with the format, serverid.moref.

ResourcePoolIdentifier

The identifier of the storage cluster of the VRA virtual machine.



The identifier comprises the server identifier and the resource pool moref, with the format, serverid.moref.
Scripting Information about the scripts to run, either before or after recovery operation.

PostRecovery

Information about scripts that are run after a recovery operation is performed.

Command

The full path of the script. The script must be located on the same machine as the Zerto Virtual Manager for the recovery site.

Parameters

Parameters to pass to the script.

TimeoutInSeconds

The time-out, in seconds, for the script to run.

PreRecovery

Information about scripts that are run before a recovery operation is performed.

Command

The full path of the script. The script must be located on the same machine as the Zerto Virtual Manager for the recovery site.

Parameters

Parameters to pass to the script.

TimeoutInSeconds

The time-out, in seconds, for the script to run.
Vms Information about the virtual machines in a VPG.

BootGroupIdentifier

The boot group identifier of a virtual machine.

Journal

Journal information of the virtual machine

DatastoreIdentifier

The identifier of the storage used by the journal for the virtual machine. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.

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

Information about NICs used by the virtual machine in the VPG.

Failover

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

Hypervisor

DnsSuffix

The DNS name excluding the host.

IpConfig

Information about the IP configuration of the recovery site used for failovers.

Gateway

The mask for the network.

IsDhcp

True: DHCP will be used for the virtual machine on the recovery site.
False: A static IP address will be used for the virtual machine on the recovery site.

PrimaryDns

The IP address of the primary DNS server that handles Internet protocol mapping.

SecondaryDns

The IP address of the alternate, secondary, DNS server that handles Internet protocol mapping.

StaticIp

The IP of the restored virtual machine.

SubnetMask

The subnet mask for the network.

NetworkIdentifier

The network identifier of the network used for failover or move by this virtual machine.

ShouldReplaceMacAddress

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.

FailoverTest

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

Hypervisor

DnsSuffix

The DNS name excluding the host.

IpConfig

Information about the IP configuration of the recovery site used for testing failovers.

Gateway

The mask for the network.

IsDhcp

True: DHCP will be used for the virtual machine on the recovery site.
False: A static IP address will be used for the virtual machine on the recovery site.

PrimaryDns

The IP address of the primary DNS server that handles Internet protocol mapping.

SecondaryDns

The IP address of the alternate, secondary, DNS server that handles Internet protocol mapping.

StaticIp

The IP of the restored virtual machine.

SubnetMask

The subnet mask for the network.

NetworkIdentifier

The network identifier of the network used for testing failover by this virtual machine.

ShouldReplaceMacAddress

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.

NicIdentifier

The identifier of the NIC for which settings are returned.

Recovery

Information about the recovery site.

DatastoreIdentifier

The identifier of the storage used by the journal for the virtual machine. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref

FolderIdentifier

The identifier of the folder used for recovery by the virtual machine. The identifier comprises the server identifier and the folder moref, with the format, serverid.moref.

HostClusterIdentifier

The identifier of the host cluster that handles the replicated data. The identifier comprises the server identifier and the host cluster moref, with the format, serverid.moref.

HostIdentifier

The identifier of the host that handles the replicated data. The identifier comprises the server identifier and the host moref, with the format, serverid.moref.

ResourcePoolIdentifier

The identifier of the resource pool for the recovered virtual machines. The identifier comprises the server identifier and the resource pool moref, with the format, serverid.moref.

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.

Datastore

Information about the datastore used by the virtual machine.

DatastoreClusterIdentifier

The identifier of the datastore cluster used in the recovery site for the volume.

Note: Only when the recovery site is a vSphere site.

DatastoreIdentifier

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

IsThin

True: The recovery volumes are thin-provisioned.
False: The recovery volumes are not thin-provisioned.

IsSwap

True: The recovery disk is marked as a temp data disk.
False: The recovery disk is not marked as a temp data disk.
Preseed Information about the disk used for preseeding.

DatastoreIdentifier

The identifier of the datastore where the disk is stored.The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.

Path

The path to the vmdk (vSphere) or vhdx (Hyper-V) file in the recovery site.

For all environments:
Use a single forward slash (/) to separate the components of a path. For example: ZertoVMs/dummy_vra_znest175hv02.zertolab.local/RecoveryVolumes/41b4fac2/vm44/VM-1.vhdx.
Backslash (\) is not supported.

RDM Information about the RDM.

DeviceIdentifier

The identifier of the device that is used for RDM.

IsPhysical

True: The device will be used as RDM-Physical.
False: The device will be used as RDM-Virtual.

vCD

 

VolumeIdentifier

The identifier of the volume.
Create a VPG Extended Journal Copy settings object

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

Parameter Description
  Enabled

True: Extended Journal Copy is enabled.

False: If set to false, Extended Journal Copy will be deleted from VPG settings.

   RepositoryIdentifier

Repository identifier. Retrieved with:

https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/repositories

   RetentionRunTime Time to run all retention processes in UTC ISO 8601 format as hh:mm.
   SchedulePolicy Retention schedule policies - Daily, Weekly, Monthly and Yearly.
     Daily Retention processes will run daily.
        Enabled

True: Daily scheduling policy is enabled.

False: If set to false, daily scheduling policy will be deleted from Extended Journal Copy settings.

        RetentionDuration Retention duration settings.
             Count Define the number of days to keep the Daily Retentions. A rotation of the Retention process will be performed to enforce the predefined Retention. Possible values: 1 day through 7 days.
             DurationType The unit of time. Possible values: days, weeks, months, years.
     Weekly Retention processes will run weekly.
        Enabled

True: Weekly scheduling policy is enabled.

False: If set to false, Weekly scheduling policy will be deleted from Extended Journal Copy settings.

        DayofWeek Define the day of week to run the Retention process. Possible values: Sunday through Saturday.
        RetentionType

Retention type - Full or Incremental:

Full: All the data is copied to the Repository.

Incremental: Only the changes from the last Retention process are copied.

        RetentionDuration Retention duration settings.
             Count Define the number of weeks to keep the Weekly retentions. A rotation of the Retention process will be performed to enforce the predefined Retention. Possible values: 1 to 4 weeks.
             DurationType The unit of time. Possible values: days, weeks, months, years.
     Monthly Retention processes will run monthly.
         Enabled

True: Monthly scheduling policy is enabled.

False: If set to false, Monthly scheduling policy will be deleted from Extended Journal Copy settings.

         DayofWeek Define the day of week to run the Retention process. Possible values: Sunday through Saturday.
         WeekofMonth Run a Retention process on the first, second, third, fourth or last selected day of each month. For example, you can choose to run a Retention process on the last Sunday of each month.
         DayofMonth Run a Retention process on a specific date of the month up to the 28th and last. For example, you can choose to run a Retention process on the 12th of each month.
         RetentionType

Retention type - Full or Incremental:

Full: All the data is copied to the Repository.

Incremental: Only the changes from the last Retention process are copied.

         RetentionDuration Retention duration settings.
               Count Define the number of months to keep the Monthly retentions. A rotation of the Retention process will be performed to enforce the predefined Retention. Possible values: 1 to 12 months.
               DurationType The unit of time. Possible values: days, weeks, months, years.
    Yearly Retention processes will run yearly.
       Enabled

True: Yearly scheduling policy is enabled.

False: If set to false, Yearly scheduling policy will be deleted from Extended Journal Copy settings.

       DayofWeek Define the day of week to run the Retention process. Possible values: Sunday through Saturday.
       DayofYear Run a Retention process on the first or last selected day of the year. For example, you can choose to run a Retention process on the first Sunday of each year.
        MonthofYear Run a Retention process on a specific day and month of the year. For example, you can choose to run a Retention process every 12th of July. Possible values: January to December.
        DayofMonth Run a Retention process on a specific day and month of the year. For example, you can choose to run a Retention process every 12th of July. Possible values: 1 to 28.
        RetentionDuration Retention duration settings.
              Count Define the number of years to keep the Yearly retentions. A rotation of the Retention process will be performed to enforce the predefined Retention. Possible values: 1 to 7 years..
              DurationType The unit of time. Possible values: days, weeks, months, years.
  Retry Retry interval.
     Enabled Specifies whether retry is enabled.
     Number Number of retry attempts.
     IntevalInMinutes Interval in minutes between retries.
  Indexing VM indexing.
      Vms Array of indexed VM identifiers.
Create a VPG settings object for an existing VPG

 

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

Parameter Description
VpgIdentifier The identifier of the existing VPG.
Commit a VPG settings object

Request values for https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/commit is empty.

Add a virtual machine to a VPG settings object

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

Parameter Description
BootGroupIdentifier The boot group identifier of a virtual machine.
Journal Journal information of the virtual machine

DatastoreIdentifier

The identifier of the storage used by the journal for the virtual machine. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.

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 Information about NICs used by the virtual machine in the VPG.

Failover

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

Hypervisor

DnsSuffix

The DNS name excluding the host.

IpConfig

Information about the IP configuration of the recovery site used for failovers.

Gateway

The mask for the network.

IsDhcp

True: DHCP will be used for the virtual machine on the recovery site.
False: A static IP address will be used for the virtual machine on the recovery site.

PrimaryDns

The IP address of the primary DNS server that handles Internet protocol mapping.

SecondaryDns

The IP address of the alternate, secondary, DNS server that handles Internet protocol mapping.

StaticIp

The IP of the restored virtual machine.

SubnetMask

The subnet mask for the network.

NetworkIdentifier

The network identifier of the network used for failover or move by this virtual machine.

ShouldReplaceMacAddress

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.

FailoverTest

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

Hypervisor

DnsSuffix

The DNS name excluding the host.

IpConfig

Information about the IP configuration of the recovery site used for testing failovers.

Gateway

The mask for the network.

IsDhcp

True: DHCP will be used for the virtual machine on the recovery site.
False: A static IP address will be used for the virtual machine on the recovery site.

PrimaryDns

The IP address of the primary DNS server that handles Internet protocol mapping.

SecondaryDns

The IP address of the alternate, secondary, DNS server that handles Internet protocol mapping.

StaticIp

The IP of the restored virtual machine.

SubnetMask

The subnet mask for the network.

NetworkIdentifier

The network identifier of the network used for testing failover by this virtual machine.

ShouldReplaceMacAddress

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.

NicIdentifier

The identifier of the NIC for which settings are returned.
Recovery Information about the recovery site.

DatastoreClusterIdentifier

The identifier of the datastore cluster used in the recovery site for the VM.

Note: Only when the recovery site is a vSphere site.

DatastoreIdentifier

The identifier of the storage used by the journal for the virtual machine. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.

FolderIdentifier

The identifier of the folder used for recovery by the virtual machine. The identifier comprises the server identifier and the folder moref, with the format, serverid.moref.

HostClusterIdentifier

The identifier of the host cluster that handles the replicated data. The identifier comprises the server identifier and the host cluster moref, with the format, serverid.moref.

HostIdentifier

The identifier of the host that handles the replicated data. The identifier comprises the server identifier and the host moref, with the format, serverid.moref.

ResourcePoolIdentifier

The identifier of the resource pool for the recovered virtual machines. The identifier comprises the server identifier and the resource pool moref, with the format, serverid.moref.
VmIdentifier The identifier of the virtual machine. The identifier comprises the server identifier and the virtual machine moref, with the format, serverid.moref.

Volumes

Information about the volumes used by the virtual machine.

Datastore

Information about the datastore used by the virtual machine.

DatastoreClusterIdentifier

The identifier of the datastore cluster used in the recovery site for the volume.

Note: Only when the recovery site is a vSphere site.


DatastoreIdentifier

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

IsThin

True: The recovery volumes are thin-provisioned.
False: The recovery volumes are not thin-provisioned.

IsSwap

True: The recovery disk is marked as a temp data disk.
False: The recovery disk is not marked as a temp data disk.
Preseed Information about the disk used for preseeding.

DatastoreIdentifier

The identifier of the datastore where the disk is stored.The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.

Path

The path to the vmdk (vSphere) or vhdx (Hyper-V) file in the recovery site.

For all environments:
Use a single forward slash (/) to separate the components of a path. For example: ZertoVMs/dummy_vra_znest175hv02.zertolab.local/RecoveryVolumes/41b4fac2/vm44/VM-1.vhdx.
Backslash (\) is not supported.

RDM Information about the RDM.

DeviceIdentifier

The identifier of the device that is used for RDM.

IsPhysical

True: The device will be used as RDM-Physical.
False: The device will be used as RDM-Virtual.

vCD

 

VolumeIdentifier

The identifier of the volume.
Response In Json Format

The following is an example response Json body for https://zvm_ip:port/v1/vpgSettings and https://zvm_ip:port/v1/vpgSettings/commit.

"String content"

The response body for https://zvm_ip:port/v1/vpgSettings/vms and for https://zvm_ip:port/v1/vpgSettings/vms/{VMIDENTIFIER}/nics is empty.

Response values

The response value for https://zvm_ip:port/v1/vpgSettings is the vpgSettingsIdentifier.

The response value for https://zvm_ip:port/v1/vpgSettings/commit is the task identifier.

VPG Settings: PUT

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

VPG Settings: GET
VPG Settings: POST
VPG Settings: DELETE
Edit VPG settings object https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}
Edit basic settings object https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/basic
Edit boot settings object https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/bootgroup
Edit journal settings object https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/journal
Edit Extended Journal Copy settings object https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/ltr
Edit network settings object https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/networks
Edit recovery settings object https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/recovery
Edit script settings object https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/scripting
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":2147483647,
    "Name":"String content",
    "Priority":"String content",
    "ProtectedSiteIdentifier":"String content",
    "RecoverySiteIdentifier":"String content",
    "RpoInSeconds":4294967295,
    "ServiceProfileIdentifier":"String content",
    "TestIntervalInMinutes":2147483647,
    "UseWanCompression":true,
    "ZorgIdentifier":"String content"
  },

  "BootGroups":{
    "BootGroups":[{
      "BootDelayInSeconds":4294967295,
      "BootGroupIdentifier":"String content",
      "Name":"String content"
    }]
  },

  "Journal":{

    "DatastoreIdentifier":"String content",
    "Limitation":{
      "HardLimitInMB":2147483647,
      "HardLimitInPercent":2147483647,
      "WarningThresholdInMB":2147483647,
      "WarningThresholdInPercent":2147483647
    }
  },


{   
  "LongTermRetention": {
   "Enabled": Boolean,
   "RepositoryIdentifier": "repositoryIdentifier",
    "RetentionRunTime": "hh:mm",
     "SchedulePolicy": {
      "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,
    "Number": "Integer",
    "IntervalInMinutes": "Integer"
 },
  "Indexing": {
     "Vms": [ "VmIdentifier" ]
  }
 }
}

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

  "Scripting":{
    
    "PostRecovery":{
      "Command":"String content",
      "Parameters":"String content",
      "TimeoutInSeconds":2147483647
    },
    "PreRecovery":{
      "Command":"String content",
      "Parameters":"String content",
      "TimeoutInSeconds":2147483647
    }
  },

  "Vms":[{

    "BootGroupIdentifier":"String content",
    "Journal":{

      "DatastoreIdentifier":"String content",
      "Limitation":{
        "HardLimitInMB":4294967295,
        "HardLimitInPercent":4294967295,
        "WarningThresholdInMB":4294967295,
        "WarningThresholdInPercent":4294967295
      }
    },

    "Nics":[{
      "Failover":{
        "Hypervisor":{
          "DnsSuffix":"String content",
          "IpConfig":{
            "Gateway":"String content",
            "IsDhcp":true,
            "PrimaryDns":"String content",
            "SecondaryDns":"String content",
            "StaticIp":"String content",
            "SubnetMask":"String content"
          },
          "NetworkIdentifier":"String content",
          "ShouldReplaceMacAddress":true
        }
      },
      "FailoverTest":{
        "Hypervisor":{
          "DnsSuffix":"String content",
          "IpConfig":{
            "Gateway":"String content",
            "IsDhcp":true,
            "PrimaryDns":"String content",
            "SecondaryDns":"String content",
            "StaticIp":"String content",
            "SubnetMask":"String content"
          },
          "NetworkIdentifier":"String content",
          "ShouldReplaceMacAddress":true
        }
      },
      "NicIdentifier":"String content"
    }],

    "Recovery":{
      "DatastoreClusterIdentifier":"String content",
      "DatastoreIdentifier":"String content",
      "FolderIdentifier":"String content",
      "HostClusterIdentifier":"String content",
      "HostIdentifier":"String content",
      "ResourcePoolIdentifier":"String content"
    },

    "VmIdentifier":"String content",
    "Volumes":[{
      "Datastore": {
        "DatastoreClusterIdentifier": "String content",
        "DatastoreIdentifier": "String content",
        "IsThin": Boolean
      },
      "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":2147483647,
  "Name":"String content",
  "Priority":"String content",
  "ProtectedSiteIdentifier":"String content",
  "RecoverySiteIdentifier":"String content",
  "RpoInSeconds":4294967295,
  "ServiceProfileIdentifier":"String content",
  "TestIntervalInMinutes":2147483647,
  "UseWanCompression":true,
  "ZorgIdentifier":"String content"
}

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

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

{
  "BootGroups":[{
    "BootDelayInSeconds":4294967295,
    "BootGroupIdentifier":"String content",
    "Name":"String content"
  }]
}

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

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

{

  "DatastoreIdentifier":"String content",
  "Limitation":{
    "HardLimitInMB":2147483647,
    "HardLimitInPercent":2147483647,
    "WarningThresholdInMB":2147483647,
    "WarningThresholdInPercent":2147483647
  }
}

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

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


{   
  "LongTermRetention": {
   "Enabled": Boolean,
   "RepositoryIdentifier": "repositoryIdentifier",
    "RetentionRunTime": "hh:mm",
     "SchedulePolicy": {
      "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,
    "Number": "Integer",
    "IntervalInMinutes": "Integer"
 },
  "Indexing": {
     "Vms": [ "VmIdentifier" ]
  }
 }
}

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

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

{
  "Failover":{
    "Hypervisor":{
      "DefaultNetworkIdentifier":"String content"
    }
  },
  "FailoverTest":{
    "Hypervisor":{
      "DefaultNetworkIdentifier":"String content"
    }
  }
}

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

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

{
  "DefaultDatastoreClusterIdentifier":"String content",
  "DefaultDatastoreIdentifier":"String content",
  "DefaultFolderIdentifier":"String content",
  "DefaultHostClusterIdentifier":"String content",
  "DefaultHostIdentifier":"String content",
  "ResourcePoolIdentifier":"String content"
}

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

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

{
  
  "PostRecovery":{
    "Command":"String content",
    "Parameters":"String content",
    "TimeoutInSeconds":2147483647
  },
  "PreRecovery":{
    "Command":"String content",
    "Parameters":"String content",
    "TimeoutInSeconds":2147483647
  }
}

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

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

[{
  "BootGroupIdentifier":"String content",
  "Journal":{

    "DatastoreIdentifier":"String content",
    "Limitation":{
      "HardLimitInMB":4294967295,
      "HardLimitInPercent":4294967295,
      "WarningThresholdInMB":4294967295,
      "WarningThresholdInPercent":4294967295
    }
  },

  "Nics":[{
    "Failover":{
      "Hypervisor":{
        "DnsSuffix":"String content",
        "IpConfig":{
          "Gateway":"String content",
          "IsDhcp":true,
          "PrimaryDns":"String content",
          "SecondaryDns":"String content",
          "StaticIp":"String content",
          "SubnetMask":"String content"
        },
        "NetworkIdentifier":"String content",
        "ShouldReplaceMacAddress":true
      }
    },
    "FailoverTest":{
      "Hypervisor":{
        "DnsSuffix":"String content",
        "IpConfig":{
          "Gateway":"String content",
          "IsDhcp":true,
          "PrimaryDns":"String content",
          "SecondaryDns":"String content",
          "StaticIp":"String content",
          "SubnetMask":"String content"
        },
        "NetworkIdentifier":"String content",
        "ShouldReplaceMacAddress":true
      }
    },
    "NicIdentifier":"String content"
  }],

  "Recovery":{
    "DatastoreClusterIdentifier":"String content",
    "DatastoreIdentifier":"String content",
    "FolderIdentifier":"String content",
    "HostClusterIdentifier":"String content",
    "HostIdentifier":"String content",
    "ResourcePoolIdentifier":"String content"
  },

  "VmIdentifier":"String content",
    "Volumes":[{
      "Datastore": {
        "DatastoreClusterIdentifier": "String content",
        "DatastoreIdentifier": "String content",
        "IsThin": Boolean
      },
      "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}/nics/{nicIdentifier}.

{
  "Failover":{
    "Hypervisor":{
      "DnsSuffix":"String content",
      "IpConfig":{
        "Gateway":"String content",
        "IsDhcp":true,
        "PrimaryDns":"String content",
        "SecondaryDns":"String content",
        "StaticIp":"String content",
        "SubnetMask":"String content"
      },
      "NetworkIdentifier":"String content",
      "ShouldReplaceMacAddress":true
    }
  },
  "FailoverTest":{
    "Hypervisor":{
      "DnsSuffix":"String content",
      "IpConfig":{
        "Gateway":"String content",
        "IsDhcp":true,
        "PrimaryDns":"String content",
        "SecondaryDns":"String content",
        "StaticIp":"String content",
        "SubnetMask":"String content"
      },
      "NetworkIdentifier":"String content",
      "ShouldReplaceMacAddress":true
    }
  },
  "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":[{
      "Datastore": {
        "DatastoreClusterIdentifier": "String content",
        "DatastoreIdentifier": "String content",
        "IsThin": Boolean
      },
      "IsSwap": Boolean,
      "Preseed": null,
      "RDM": null,
      "VCD": null,
      "VolumeIdentifier": "String content"
}

Request Values
Update a VPG settings object

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

Parameter Description
Basic Basic VPG settings.

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

RecoverySiteIdentifier

The identifier of the target 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.

ZorgIdentifier

The identifier of the ZORG, Zerto organization, defined in the Zerto Cloud Manager.
BootGroups Information about boot groups.

BootGroups

BootDelayInSeconds

Specifies the delay, in seconds, between starting up the virtual machines in this group and starting up the virtual machines in the next group.

BootGroupIdentifier

The identifier of a boot group.

Name

The name of a boot group.
Journal Information about the journal.

DatastoreIdentifier

The identifier of the storage used by the journal for the VM. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.

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.
Extended Journal Copy  
  Enabled

True: Extended Journal Copy is enabled.

False: If set to false, Extended Journal Copy will be deleted from VPG settings.

   RepositoryIdentifier

Repository identifier. Retrieved with:

https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/repositories

   RetentionRunTime Time to run all retention processes in UTC ISO 8601 format as hh:mm.
   RetentionSchedulePolicy Retention schedule policies - Daily, Weekly, Monthly and Yearly.
     Daily Retention processes will run daily.
        Enabled

True: Daily scheduling policy is enabled.

False: If set to false, daily scheduling policy will be deleted from Extended Journal Copy settings.

        RetentionDuration Retention duration settings.
             Count Define the number of days to keep the Daily Retentions. A rotation of the Retention process will be performed to enforce the predefined Retention. Possible values: 1 day through 7 days.
             DurationType The unit of time. Possible values: days, weeks, months, years.
     Weekly Retention processes will run weekly.
        Enabled

True: Weekly scheduling policy is enabled.

False: If set to false, Weekly scheduling policy will be deleted from Extended Journal Copy settings.

        DayofWeek Define the day of week to run the Retention process. Possible values: Sunday through Saturday.
        RetentionType

Retention type - Full or Incremental:

Full: All the data is copied to the Repository.

Incremental: Only the changes from the last Retention process are copied.

        RetentionDuration Retention duration settings.
             Count Define the number of weeks to keep the Weekly retentions. A rotation of the Retention process will be performed to enforce the predefined Retention. Possible values: 1 to 4 weeks.
             DurationType The unit of time. Possible values: days, weeks, months, years.
     Monthly Retention processes will run monthly.
         Enabled

True: Monthly scheduling policy is enabled.

False: If set to false, Monthly scheduling policy will be deleted from Extended Journal Copy settings.

         DayofWeek Define the day of week to run the Retention process. Possible values: Sunday through Saturday.
         WeekofMonth Run a Retention process on the first, second, third, fourth or last selected day of each month. For example, you can choose to run a Retention process on the last Sunday of each month.
         DayofMonth Run a Retention process on a specific date of the month up to the 28th and last. For example, you can choose to run a Retention process on the 12th of each month.
         RetentionType

Retention type - Full or Incremental:

Full: All the data is copied to the Repository.

Incremental: Only the changes from the last Retention process are copied.

         RetentionDuration Retention duration settings.
               Count Define the number of months to keep the Monthly retentions. A rotation of the Retention process will be performed to enforce the predefined Retention. Possible values: 1 to 12 months.
               DurationType The unit of time. Possible values: days, weeks, months, years.
    Yearly Retention processes will run yearly.
       Enabled

True: Yearly scheduling policy is enabled.

False: If set to false, Yearly scheduling policy will be deleted from Extended Journal Copy settings.

       DayofWeek Define the day of week to run the Retention process. Possible values: Sunday through Saturday.
       DayofYear Run a Retention process on the first or last selected day of the year. For example, you can choose to run a Retention process on the first Sunday of each year.
        MonthofYear Run a Retention process on a specific day and month of the year. For example, you can choose to run a Retention process every 12th of July. Possible values: January to December.
        DayofMonth Run a Retention process on a specific day and month of the year. For example, you can choose to run a Retention process every 12th of July. Possible values: 1 to 28.
        RetentionDuration Retention duration settings.
              Count Define the number of years to keep the Yearly retentions. A rotation of the Retention process will be performed to enforce the predefined Retention. Possible values: 1 to 7 years..
              DurationType The unit of time. Possible values: days, weeks, months, years.
  Retry Retry interval.
     Enabled Specifies whether retry is enabled.
     Number Number of retry attempts.
     IntevalInMinutes Interval in minutes between retries.
  Indexing VM indexing.
      Vms Array of indexed VM identifiers.
Networks Information about the networks that connect the protected and recovery sites.

Failover

Information about the networks used for failover.

Hypervisor

DefaultNetworkIdentifier

The network identifier of the network to use during a failover or move operation in which the recovered virtual machines will run.

FailoverTest

Information about the networks used for testing failover.

Hypervisor

DefaultNetworkIdentifier

The network identifier of the network to use when testing the failover of virtual machines in the recovery site.
Recovery  

DefaultDatastoreClusterIdentifier

The identifier of the default datastore cluster used in the recovery site.

Note: Only when the recovery site is a vSphere site.


DefaultDatastoreIdentifier

The identifier of the default storage where the metadata files for the virtual machines are stored, such as the vmx or vhdx files. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.

DefaultFolderIdentifier

The identifier of the default host cluster that handles the replicated data. The identifier comprises the server identifier and the folder moref, with the format, serverid.moref.

DefaultHostClusterIdentifier

The identifier of the default host that handles the replicated data. The identifier comprises the server identifier and the host cluster moref, with the format, serverid.moref.

DefaultHostIdentifier

The identifier of the resource pool for the recovered virtual machines. The identifier comprises the server identifier and the host moref, with the format, serverid.moref.

ResourcePoolIdentifier

The identifier of the storage cluster of the VRA virtual machine.



The identifier comprises the server identifier and the resource pool moref, with the format, serverid.moref.
Scripting Information about the scripts to run, either before or after recovery operation, or after an offsite backup is run.

PostRecovery

Information about scripts that are run after a recovery operation is performed.

Command

The full path of the script. The script must be located on the same machine as the Zerto Virtual Manager for the recovery site.

Parameters

Parameters to pass to the script.

TimeoutInSeconds

The time-out, in seconds, for the script to run.

PreRecovery

Information about scripts that are run before a recovery operation is performed.

Command

The full path of the script. The script must be located on the same machine as the Zerto Virtual Manager for the recovery site.

Parameters

Parameters to pass to the script.

TimeoutInSeconds

The time-out, in seconds, for the script to run.
Vms Information about the virtual machines in a VPG.

BootGroupIdentifier

The boot group identifier of a virtual machine.

Journal

Journal information of the virtual machine

DatastoreIdentifier

The identifier of the storage used by the journal for the virtual machine. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.

Limitation

Information about the journal limitations.

HardLimitInMB

The maximum journal size, in MBs, for this virtual machine. O means unlimited. Integer values.

HardLimitInPercent

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

WarningThresholdInMB

The journal size, in MBs, that generates a warning. O means unlimited. Integer values.

WarningThresholdInPercent

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

Nics

Information about NICs used by the virtual machine in the VPG.

Failover

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

Hypervisor

DnsSuffix

The DNS name excluding the host.

IpConfig

Information about the IP configuration of the recovery site used for failovers.

Gateway

The mask for the network.

IsDhcp

True: DHCP will be used for the virtual machine on the recovery site.
False: A static IP address will be used for the virtual machine on the recovery site.

PrimaryDns

The IP address of the primary DNS server that handles Internet protocol mapping.

SecondaryDns

The IP address of the alternate, secondary, DNS server that handles Internet protocol mapping.

StaticIp

The IP of the restored virtual machine.

SubnetMask

The subnet mask for the network.

NetworkIdentifier

The network identifier of the network used for failover or move by this virtual machine.

ShouldReplaceMacAddress

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.

FailoverTest

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

Hypervisor

DnsSuffix

The DNS name excluding the host.

IpConfig

Information about the IP configuration of the recovery site used for testing failovers.

Gateway

The mask for the network.

IsDhcp

True: DHCP will be used for the virtual machine on the recovery site.
False: A static IP address will be used for the virtual machine on the recovery site.

PrimaryDns

The IP address of the primary DNS server that handles Internet protocol mapping.

SecondaryDns

The IP address of the alternate, secondary, DNS server that handles Internet protocol mapping.

StaticIp

The IP of the restored virtual machine.

SubnetMask

The subnet mask for the network.

NetworkIdentifier

The network identifier of the network used for testing failover by this virtual machine.

ShouldReplaceMacAddress

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.

NicIdentifier

The identifier of the NIC for which settings are returned.

Recovery

Information about the recovery site.

DatastoreClusterIdentifier

The identifier of the datastore cluster used in the recovery site for the VM.

Note: Only when the recovery site is a vSphere site.


DatastoreIdentifier

The identifier of the storage used by the journal for the virtual machine. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.

FolderIdentifier

The identifier of the folder used for recovery by the virtual machine. The identifier comprises the server identifier and the folder moref, with the format, serverid.moref.

HostClusterIdentifier

The identifier of the host cluster that handles the replicated data. The identifier comprises the server identifier and the host cluster moref, with the format, serverid.moref.

HostIdentifier

The identifier of the host that handles the replicated data. The identifier comprises the server identifier and the host moref, with the format, serverid.moref.

ResourcePoolIdentifier

The identifier of the resource pool for the recovered virtual machines. The identifier comprises the server identifier and the resource pool moref, with the format, serverid.moref.

VmIdentifier

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

Volumes

Information about the volumes used by the virtual machine.

Datastore

Information about the datastore used by the virtual machine.

DatastoreClusterIdentifier

The identifier of the datastore cluster used in the recovery site for the volume.

Note: Only when the recovery site is a vSphere site.


DatastoreIdentifier

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

IsThin

True: The recovery volumes are thin-provisioned.
False: The recovery volumes are not thin-provisioned.

IsSwap

True: The recovery disk is marked as a temp data disk.
False: The recovery disk is not marked as a temp data disk.

Preseed

Information about the disk used for preseeding.

RDM

Information about the RDM.

vCD

 

VolumeIdentifier

The identifier of the volume.
Update the basic settings in a VPG settings object

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

Parameter Description
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 source site where the VPG virtual machines will be protected. This is the site where the API runs.
RecoverySiteIdentifier The identifier of the target 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.
ZorgIdentifier The identifier of the ZORG, Zerto organization, defined in the Zerto Cloud Manager.
Update the bootgroup settings in a VPG settings object

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

Parameter Description
BootGroups

BootDelayInSeconds

Specifies the delay, in seconds, between starting up the virtual machines in this group and starting up the virtual machines in the next group.

BootGroupIdentifier

The identifier of a boot group.

Name

The name of a boot group.
Update the journal settings in a VPG settings object

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

Parameter Description
DatastoreIdentifier The identifier of the storage used by the journal for the VM.. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.
Limitation Information about the journal limitations.

HardLimitInMB

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

HardLimitInPercent

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

WarningThresholdInMB

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

WarningThresholdInPercent

The percentage of the virtual machine volume size that generates a warning. O means unlimited. Integer values.
Update the Long Term Retenion settings in a VPG settings object

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

Parameter Description
  Enabled

True: Extended Journal Copy is enabled.

False: If set to false, Extended Journal Copy will be deleted from VPG settings.

   RepositoryIdentifier

Repository identifier. Retrieved with:

https://zvm_ip:port/v1/virtualizationsites/{siteIdentifier}/repositories

   RetentionRunTime Time to run all retention processes in UTC ISO 8601 format as hh:mm.
   RetentionSchedulePolicy Retention schedule policies - Daily, Weekly, Monthly and Yearly.
     Daily Retention processes will run daily.
        Enabled

True: Daily scheduling policy is enabled.

False: If set to false, daily scheduling policy will be deleted from Extended Journal Copy settings.

        RetentionDuration Retention duration settings.
             Count Define the number of days to keep the Daily Retentions. A rotation of the Retention process will be performed to enforce the predefined Retention. Possible values: 1 day through 7 days.
             DurationType The unit of time. Possible values: days, weeks, months, years.
     Weekly Retention processes will run weekly.
        Enabled

True: Weekly scheduling policy is enabled.

False: If set to false, Weekly scheduling policy will be deleted from Extended Journal Copy settings.

        DayofWeek Define the day of week to run the Retention process. Possible values: Sunday through Saturday.
        RetentionType

Retention type - Full or Incremental:

Full: All the data is copied to the Repository.

Incremental: Only the changes from the last Retention process are copied.

        RetentionDuration Retention duration settings.
             Count Define the number of weeks to keep the Weekly retentions. A rotation of the Retention process will be performed to enforce the predefined Retention. Possible values: 1 to 4 weeks.
             DurationType The unit of time. Possible values: days, weeks, months, years.
     Monthly Retention processes will run monthly.
         Enabled

True: Monthly scheduling policy is enabled.

False: If set to false, Monthly scheduling policy will be deleted from Extended Journal Copy settings.

         DayofWeek Define the day of week to run the Retention process. Possible values: Sunday through Saturday.
         WeekofMonth Run a Retention process on the first, second, third, fourth or last selected day of each month. For example, you can choose to run a Retention process on the last Sunday of each month.
         DayofMonth Run a Retention process on a specific date of the month up to the 28th and last. For example, you can choose to run a Retention process on the 12th of each month.
         RetentionType

Retention type - Full or Incremental:

Full: All the data is copied to the Repository.

Incremental: Only the changes from the last Retention process are copied.

         RetentionDuration Retention duration settings.
               Count Define the number of months to keep the Monthly retentions. A rotation of the Retention process will be performed to enforce the predefined Retention. Possible values: 1 to 12 months.
               DurationType The unit of time. Possible values: days, weeks, months, years.
    Yearly Retention processes will run yearly.
       Enabled

True: Yearly scheduling policy is enabled.

False: If set to false, Yearly scheduling policy will be deleted from Extended Journal Copy settings.

       DayofWeek Define the day of week to run the Retention process. Possible values: Sunday through Saturday.
       DayofYear Run a Retention process on the first or last selected day of the year. For example, you can choose to run a Retention process on the first Sunday of each year.
        MonthofYear Run a Retention process on a specific day and month of the year. For example, you can choose to run a Retention process every 12th of July. Possible values: January to December.
        DayofMonth Run a Retention process on a specific day and month of the year. For example, you can choose to run a Retention process every 12th of July. Possible values: 1 to 28.
        RetentionDuration Retention duration settings.
              Count Define the number of years to keep the Yearly retentions. A rotation of the Retention process will be performed to enforce the predefined Retention. Possible values: 1 to 7 years..
              DurationType The unit of time. Possible values: days, weeks, months, years.
  Retry Retry interval.
     Enabled Specifies whether retry is enabled.
     Number Number of retry attempts.
     IntevalInMinutes Interval in minutes between retries.
  Indexing VM indexing.
      Vms Array of indexed VM identifiers.
Update the network settings in a VPG settings object

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

Parameter Description
Failover Information about the networks used for failover.

Hypervisor

DefaultNetworkIdentifier

The network identifier of the network to use during a failover or move operation in which the recovered virtual machines will run.
FailoverTest Information about the networks used for testing failover.

Hypervisor

DefaultNetworkIdentifier

The network identifier of the network to use when testing the failover of virtual machines in the recovery site.
Update the recovery settings in a VPG settings object

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

Parameter Description
DefaultDatastoreClusterIdentifier The identifier of the default datastore cluster used in the recovery site.

Note: Only when the recovery site is a vSphere site.


DefaultDatastoreIdentifier The identifier of the default storage where the metadata files for the virtual machines are stored, such as the vmx or vhdx files. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.
DefaultFolderIdentifier The identifier of the default host cluster that handles the replicated data. The identifier comprises the server identifier and the folder moref, with the format, serverid.moref.
DefaultHostClusterIdentifier The identifier of the default host that handles the replicated data. The identifier comprises the server identifier and the host cluster moref, with the format, serverid.moref.
DefaultHostIdentifier The identifier of the resource pool for the recovered virtual machines. The identifier comprises the server identifier and the host moref, with the format, serverid.moref.
ResourcePoolIdentifier The identifier of the storage cluster of the VRA virtual machine.

The identifier comprises the server identifier and the resource pool moref, with the format, serverid.moref.

Update the scripting settings in a VPG settings object

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

Parameter Description
PostRecovery Information about scripts that are run after a recovery operation is performed.

Command

The full path of the script. The script must be located on the same machine as the Zerto Virtual Manager for the recovery site.

Parameters

Parameters to pass to the script.

TimeoutInSeconds

The time-out, in seconds, for the script to run.
PreRecovery Information about scripts that are run before a recovery operation is performed.

Command

The full path of the script. The script must be located on the same machine as the Zerto Virtual Manager for the recovery site.

Parameters

Parameters to pass to the script.

TimeoutInSeconds

The time-out, in seconds, for the script to run.
Update the virtual machine settings in a VPG settings object

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

Parameter Description
BootGroupIdentifier The boot group identifier of a virtual machine.
Journal Journal information of the virtual machine

DatastoreIdentifier

The identifier of the storage used by the journal for the virtual machine. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.

Limitation

Information about the journal limitations.

HardLimitInMB

The maximum journal size, in MBs, for this virtual machine. O means unlimited. Integer values.

HardLimitInPercent

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

WarningThresholdInMB

The journal size, in MBs, that generates a warning. O means unlimited. Integer values.

WarningThresholdInPercent

The percentage of the virtual machine volume size that generates a warning. O means unlimited. Integer values.
Nics Information about NICs used by the virtual machine in the VPG.

Failover

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

Hypervisor

DnsSuffix

The DNS name excluding the host.

IpConfig

Information about the IP configuration of the recovery site used for failovers.

Gateway

The mask for the network.

IsDhcp

True: DHCP will be used for the virtual machine on the recovery site.
False: A static IP address will be used for the virtual machine on the recovery site.

PrimaryDns

The IP address of the primary DNS server that handles Internet protocol mapping.

SecondaryDns

The IP address of the alternate, secondary, DNS server that handles Internet protocol mapping.

StaticIp

The IP of the restored virtual machine.

SubnetMask

The subnet mask for the network.

NetworkIdentifier

The network identifier of the network used for failover or move by this virtual machine.

ShouldReplaceMacAddress

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.

FailoverTest

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

Hypervisor

DnsSuffix

The DNS name excluding the host.

IpConfig

Information about the IP configuration of the recovery site used for testing failovers.

Gateway

The mask for the network.

IsDhcp

True: DHCP will be used for the virtual machine on the recovery site.
False: A static IP address will be used for the virtual machine on the recovery site.

PrimaryDns

The IP address of the primary DNS server that handles Internet protocol mapping.

SecondaryDns

The IP address of the alternate, secondary, DNS server that handles Internet protocol mapping.

StaticIp

The IP of the restored virtual machine.

SubnetMask

The subnet mask for the network.

NetworkIdentifier

The network identifier of the network used for testing failover by this virtual machine.

ShouldReplaceMacAddress

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.

NicIdentifier

The identifier of the NIC for which settings are returned.
Recovery Information about the recovery site.

DatastoreClusterIdentifier

The identifier of the datastore cluster used in the recovery site for the VM.

Note: Only when the recovery site is a vSphere site.


DatastoreIdentifier

The identifier of the storage for the VM. The identifier comprises the server identifier and the storage moref, with the format, serverid.moref.

FolderIdentifier

The identifier of the folder used for recovery by the virtual machine. The identifier comprises the server identifier and the folder moref, with the format, serverid.moref.

HostClusterIdentifier

The identifier of the host cluster that handles the replicated data. The identifier comprises the server identifier and the host cluster moref, with the format, serverid.moref.

HostIdentifier

The identifier of the host that handles the replicated data. The identifier comprises the server identifier and the host moref, with the format, serverid.moref.

ResourcePoolIdentifier

The identifier of the resource pool for the recovered virtual machines. The identifier comprises the server identifier and the resource pool moref, with the format, serverid.moref.
VmIdentifier The identifier of the virtual machine. The identifier comprises the server identifier and the virtual machine moref, with the format, serverid.moref.

Volumes

Information about the volumes used by the virtual machine.

Datastore

Information about the datastore used by the virtual machine.

DatastoreClusterIdentifier

The identifier of the datastore cluster used in the recovery site for the volume.

Note: Only when the recovery site is a vSphere site.


DatastoreIdentifier

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

IsThin

True: The recovery volumes are thin-provisioned.
False: The recovery volumes are not thin-provisioned.

IsSwap

True: The recovery disk is marked as a temp data disk.
False: The recovery disk is not marked as a temp data disk.

Preseed

Information about the disk used for preseeding.

RDM

Information about the RDM.
vCD  
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
Failover Information about the networks used for failover by this virtual machine.

Hypervisor

DnsSuffix

The DNS name excluding the host.

IpConfig

Information about the IP configuration of the recovery site used for failovers.

Gateway

The mask for the network.

IsDhcp

True: DHCP will be used for the virtual machine on the recovery site.
False: A static IP address will be used for the virtual machine on the recovery site.

PrimaryDns

The IP address of the primary DNS server that handles Internet protocol mapping.

SecondaryDns

The IP address of the alternate, secondary, DNS server that handles Internet protocol mapping.

StaticIp

The IP of the restored virtual machine.

SubnetMask

The subnet mask for the network.

NetworkIdentifier

The network identifier of the network used for failover or move by this virtual machine.

ShouldReplaceMacAddress

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.

FailoverTest

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

Hypervisor

DnsSuffix

The DNS name excluding the host.

IpConfig

Information about the IP configuration of the recovery site used for testing failovers.

Gateway

The mask for the network.

IsDhcp

True: DHCP will be used for the virtual machine on the recovery site.
False: A static IP address will be used for the virtual machine on the recovery site.

PrimaryDns

The IP address of the primary DNS server that handles Internet protocol mapping.

SecondaryDns

The IP address of the alternate, secondary, DNS server that handles Internet protocol mapping.

StaticIp

The IP of the restored virtual machine.

SubnetMask

The subnet mask for the network.

NetworkIdentifier

The network identifier of the network used for testing failover by this virtual machine.

ShouldReplaceMacAddress

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.
NicIdentifier The identifier of the NIC for which settings are returned.
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
Volumes Information about the volumes used by the virtual machine.

Datastore

Information about the datastore used by the virtual machine.

DatastoreClusterIdentifier

The identifier of the datastore cluster used in the recovery site for the volume.

Note: Only when the recovery site is a vSphere site.


DatastoreIdentifier

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

IsThin

True: The recovery volumes are thin-provisioned.
False: The recovery volumes are not thin-provisioned.

IsSwap

True: The recovery disk is marked as a temp data disk.
False: The recovery disk is not marked as a temp data disk.

Preseed

Information about the disk used for preseeding.

RDM

Information about the RDM.

vCD

 

VolumeIdentifier

The identifier of the volume.
Response Format

The response bodies are empty.

VPG Settings: DELETE

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.

See also:

VPG Settings: GET
VPG Settings: POST
VPG Settings: PUT
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 boot settings from a VPG https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/bootgroup
Delete journal settings from a VPG https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/journal
Delete Extended Journal Copy 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 scripts from a VPG https://zvm_ip:port/v1/vpgSettings/{vpgSettingsIdentifier}/scripting
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.

PowerShell Scripts

For complete PowerShell Scripts, see Examples.

vSphere and Hyper-V - Copy VPG Settings

Using the copyVPGSettings API, you can copy an existing VPG settings object to create a new VPG with the same settings. New VMs must be added to the copied VPG. If needed, you can additonally edit all VPG settings.

To copy VPG Settings:

1. Get a VPG Settings Identifier
2. Add Virtual Machines to the Copied VPG
3. Edit Additional Settings

See also:

VPG Settings: GET
VPG Settings: POST
VPG Settings: PUT
VPG Settings: DELETE
Get a VPG Settings Identifier

Run this API to copy a VPG and obtain a new VPG settings identifier.

Method

URL

POST

https://zvm_ip:port/v1/vpgSettings/copyVpgSettings

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

The following is an example request.

{
  "VpgIdentifier": "String content"
}

VpgIdentifier

The identifier of the existing VPG with the settings to copy.

Response In Json Format

The following is an example response.

{
  "VpgIdentifier": "String content"
}

VpgIdentifier

The identifier of the copied VPG.

To view the settings of the copied VPG, run the following API:

Method

URL

GET

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

Add Virtual Machines to the Copied VPG

Method

URL

PUT

https://zvm_ip:port/v1/vpgSettings/{VpgSettingsIdentifier}/vms

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

The following is an example request.

{
  "VmIdentifier": "String content"
}

Vmdentifier

The identifier of the virtual machine to add to the new VPG Settings object.

Once all paramters are set, commit the changes using POST commit request:

https://zvm_ip:port/v1/vpgSettings/{VpgSettingsIdentifier}/commit

Response In Json Format

The following is an example response.

{
  "TaskIdentifier": "String content"
}

TaskIdentifier

The identifier of the task.

Edit Additional Settings

To edit additional settings as required, see VPG Settings: PUT.