- About Veeam Backup & Replication REST API
- Overview
- How To
- Changelog
- Login
- Service
- Services
- Credentials
- getGet All Credentials
- postAdd Credentials Record
- getGet Credentials Record
- putEdit Credentials Record
- delRemove Credentials Record
- postChange Password
- postChange Linux Private Key
- postChange Linux Root Password
- getGet All Cloud Credentials
- postAdd Cloud Credentials Record
- postGet Microsoft Azure Verification Code
- postRegister Microsoft Entra Application
- postGet Google Authentication Information
- getGet Cloud Credentials Record
- putEdit Cloud Credentials Record
- delRemove Cloud Credentials Record
- postChange Secret Key
- postChange Google Service Account
- postChange Certificate
- getGet All Helper Appliances
- postAdd or Edit Helper Appliance
- getGet Helper Appliance
- delRemove Helper Appliance
- Encryption
- Connection
- Cloud Browser
- Inventory Browser
- Traffic Rules
- General Options
- Malware Detection
- Configuration Backup
- Managed Servers
- Repositories
- getGet All Repositories
- postAdd Repository
- getGet All Repository States
- getGet Repository
- putEdit Repository
- delRemove Repository
- getGet All Scale-Out Backup Repositories
- postAdd Scale-Out Backup Repository
- getGet Scale-Out Backup Repository
- putEdit Scale-Out Backup Repository
- delRemove Scale-Out Backup Repository
- postEnable Sealed Mode
- postDisable Sealed Mode
- postEnable Maintenance Mode
- postDisable Maintenance Mode
- Proxies
- WAN Accelerators
- Jobs
- Backups
- Backup Objects
- Restore Points
- Restore
- getGet All VM Mounts
- postStart Instant Recovery
- getGet VM Mount
- postStop VM Publishing
- postStart VM Migration
- postRestore Entire VMware vSphere VM
- postRestore Entire VMware Cloud Director VM
- getGet All FCD Mounts
- postStart Instant FCD Recovery
- getGet FCD Mount
- postStop FCD Publishing
- postStart FCD Migration
- postStart File Restore
- postUnmount File System
- Backup Browsers
- getGet All File Restore Mounts
- getGet File Restore Mount
- postBrowse File System
- postCompare Attributes
- postCompare Files and Folders
- postSearch for Files and Folders
- postBrowse Search Results
- postRestore Files and Folders to Original Location
- postRestore Files and Folders to Another Location
- postPrepare Files and Folders for Download
- postDownload Files and Folders
- Tasks
- Replicas
- Replica Restore Points
- Failover
- Failback
- Sessions
- Agents
- Automation
- postImport Jobs
- postExport Jobs
- postImport Credentials
- postExport Credentials
- postImport Cloud Credentials
- postExport Cloud Credentials
- postImport Proxies
- postExport Proxies
- postImport Servers
- postExport Servers
- postImport Repositories
- postExport Repositories
- postImport Encryption Passwords
- postExport Encryption Passwords
- getGet All Automation Sessions
- getGet Automation Session
- getGet Automation Session Logs
- postStop Automation Session
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.
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.
In this version, the REST API supports two new types of jobs:
vSphereReplica
— VMware vSphere replication jobsCloudDirectorBackup
— VMware Cloud Director backup jobs
For these new jobs, all existing operations are supported.
Operations
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
The REST API allows you to get WAN accelerators that you can use when configuring replication jobs.
Operations
New endpoints for managing restore points of snapshot replicas allow you get restore points for further failover to VM replicas.
Operations
Now you can use the REST API to fail over to VM replicas and fail back from VM replicas to production VMs.
Operations
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
- Start File Restore
- Unmount File System
- Get All File Restore Mounts
- Get File Restore Mount
- Browse File System
- Compare Attributes
- Compare Files and Folders
- Search for Files and Folders
- Search for Files and Folders
- Browse Search Results
- Restore Files and Folders to Original Location
- Restore Files and Folders to Another Location
- Prepare Files and Folders for Download
- Download Files and Folders
To get a Veeam Agent machine use the following requests.
Operations
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
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
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
REST API 1.1-rev1 also supports managing KMS servers for data encryption.
Operations
REST API 1.1-rev1 includes new operations for Google service accounts.
Operations
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.
The following minor non-breaking changes are introduced in REST API 1.1-rev1.
The Get Cloud Hierarchy request now has the resetCache parameter that allows you to reset the cache for this request.
Now the
isHighPriority
,storage
,guestProcessing
andschedule
properties of theBackupJobSpec
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 thekmsServerId
andencryptionType
property that defines the encryption method:ByUserPassword
orByKms
.
Added the malwareStatus
property that indicates a malware status of restore points: Clean
, Suspicious
or Infected
. The property is optional.
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 cause REST API to function differently and can affect the client code.
The ManagedServerModel
object now has the status
property, which shows an availability status of the server.
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 |
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 |