Changelog

This section describes changes introduced in Veeam Backup & Replication REST API 1.1-rev1.

To use the latest revision of the REST API, specify the 1.3-rev0 value in the x-api-version header of each request. For details on REST API versions, see Versioning.

Global Changes

The following changes affect most of the REST API functionality:

  • The 1.1-rev1 value is added for the x-api-version header. The header must be specified in each request. For details on REST API versions, see Versioning.

  • The lifetime of access tokens is increased to 60 minutes. To learn more about the authorization process, see Authorization and Security.

New Features

The following new features are introduced in REST API 1.1-rev1.

Jobs

In this version, the REST API supports two new types of jobs:

  • vSphereReplica — VMware vSphere replication jobs
  • CloudDirectorBackup — VMware Cloud Director backup jobs

For these new jobs, all existing operations are supported.

Operations

Managed Servers

Now you can manage VMware Cloud Director servers. The ManagedServerModel object now includes the CloudDirectorHostModel object, and the EManagedServerType enum type now have the CloudDirectorHost value.

For Cloud Director servers, all existing operations are supported. To get an array of vCenter Servers attached to a specific Cloud Director server, use the new Get vCenter Servers Attached to Cloud Director Server request.

Operations

WAN Accelerators

The REST API allows you to get WAN accelerators that you can use when configuring replication jobs.

Operations

Replica Restore Points

New endpoints for managing restore points of snapshot replicas allow you get restore points for further failover to VM replicas.

Operations

Failover and Failback

Now you can use the REST API to fail over to VM replicas and fail back from VM replicas to production VMs.

Operations

File Restore

REST API 1.1-rev1 supports all file restore operations both for Microsoft Windows and Linux machines. You can restore files and folders to the original location or another machine including Linux physical machines with Veeam Agent installed.

Operations

Agents

To get a Veeam Agent machine use the following requests.

Operations

New Inventory Browser

For REST API 1.1-rev1, a new inventory browser is implemented, which supports not only browsing VMware vSphere infrastructure but also VMware Cloud Director.

Operations

Malware Detection

Now you can manage malware events. Use a third-party antivirus software and integrate it with the REST API to create a malware event that will trigger quick backup. For details on enabling Incident API, see the Incident API section of the Veeam Backup & Replication User Guide.

Operations

SIEM Integration

Using REST API 1.1-rev1, you can configure receiving SNMP traps containing job results and set up an external syslog server that processes the events written by Veeam Backup & Replication.

Operations

KMS Servers

REST API 1.1-rev1 also supports managing KMS servers for data encryption.

Operations

Google Cloud Service Accounts

REST API 1.1-rev1 includes new operations for Google service accounts.

Operations

Deprecated Requests

The following requests are deprecated in REST API 1.1-rev1:

Use the new inventory browser to browse inventory objects. It supports browsing not only VMware vSphere infrastructure but also VMware Cloud Director.

Minor Non-Breaking Changes

The following minor non-breaking changes are introduced in REST API 1.1-rev1.

Inventory Browser

The EVmwareInventoryType enum type now includes the DVSNetwork value.

Cloud Browser

The Get Cloud Hierarchy request now has the resetCache parameter that allows you to reset the cache for this request.

Jobs

  • Now the isHighPriority, storage, guestProcessing and schedule properties of the BackupJobSpec object are not required in the request body when you create a job. If you do not specify a property, it is filled in with a default value.

  • Now the localTime property of job schedule is set to the hh:mm time format.

  • Now the BackupStorageSettingsEncryptionModel object contains the kmsServerId and encryptionType property that defines the encryption method: ByUserPassword or ByKms.

Restore Points and Replica Restore Points

Added the malwareStatus property that indicates a malware status of restore points: Clean, Suspicious or Infected. The property is optional.

Entire VM Restore

Now you can granularly specify datastores for VM disks and VM configuration files.

Sessions

The ESessionType enum type now includes the following new session types:

  • FileLevelRestore
  • LinuxFileLevelRestore
  • ReplicaJob
  • ConfigurationResynchronize
  • Failover
  • PlannedFailover
  • PermanentFailover
  • UndoFailover
  • Failback
  • CommitFailback
  • UndoFailback
  • SwitchReplicaToProduction
  • CloudDirectorVmRestore
  • CloudDirectorVAppRestore
  • MalwareDetection
  • Automation

Now the ManageServerImportSpecCollection object includes the cloudDirectorHosts property.

Breaking Changes

Breaking changes cause REST API to function differently and can affect the client code.

New Required Properties

The ManagedServerModel object now has the status property, which shows an availability status of the server.

Paths Renaming

In REST API 1.1-rev1, the following paths are renamed.

Section Old Path New Path
Backups /api/v1/objectRestorePoints /api/v1/restorePoints
/api/v1/objectRestorePoints/{id} /api/v1/restorePoints/{id}
/api/v1/objectRestorePoints/{id}/disks /api/v1/restorePoints/{id}/disks
Restore /api/v1/restore/vmRestore/vmware /api/v1/restore/vmRestore/vSphere
/api/v1/restore/instantRecovery/vmware /api/v1/restore/vmRestore/vSphere
/api/v1/restore/instantRecovery/vmware /api/v1/restore/instantRecovery/vSphere/vm
/api/v1/restore/instantRecovery/vmware/vm/{mountId} /api/v1/restore/instantRecovery/vSphere/vm/{mountId}
/api/v1/restore/instantRecovery/vmware/vm/{mountId}/unmount /api/v1/restore/instantRecovery/vSphere/vm/{mountId}/unmount
/api/v1/restore/instantRecovery/vmware/vm/{mountId}/migrate /api/v1/restore/instantRecovery/vSpheres/vm/{mountId}/migrate
/api/v1/restore/instantRecovery/vmware/fcd /api/v1/restore/instantRecovery/vSphere/fcd
/api/v1/restore/instantRecovery/vmware/fcd/{mountId} /api/v1/restore/instantRecovery/vSphere/fcd/{mountId}
/api/v1/restore/instantRecovery/vmware/fcd/{mountId}/dismount /api/v1/restore/instantRecovery/vSphere/fcd/{mountId}/unmount
/api/v1/restore/instantRecovery/vmware/fcd/{mountId}/migrate /api/v1/restore/instantRecovery/vSphere/fcd/{mountId}/migrate

Properties Renaming

In REST API 1.1-rev1, the following properties are renamed:

Section Old Name New Name
Credentials StandardCredentialsModel.tag StandardCredentialsModel.uniqueId
LinuxCredentialsModel.tag LinuxCredentialsModel.uniqueId
LinuxCredentialsModel.autoElevated LinuxCredentialsModel.elevateToRoot
StandardCredentialsSpec.tag StandardCredentialsSpec.uniqueId
LinuxCredentialsSpec.tag LinuxCredentialsSpec.uniqueId
LinuxCredentialsSpec.autoElevated LinuxCredentialsSpec.elevateToRoot
Cloud Credentials AmazonCloudCredentialsModel.tag AmazonCloudCredentialsModel.uniqueId
AzureStorageCloudCredentialsModel.tag AzureStorageCloudCredentialsModel.uniqueId
AzureComputeCloudCredentialsModel.tag AzureComputeCloudCredentialsModel.uniqueId
GoogleCloudCredentialsModel.tag GoogleCloudCredentialsModel.uniqueId
GoogleCloudServiceCredentialsModel.tag GoogleCloudServiceCredentialsModel.uniqueId
AmazonCloudCredentialsSpec.tag AmazonCloudCredentialsSpec.uniqueId
AzureStorageCloudCredentialsSpec.tag AzureStorageCloudCredentialsSpec.uniqueId
AzureComputeCloudCredentialsSpec.tag AzureComputeCloudCredentialsSpec.uniqueId
GoogleCloudCredentialsSpec.tag GoogleCloudCredentialsSpec.uniqueId
Encrypted Passwords EncryptionPasswordSpec.tag EncryptionPasswordSpec.uniqueId
EncryptionPasswordModel.tag EncryptionPasswordModel.uniqueId
Managed Servers WindowsHostPortsModel.serverThisSide WindowsHostPortsModel.serverSide
LinuxHostSSHSettingsModel.sshTimeOutMs LinuxHostSSHSettingsModel.sshTimeOutMs
LinuxHostSSHSettingsModel.serverThisSide LinuxHostSSHSettingsModel.serverSide
Proxies ProxyDatastoreSettingsModel.autoSelect ProxyDatastoreSettingsModel.autoSelectEnabled
Repositories RepositorySpec.tag RepositorySpec.uniqueId
WindowsLocalRepositorySettingsModel.enableTaskLimit WindowsLocalRepositorySettingsModel.taskLimitEnabled
WindowsLocalRepositorySettingsModel.enableReadWriteLimit WindowsLocalRepositorySettingsModel.readWriteLimitEnabled
LinuxLocalRepositorySettingsModel.enableTaskLimit LinuxLocalRepositorySettingsModel.taskLimitEnabled
LinuxLocalRepositorySettingsModel.enableReadWriteLimit LinuxLocalRepositorySettingsModel.readWriteLimitEnabled
NetworkRepositorySettingsModel.enableTaskLimit NetworkRepositorySettingsModel.taskLimitEnabled
NetworkRepositorySettingsModel.enableReadWriteLimit NetworkRepositorySettingsModel.readWriteLimitEnabled
AzureBlobStorageSpec.enableTaskLimit AzureBlobStorageSpec.taskLimitEnabled
AzureDataBoxStorageSpec.enableTaskLimit AzureDataBoxStorageSpec.taskLimitEnabled
AmazonS3StorageSpec.enableTaskLimit AmazonS3StorageSpec.taskLimitEnabled
AmazonSnowballEdgeStorageSpec.enableTaskLimit AmazonSnowballEdgeStorageSpec.taskLimitEnabled
S3CompatibleStorageSpec.enableTaskLimit S3CompatibleStorageSpec.taskLimitEnabled
GoogleCloudStorageSpec.enableTaskLimit GoogleCloudStorageSpec.taskLimitEnabled
IBMCloudStorageSpec.enableTaskLimit IBMCloudStorageSpec.taskLimitEnabled
WasabiCloudStorageSpec.enableTaskLimit WasabiCloudStorageSpec.taskLimitEnabled
LinuxHardenedRepositorySettingsModel.enableTaskLimit LinuxHardenedRepositorySettingsModel.taskLimitEnabled
LinuxHardenedRepositorySettingsModel.enableReadWriteLimit LinuxHardenedRepositorySettingsModel.readWriteLimitEnabled
RepositoryShareGatewayModel.autoSelect RepositoryShareGatewayModel.autoSelectEnabled
RepositoryModel.tag RepositoryModel.uniqueId
AzureBlobStorageModel.enableTaskLimit AzureBlobStorageModel.taskLimitEnabled
AmazonDataBoxStorageModel.enableTaskLimit AmazonDataBoxStorageModel.taskLimitEnabled
AmazonS3StorageModel.enableTaskLimit AmazonS3StorageModel.taskLimitEnabled
AmazonSnowballEdgeStorageModel.enableTaskLimit AmazonSnowballEdgeStorageModel.taskLimitEnabled
S3CompatibleStorageModel.enableTaskLimit S3CompatibleStorageModel.taskLimitEnabled
GoogleCloudStorageModel.enableTaskLimit GoogleCloudStorageModel.taskLimitEnabled
IBMCloudStorageModel.enableTaskLimit IBMCloudStorageModel.taskLimitEnabled
WasabiCloudStorageModel.enableTaskLimit WasabiCloudStorageModel.taskLimitEnabled
ScaleOutRepositorySpec.tag ScaleOutRepositorySpec.uniqueId
CapacityTierModel.enabled CapacityTierModel.isEnabled
ScaleOutRepositoryModel.tag ScaleOutRepositoryModel.uniqueId
Jobs PrimaryStorageIntegrationSettingsModel.limitProcessedVm PrimaryStorageIntegrationSettingsModel.processedVmsLimitEnabled
PrimaryStorageIntegrationSettingsModel.limitProcessedVmCount PrimaryStorageIntegrationSettingsModel.processedVmsCount
NotificationVmAttributeSettingsModel.appendToExisitingValue NotificationVmAttributeSettingsModel.appendToExistingValue
BackupStorageSettingModel.enableInlineDataDedup BackupStorageSettingModel.inlineDataDedupEnabled
BackupStorageSettingsEncryptionModel.encryptionPasswordTag BackupStorageSettingsEncryptionModel.encryptionPasswordUniqueId
BackupProxiesSettingsModel.autoSelection BackupProxiesSettingsModel.autoSelectEnabled
BackupLogShipingServerModel.autoSelection BackupLogShipingServerModel.autoSelectEnabled
GuestInteractionProxiesSettingsModel.autoSelection GuestInteractionProxiesSettingsModel.autoSelectEnabled
GuestOsCredentialsModel.credsId GuestOsCredentialsModel.credentialsId
GuestOsCredentialsModel.credsType GuestOsCredentialsModel.credentialsType
Backups BackupModel.policyTag BackupModel.policyUniqueId
Restore InstantViVMCustomizedRecoveryDatastoreSpec.redirectIsEnabled InstantViVMCustomizedRecoveryDatastoreSpec.redirectEnabled
SecureRestoreSpec.enableAntivirusScan SecureRestoreSpec.antivirusScanEnabled
SecureRestoreSpec.enableEntireVolumeScan SecureRestoreSpec.entireVolumeScanEnabled
RestoreProxySpec.autoSelection RestoreProxySpec.autoSelectEnabled
VmwareFcdInstantRecoverySpec.objectRestorePointId VmwareFcdInstantRecoverySpec.restorePointId
EntireViVMRestoreSpec.objectRestorePointId EntireViVMRestoreSpec.restorePointId
InstantViVMRecoverySpec.objectRestorePointId InstantViVMRecoverySpec.restorePointId
Sessions SessionModel.activityId SessionModel.jobId
Automation BackupLogShippingServersImportModel.autoSelection BackupLogShippingServersImportModel.autoSelectEnabled
BackupRepositoryImportModel.tag BackupRepositoryImportModel.uniqueId
BackupProxyImportModel.tag BackupProxyImportModel.uniqueId
RepositoryShareGatewayImportSpec.autoSelect RepositoryShareGatewayImportSpec.autoSelectEnabled
CredentialsImportSpec.tag CredentialsImportSpec.uniqueId
CredentialsLinuxSettingsImportModel.autoElevated CredentialsLinuxSettingsImportModel.elevateToRoot
AzureStorageCloudCredentialsImportSpec.tag AzureStorageCloudCredentialsImportSpec.uniqueId
AzureComputeCloudCredentialsImportSpec.tag AzureComputeCloudCredentialsImportSpec.uniqueId
AmazonCloudCredentialsImportSpec.tag AmazonCloudCredentialsImportSpec.uniqueId
GoogleCloudCredentialsImportSpec.tag GoogleCloudCredentialsImportSpec.uniqueId
ProxyServerSettingsImportSpec.hostTag ProxyServerSettingsImportSpec.hostUniqueId
WindowsLocalStorageImportSpec.tag WindowsLocalStorageImportSpec.uniqueId
LinuxLocalStorageImportSpec.tag LinuxLocalStorageImportSpec.uniqueId
SmbStorageImportSpec.tag SmbStorageImportSpec.uniqueId
NfsStorageImportSpec.tag NfsStorageImportSpec.uniqueId
AzureBlobStorageImportSpec.tag AzureBlobStorageImportSpec.uniqueId
AzureDataBoxStorageImportSpec.tag AzureDataBoxStorageImportSpec.uniqueId
AmazonS3StorageImportSpec.tag AmazonS3StorageImportSpec.uniqueId
AmazonSnowballEdgeStorageImportSpec.tag AmazonSnowballEdgeStorageImportSpec.uniqueId
S3CompatibleStorageImportSpec.tag S3CompatibleStorageImportSpec.uniqueId
GoogleCloudStorageImportSpec.tag GoogleCloudStorageImportSpec.uniqueId
IBMCloudStorageImportSpec.tag IBMCloudStorageImportSpec.uniqueId
AmazonS3GlacierStorageImportSpec.tag AmazonS3GlacierStorageImportSpec.uniqueId
AzureArchiveStorageImportSpec.tag AzureArchiveStorageImportSpec.uniqueId
WasabiCloudStorageImportSpec.tag WasabiCloudStorageImportSpec.uniqueId
LinuxHardenedStorageImportSpec.tag LinuxHardenedStorageImportSpec.uniqueId
EncryptionPasswordImportSpec.tag EncryptionPasswordImportSpec.uniqueId

Property Values Renaming

The Backup value of the ESessionType enum is renamed to BackupJob.