Changelog

This section describes changes introduced in Veeam Backup & Replication REST API 1.3-rev0.

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

New Features

The following new features are introduced in Veeam Backup & Replication REST API 1.3-rev0.

Agent Management

Veeam Backup & Replication REST API 1.3-rev0 allows you to deploy and manage Veeam Agents on computers, clusters and in your infrastructure.

New Operations

Inventory Browser

Protection Groups

Agents

Active Directory Domains

Updated Schema

Note the following changes:

  • The AgentDiscovery, AgentPolicy and AgentBackup types have been added to the ESessionType enumeration type.
  • The Agent, AgentSqlLocalDB, AgentSharedMgmtObjects and AgentSqlSysClrTypes types have been added to the EHostComponentType enumeration type.
  • The AgentBackupObjectModel child object has been added to the BackupObjectModel object.
  • The AgentObjectModel child object has been added to the InventoryObjectModel object.
  • The required useAgentManagementCredentials property has been added to the GuestOsCredentialsModel object.
  • The WindowsAgentManagementBackupJobSpec and LinuxAgentManagementBackupJobSpec child objects have been added to the JobSpec object.
  • The WindowsAgentManagementBackupJobModel and LinuxAgentManagementBackupJobModel child objects have been added to the JobModel object.
  • The WindowsAgentBackup and LinuxAgentBackup types have been added to the EJobType enumeration type.

Microsoft Hyper-V

REST API 1.3-rev0 introduces new endpoints that allow you to protect your Microsoft Hyper-V data.

New Operations

Managed Servers

Restore

Updated Schema

  • You can use existing endpoints to add Hyper-V servers as managed servers in your backup infrastructure. Note the following changes:
    • The HvServerModel, HvHostClusterModel, SCVMMModel, SmbV3ClusterModel, SmbV3StandaloneHostModel child objects have been added to the ManagedServerModel.
    • The HvServerSpec, HvHostClusterSpec, SCVMMSpec, SmbV3ClusterSpec, SmbV3StandaloneHostSpec child objects have been added to the ManagedServerSpec object.
    • The HvServer, HvHostCluster, SCVMM, SmbV3Cluster, SmbV3StandaloneHost types have been added to the EManagedServerType enumeration type.
  • You can use existing endpoints to add Hyper-V off-site proxies. Note the following changes:
    • The HvProxyModel child object has been added to the ProxyModel object.
    • The HvProxySpec child object has been added to the ProxySpec object.
    • The HvProxy type has been added to the EProxyType enumeration type.
  • You can use existing endpoints to create Hyper-V backup jobs. Note the following changes:
    • The HyperVBackupJobSpec child object has been added to the JobSpec object.
    • The HyperVBackupJobModel child object has been added to the JobModel object.
    • The HyperVBackup type has been added to the EJobType enumeration type.
  • You can use existing endpoints to manage Hyper-V inventory. Note the following changes:
    • The HyperVObjectModel child object has been added to the InventoryObjectModel object.
    • The HyperV type has been added to the EInventoryPlatformType (previously EPlatformType) enumeration type.
  • You can use existing endpoints to manage Hyper-V restore points. Note the following changes:
    • The HyperVObjectRestorePointDiskModel child object has been added to the ObjectRestorePointDiskModel object.

Instant Recovery to Azure

REST API 1.3-rev0 introduces new endpoints that allow you to perform Instant Recovery of Windows and Linux machines to Azure.

New Operations

Updated Schema

  • The showAllInstanceSizes property has been added to the AzureComputeBrowserFilters object.
  • The instanceSizes property of the AzureStorageAccountBrowserModel object, now contains an array of AzureStorageAccountInstanceSizeModel objects, instead of an array of strings.
  • The networkSecurityGroups property has been added to the AzureResourceGroupBrowserModel object.
  • The virtualNetworkId property has been added to the AzureVirtualNetworkBrowserModel object. The subnets property of this object now contains an array of AzureSubnetBrowserModel objects, instead of an array of strings.

Veeam Data Cloud Vault

This version introduces new endpoints that allow you to perform Instant Recovery of Windows and Linux machines to Azure.

New Operations

Updated Schema

  • You can use existing endpoints in the Cloud Browser section to retrieve information Veeam Data Cloud Vault. Note the following changes:
    • The VeeamDataCloudVaultStorageBrowserSpec child schema has been added to the CloudBrowserSpec object.
    • The VeeamDataCloudVaultStorageBrowserModel child schema has been added to the CloudBrowserModel object.
    • The VeeamDataCloudVault type has been added to the ECloudServiceType enumeration type.
    • The VeeamDataCloudVaultBrowserDestinationSpec child schema has been added to the CloudBrowserNewFolderSpec object.
  • You can use existing endpoints in the Repositories section to add and managed Veeam Data Cloud Vault repository. Note the following changes:
    • The VeeamDataCloudVault has been added to the ERepositoryType object.
    • The VeeamDataCloudVaultStorageModel child object has been added to the RepositoryModel object.
    • The VeeamDataCloudVaultStorageSpec child object has been RepositorySpec object.

Global Exclusions

In this version, the REST API allows you exclude VMware vSphere, Microsoft Hyper-V and VMware Cloud Director VMs from processing.

New Operations

Jobs

In this version, the REST API allows you to retry jobs and clone existing jobs.

New Operations

Service

In REST API 1.3-rev0, the new Register Backup Server on My Account Portal request has been added, which allows you to register the backup server on the My Account portal.

Encryption

In this version, the new Verify Encryption Password request has been added, which allows you to verify an encryption password that has the specified id.

Licenses

In REST API 1.3-rev0 the new Remove Instance License request has been added, which allows you to remove the license for an instance workload by specifying the instance ID.

Backups

In this version, the REST API has the new Delete Backup Object request that allows you to remove backup objects from a backup.

Deployment

REST API 1.3-rev0 allows you to create and download a deployment kit, which allows you to add a Windows machine as a managed server.

New Operations

Updated Schema

  • You can use existing endpoints in the Tasks section to monitor deployment kit operations.
    • The ETaskType enumeration type now includes the DeploymentKit type.
    • The DeploymentKitTaskModel child schema has been added to the TaskModel object.

Proxies

New Operations

In addition to VMware vSphere proxies, you can now get, add, edit, remove, enable and disable Hyper-V and general-purpose proxies used with Veeam Agents.

Log Export

Deprecated and Removed Requests

Deprecated Requests

The following requests are deprecated in REST API 1.3-rev0:

Removed Requests

The Get Authorization Code request has been removed.

Minor Non-Breaking Changes

The following minor non-breaking changes are introduced in REST API 1.3-rev0.

Multiple Sections

  • The EPlatformType enumeration type now includes the following platform types:

    • MongoDb
    • AWSEC2
    • AzureCompute
    • GCE

    This change affects the platformNameFilter parameter in the Get All Backups, Get All Backup Objects, Get All Restore Points and Get All Replica Restore Points requests, as well as the following objects: SessionModel, InventoryObjectModel, BackupModel, BackupObjectModel, ObjectRestorePointModel, ReplicaPointModel, BackupObjectsFilters, ObjectRestorePointsFilters and ReplicaRestorePointsFilters.

  • The guestOsFamily and originalSizeproperties have been added to the ObjectRestorePointModel object. This change affects the response of the Get Restore Point, Get All Restore Points and Get Restore Points requests.

  • The StartHvVMInstantRecovery and StartEntireVmRestoreHyperV types have been added to the EObjectRestorePointOperation enumeration type.

Login

The vbr_token property of the TokenLoginSpec object has been deprecated. Do not specify this property in the Get Access Token request.

Service

  • It is no longer required to have a valid license to run the Get Backup Server Information.
  • The veeamRegistration and platform properties have been added to the ServerInfoModel object. The properties are required.

License

  • The request bodies for the Enable or Disable License Auto Update and Enable or Disable Instance Consumption for Unlicensed Agents requests are now required.
  • The proactiveSupportEnabled property has been added to the LicenseAutoUpdateSpec object.
  • The displayName property has been added to the InstanceLicenseWorkloadModel object.
  • The type property of the InstalledLicenseModel object is no longer required.
  • The Foundation, Advanced, Premium types have been added to the ELicensePackageType enumeration type.

Connection

The isTrusted property has been added to the CertificateModel object. The property is required.

Security

The stateFilter parameter of the Get All Authorization Events request now accepts arrays. You can also use the orderColumn parameter to sort authorization events by their description, the user that initiated the event and the user that processed the event.

Cloud Browser

The request bodies for the Get Cloud Hierarchy and Create New Cloud Storage Folder requests are now required.

Credentials

  • The includeDefaultApplianceCreds parameter has been added to the Get All Credentials request, to include or exclude the default appliance credentials in the response. You can also use the orderColumn parameter to sort credential records by their type and creation time.
  • The ManagedService type has been added to the ECredentialsType enumeration type.
  • The ManagedServiceCredentialsSpec child schema has been added to CredentialsSpec.
  • The authenticationType property has been added to the LinuxCredentialsSpec object.
  • The lastModified property has been added to the CloudCredentialsModel object.
  • The Type and LastModified types have been added to the ECloudCredentialsFiltersOrderColumn object.

Encryption

  • The hintFilter parameter has been added to the Get All Encryption Passwords, which allows you to filter responses by the encryption password hint.
  • The isImported property has been added to the EncryptionPasswordSpec object.
  • The pem type has been added to the ECertificateFileFormatType enumeration type.

Backup Browsers

  • The Download Files and Folders request no longer requires a request body.
  • The restorePermissions property has been added to the FileBackupFLRCopyToSpec object.
  • The Owner and Location types have been added to the EFlrBrowseOrderType enumeration type.
  • The owner property has been added to the FlrBrowserItemModel object.
  • The disableRecursiveSearch property has been added to the FlrStartSearchForSpec object.
  • The orderColumn property of the FlrSearchForResultOrderSpec object now accepts the EFlrBrowseOrderType object instead of the EFlrSearchForResultOrderType object.
  • The targetPath property has been added to the FlrRestoreSpec object.
  • The CloudDirectorFlrRestoreTargetHostModel child schema has been added to the FlrRestoreTargetHostModel object.
  • The vmObject property of the VmwareFlrRestoreTargetHostModel object now contains the VmwareObjectModel object instead of InventoryObjectModel.
  • The vmObject property of the HyperVFlrRestoreTargetHostModel object now contains the HyperVObjectModel object instead of a string with the object name.

Malware Detection

  • The typeFilter, stateFilter, sourceFilter, severityFilter parameters of the Get All Malware Events request now accept arrays. In addition, the machineNameFilter, createdAfterTimeUtcFilter and createdBeforeTimeUtcFilter parameters have been added, which allow you to filter the responses by the machine name and creation time.
  • The required creationTimeUtc property has been added to the SuspiciousActivityEventModel object.
  • The severity property has been added to the SuspiciousActivityEventSpec object.
  • The backupObjectId and restorePointId properties have been added to the SuspiciousActivityMachineSpec object.
  • The restorePointId property has been added to the SuspiciousActivityMachineModel object.
  • The CreationTimeUtc, Details, MachineName types have been added tot he ESuspiciousActivityEventsFiltersOrderColumn enumeration type.

Inventory Browser

  • The resetCache parameter of the Get Inventory Objects request has been deprecated.
  • The Disk and SharedDisk types have been added to the EVmwareInventoryType object.
  • The cacheRepositoryId property of the EntraIDTenantModel object is now required.
  • The VmwareDatastores and HostsAndDisks types have been added to the EHierarchyType enumeration type.

Repositories

  • The Get All Repository States request now has the isOutOfDateFilter parameter that allows you to filter repositories by whether or not they have out of date components. Also the sobrIdFilter, sobrExtentTypeFilter, sobrMembershipFilter, excludeExtents parameters have been added to the request to filter repositories by properties related to scale-out repositories.
  • The Get All Repositories request now has the excludeExtents parameter, related to scale-out repositories. Moreover, the typeFilter parameter of the same request now accepts arrays.
  • The optional importBackup and importIndex properties have been added to the RepositorySpec object.
  • The status property of the PerformanceExtentModel object now accepts arrays.
  • The name property has been added to the BackupPlacementSettingsModel object.
  • The backupHealth property has been added to the CapacityTierModel object.
  • The EncryptionState type has been added to the EScaleOutRepositoryFiltersOrderColumn object.
  • The immutability property has been added to the AzureBlobStorageContainerModel, GoogleCloudStorageBucketModel object.
  • The immutabilityMode property has been added to the ObjectStorageImmutabilityModel object.
  • The immutabilityEnabled property has been added to the AzureArchiveStorageContainerModel object.
  • The scaleOutRepositoryDetails property has been added to the RepositoryStateModel object.
  • The Membership type has been added to the ERepositoryStatesFiltersOrderColumn enumeration type.

Backups

  • The jobTypeFilter parameter has been added to the Get All Backups request to filter backups by their job type.
  • The repositoryName property has been added to the BackupModel object.

Backup Objects

  • The lastRunFailed property has been added to the BackupObjectModel object.
  • The BackupObjectModel has been updated with the AgentBackupObjectModel child schema.

Proxies

The typeFilter parameter of the Get All Proxies request now accepts arrays. The hostName property has been added to the ProxyServerSettingsModel object. You can use the orderColumn parameter to sort managed servers by their host name.

Jobs

  • The EJobType enumeration type now includes the Unknown, VSphereBackup, HyperVBackup, LegacyBackupCopy, BackupCopy, WindowsAgentBackup and LinuxAgentBackup job types.

  • The JobSpec object has been updated with the following child schemas:

    • BackupJobSpec
    • HyperVBackupJobSpec
    • WindowsAgentManagementBackupJobSpec
    • LinuxAgentManagementBackupJobSpec
  • The JobModel object has been updated with the following child schemas:

    • BackupCopyJobModel
    • HyperVBackupJobModel
    • WindowsAgentManagementBackupJobModel
    • LinuxAgentManagementBackupJobModel
  • The Get All Job States request now has the afterJobIdFilter and afterJobNameFilter parameters, which allows you to filter job states by the ID and name of the job after which the current job will run.

  • The progressPercent has been added to the SessionProgress object. The property is required.

  • The enabled, stopping and stopped types have been added to the EJobStatus enumeration type.

  • The nextRunPolicy, highPriority, progressPercent, sessionProgress, runAfterJob, backupCopyMode and isStorageSnapshot properties have been added to the JobStateModel object.

  • The syncRestorePoints property has been added to the JobStartSpec object.

  • The cancelChainedJobs property has been added to the JobStopSpec object.

  • The localTime property has been added to the AdvancedStorageScheduleWeeklyModel object.

  • The localTime and isLastDayOfMonth properties have been added to the AdvancedStorageScheduleMonthlyModel object. Moreover, the dayOfMonths property has been renamed to dayOfMonth.

  • The EStorageOptimization enumeration type has completely new values: 256KB, 512KB, 1MB, 4MB.

  • The Auto type has been added to the ECompressionLevel enumeration type.

  • The postgreSQL property has been added to the BackupApplicationSettingsModel, BackupApplicationSettingsImportModel objects.

  • The isLastDayOfMonth property has been added to the ScheduleMonthlyModel object.

  • The sourceBackupId property has been added to the EntraIDTenantBackupJobStorageModel object.

  • The isEnabled and metadata properties were added to the VmwareObjectModel object.

  • The resourcePool, folder, datastore properties of the VSphereReplicaJobDestinationModel object are no longer required.

Restore Points

Restore

Points

  • The type containing the ERestorePointType enumeration type, sessionId, backupFileId properties were added to the ObjectRestorePointModel object.
  • The EGuestOSType enumeration type has been renamed to EGuestOSFamily. The Unknown and Other types have been added to this enumeration type.
  • The VmwareObjectRestorePointDiskModel, CloudDirectorObjectRestorePointDiskModel, HyperVObjectRestorePointDiskModel child schema have been added to the ObjectRestorePointDiskModel object.

Restore

  • The Get All Instant Recovery Mount Points of VMware vSphere VMs request now has the vmNameFilter parameter, which allows you to filter mount points by the VM name.
  • The overwrite property has been removed from the InstantViVMCustomizedRecoverySpec object and added to the InstantViVMRecoverySpec object.
  • The hostName property has been added to the InstantViVMRecoveryMount object.
  • The nameFilter property of the InstantViVMRecoveryMountsFilters has been renamed to vmnameFilter.
  • The jobName, restorePointDate, hostName types have been added to the EInstantViVMRecoveryMountsFiltersOrderColumn object. Also, the name has been renamed to vmName.
  • The mountServer property has been added to the WindowsFlrMountSpec and LinuxFlrMountSpec objects.
  • The CloudDirector type has been added to the EFlrPlatformType object.
  • The backupId property of the UnstructuredDataMountSpec object is no longer required. In addition, the unstructuredDataServerId and restorePointId properties have been added.

Sessions

  • The typeFilter and resultFilter parameters of the Get All Sessions request now accept arrays.
  • The statusFilter parameter has been added to the Get Session Logs and the Get Task Session Logs requests.
  • The initiatedBy property has been added to the SessionModel object. You can also sort sessions by this property with the orderColumn parameter of the Get All Sessions request.
  • The additionalInfo property has been added to the SessionLogRecordModel object.

Managed Servers

  • The typeFilter parameter of the Get All Servers request now accept arrays. The serverStateFilter, updatesStateFilter, includeNestedHosts parameters have been added to the request to filter managed servers by their state, update states, and whether or not the server is nested (the hypervisor is run inside a virtual machine). You can also use the orderColumn parameter to sort managed servers by their availability status.
  • The handshakeCode and optionalComponents properties have been added to LinuxHostSpec object.
  • The isBackupServer, updatesState, autoUpdateDeadline, isDefaultMountServer, handshakeCode, optionalComponents, isVBRLinuxAppliance properties have been added to the LinuxHostModel object, which contain information related to the Veeam Software Appliance and new mount server behavior.
  • The Certificate type has been added to the ECredentialsStorageType enumeration type, which allows connection to managed servers with a certificate.
  • The managementPort property of the LinuxHostSSHSettingsModel object has been replaced with the components property, which contains an array of ports used by Veeam Backup & Replication components installed on the managed server.
  • The WindowsHostPortsModel object has been renamed to ManagedHostPortsModel.
  • The WindowsHostComponentPortModel object has been renamed to HostComponentPortModel.
  • The EWindowsHostComponentType object has been renamed to EHostComponentType.

Automation

  • The resultFilter parameter of the Get All Automation Sessions request now accepts arrays.
  • The default property has been added to the GuestOsCredentialsPerMachineImportModel object.

Breaking Changes

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

Multiple Sections

  • The Germany type has been removed from the EAzureRegionType enumeration type — REST API no longer supports this Azure region.
  • The Informative type has been added to the ESuspiciousActivitySeverity enumeration type.

License

  • The required platformType and canBeRevoked properties have been added to the InstanceLicenseWorkloadModel object.
  • The required IsMultiSection and proactiveSupportEnabled properties have been added to the InstalledLicenseModel.

General Options

  • The required notificationEnabled property has been added to the GeneralOptionsModel object. Also, the notifications and siemIntegration properties are now required.
  • The required isEnabled property has been removed from the GeneralOptionsEmailNotificationsModel object.

Backup Browsers

  • The required mountErrors and restorePointId properties have been added to he FlrBrowseMountModel object.
  • The required displayName property has been added to the FlrBrowserItemModel object.

Backups

The required jobType property has been added to the BackupModel object.

Restore

  • The required network property of the RestoreTargetNetworkSpec object has been renamed to networks and it now accepts an array of RestoreTargetNetworkMappingModel objects.
  • The required jobName and restorePointDate properties have been added to the InstantViVMRecoveryMount object.
  • The required mountMode property has been added to the WindowsFlrMountSpec and LinuxFlrMountSpec objects.
  • The helperHost, helperAppliance, originalHost properties have been moved from the LinuxFlrMountSpec to its child schema LinuxFlrMountServerSettings — the content of the mountServer property. The LinuxFlrMountServerSettings schema also has the required mountServerType property, and the mountServerId property.

Restore Points

The required platform property has been added to the ObjectRestorePointDiskModel object.

Credentials

  • The password property has been moved from the CredentialsSpec object to its child objects StandardCredentialsSpec and LinuxCredentialsSpec. The property is now required.
  • The required creationMode property has been removed from the GoogleCloudServiceCredentialsSpec object. The existingAccount property is now required.

Repositories

The behavior of the perVMBackup property of the RepositoryAdvancedSettingsModel and PerformanceTierAdvancedSettingsModel objects has been changed, related to the deprecation of non per-machine backup chains in Veeam Backup & Replication 13.

  • For repositories created after Veeam Backup & Replication 13, the value is always set to true.
  • For repositories created before Veeam Backup & Replication 13, the behavior depends on the value that is already selected.
    • If perVMBackup is set to true, you cannot set it to false.
    • If perVMBackup is set to false, you can set it to true, but you cannot set it back to false.
  • In the RepositoryImportSpecCollection object, all mountServer properties now provide the MountServersSettingsModel object instead of MountServerSettingsModel object. Each repository type now can have both Linux and Windows-based mount servers.
  • The isOutOfDate required property has been added to the RepositoryStateModel object.

Session

The required logs property has been added to the FlrRestoreTaskModel object.

Jobs

The preserve type has been removed from the ESQLLogsProcessing enumeration type.

Automation

In the RepositoryImportSpecCollection object, all mountServer properties now accept an array of the MountServersSettingsImportSpec object instead of MountServerSettingsImportSpec object. Each repository type now can have both Linux and Windows-based mount servers.