- About Veeam Backup & Replication REST API
- Overview
- How To
- Changelog
- Global Changes
- New Features
- Users and Roles
- Malware Detection
- High Availability Cluster
- Bare Metal Recovery and Volume Restore
- Backup Move and Copy
- Unstructured Data
- Microsoft Entra ID
- Deduplication Appliance Repositories
- Veeam Data Cloud Vault Archive
- Instant Recovery to Microsoft Azure
- Instant Recovery to Another Platform
- Quick Backup
- Proxmox VE and Nutanix AHV
- General Options
- Inventory Browser
- Agent Management
- Backup Browser
- Application Items Restore
- Deprecated Requests
- Minor Non-Breaking Changes
- Breaking Changes
- 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 Entra ID Verification Code
- postRegister Microsoft Entra ID 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
- getGet All Encryption Passwords
- postAdd Encryption Password
- getGet Encryption Password
- putEdit Encryption Password Hint
- delRemove Encryption Password
- postChange Encryption Password
- postVerify Encryption Password
- getGet All KMS Servers
- postAdd KMS Server
- getGet KMS Server
- putEdit KMS Server
- delRemove KMS Server
- postChange KMS Server Certificate
- License
- postInstall License
- getGet Installed License
- postRemove License
- postCreate License Usage Report
- postRenew Installed License
- getGet Consumption of Socket Licenses
- postRevoke Socket License
- getGet Instance Licenses Consumption
- postAssign Instance License
- postRevoke Instance License
- postRemove Instance License
- getGet Capacity License Consumption
- postRevoke Capacity License from Unstructured Data Workload
- postUpdate License
- postEnable or Disable License Auto Update
- postEnable or Disable Instance Consumption for Unlicensed Agents
- Connection
- Cloud Browser
- Inventory Browser
- getGet All VMware vSphere Servers
- getGet VMware vSphere Server Objects
- postRescan Inventory Objects
- postGet All Servers
- postGet Inventory Objects
- postGet Inventory Object Details
- postGet All Protection Groups
- postGet All Physical Inventory
- postGet Inventory Objects for Specific Protection Group
- getGet All Unstructured Data Servers
- postAdd Unstructured Data Servers
- getGet Unstructured Data Server Defaults
- getGet Unstructured Data Server
- putEdit Unstructured Data Server
- delRemove Unstructured Data Server
- postStart Browsing Unstructured Data Server
- postBrowse Unstructured Data Server
- postStop Browsing Unstructured Data Server
- getGet All Unstructured Data Server Inventory Browse Sessions
- getGet Unstructured Data Server Inventory Browse Session
- getGet All Microsoft Entra ID Tenants
- postAdd Microsoft Entra ID Tenant
- getGet Microsoft Entra ID Tenant
- putEdit Microsoft Entra ID Tenant
- delRemove Microsoft Entra ID Tenant
- getGet Active Directory Objects from Domain
- getGet Available Disk Slots for Platform
- Traffic Rules
- General Options
- getGet General Options
- putEdit General Options
- getGet Email Settings
- putEdit Email Settings
- postSend Test Email
- postCheck SMTP Server Certificate
- getGet Host Authentication Settings
- putEdit Host Authentication Settings
- postExport Trusted Hosts List to a File
- postImport Trusted Hosts List from a File
- getGet Notification Settings
- putEdit Notification Settings
- getGet Event Forwarding Settings
- putEdit Event Forwarding Settings
- getGet Storage Latency Settings
- putEdit Storage Latency Settings
- postAdd Latency Settings for Specific Datastore
- getGet Latency Settings for Specific Datastore
- putEdit Latency Settings for Specific Datastore
- delRemove Latency Settings for Specific Datastore
- getGet VSA Event Forwarding Settings
- putEdit VSA Event Forwarding Settings
- getGet Daemon Settings for VSA Event Forwarding
- putEdit Daemon Settings for VSA Event Forwarding
- getGet Node Exporter Settings
- putUpdate Node Exporter Settings
- postSet Node Exporter Basic Authentication
- Users and Roles
- getGet All Users and Groups
- postAdd User or Group
- getGet User or Group
- delRemove User or Group
- getGet Roles Assigned to User or Group
- putEdit Roles Assigned to User or Group
- postChange Service Account Mode
- postReset MFA for Specific User
- getGet All Roles
- postCreate Custom Role
- getGet Role
- putEdit Custom Role
- delDelete Custom Role
- getGet Role Permissions
- getGet Custom Role Details
- postClone Custom Role
- getGet MFA Settings
- putEdit MFA Settings
- getGet All Restore Options
- ACL
- Global Exclusions
- Security
- postStart Security & Compliance Analyzer
- getGet Security & Compliance Analyzer Last Run
- getGet Security & Compliance Analyzer Schedule
- putModify Security & Compliance Analyzer Schedule
- postReset All Security & Compliance Analyzer Statuses
- getGet Security & Compliance Analyzer Results
- postSuppress Security & Compliance Analyzer Best Practice Status
- postReset Security & Compliance Analyzer Status
- getGet All Authorization Events
- getGet Authorization Event
- Malware Detection
- getGet All Malware Events
- postCreate Malware Event
- getGet Malware Event
- getGet All Malware Detection Settings
- putEdit Malware Detection Settings
- getGet Malware Suspicious File Masks Settings
- putEdit Malware Suspicious File Masks Settings
- getGet Malware Allowed Trusted Extensions
- getGet Malware File Detection Indicators of Compromise
- postEnable Monitoring of Indicators of Compromise
- postDisable Monitoring of Indicators of Compromise
- getGet Logs for SureBackup Scan Task Session
- postMark Backup Objects as Clean
- getGet All Malware Detection Objects
- getGet Malware Detection Object
- getGet All Malware Detection Exclusions
- postCreate or Update Malware Detection Exclusions
- postDelete Malware Detection Exclusions
- getGet YARA Rules
- postScan Backups with Antivirus or YARA Rules
- postStart Malware Encryption Analysis
- getDownload Malware Encryption Analysis Logs
- Configuration Backup
- Deployment
- Managed Servers
- getGet All Servers
- postAdd Server
- postGet vCenter Servers Attached to Cloud Director Server
- postGet Microsoft Hyper-V Servers Managed by Microsoft Hyper-V Cluster or SCVMM Server
- getGet Server
- putEdit Server
- delRemove Server
- postChange to Single-Use Credentials
- getGet Volumes for Microsoft Hyper-V Standalone Server
- putEdit Volumes on Microsoft Hyper-V Standalone Server
- postRescan All Managed Servers
- postRescan Managed Server
- getDefault Set of Optional Managed Server Components
- postUpdate Managed Server Components
- Repositories
- getGet All Repositories
- postAdd Repository
- postRescan Repositories
- getGet All Repository States
- getGet Repository
- putEdit Repository
- delRemove Repository
- getGet Repository Access Permissions
- putEdit Repository Access Permissions
- 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
- Mount Servers
- Proxies
- WAN Accelerators
- Helper Appliance Templates
- High Availability (HA) Cluster
- Jobs
- getGet All Jobs
- postCreate Job
- getGet All Job States
- getGet Job
- putEdit Job
- delDelete Job
- postStart Job
- postStop Job
- postRetry Job
- postDisable Job
- postEnable Job
- postApply Backup Policy Configuration
- postClear Backup Cache
- postClone Job
- postStart Quick Backup for VMware vSphere or VMware Cloud Director VM
- postStart Quick Backup for Hyper-V VM
- postStart Quick Backup for Agent-Managed Machine
- Backups
- getGet All Backups
- getGet Backup
- delDelete Backup
- postView Backup Details
- getGet Backup Objects
- delDelete Backup Object
- postDownload Backup Metadata
- getGet All Backup Files
- getGet Backup File
- postMark Backup File as Clean
- postMark Backup File as Infected
- postRun Health Check and Repair
- postCopy Backups to Another Repository
- postCopy Machine Backups to Another Repository or Folder
- postMove Backup to Another Repository
- postMove Backup Objects to Another Job
- getGet Move/Copy Backup Sessions Awaiting Action
- postManage a Move/Copy Backup Session Awaiting Action
- Backup Objects
- Restore Points
- Restore
- postRestore Entire File Share
- postRestore Entire Object Storage Bucket or Container
- getGet All Mount Points for Instant File Share Recovery
- postStart Instant File Share Recovery
- getGet Mount Point for Instant File Share Recovery
- postStop File Share Publishing
- postStart File Share Migration
- postStart File Share Switchover
- getGet File Share Switchover Settings
- putUpdate File Share Switchover Settings
- postStart File Restore from Unstructured Data Backup
- postUnmount Unstructured Data FLR Volumes
- postProlong a Retrieval Operation from Cold Object Storage
- getGet Cold Object Storage Retrieval Operations
- getGet All Mount Points for Instant Recovery to VMware vSphere
- postStart Instant Recovery to VMware vSphere
- getGet Mount Point for Instant Recovery to VMware vSphere
- postStop Publishing Machine to VMware vSphere
- postStart Migrating Machine to VMware vSphere
- getGet All Mount Points for Instant Recovery to Microsoft Hyper-V
- postStart Instant Recovery to Microsoft Hyper-V
- getGet Mount Point for Instant Recovery to Microsoft Hyper-V
- postStop Publishing Machine to Microsoft Hyper-V
- postStart Migrating Machine to Microsoft Hyper-V
- getGet All Mount Points for Instant Recovery to Microsoft Azure
- postStart Instant Recovery to Microsoft Azure
- getGet Mount Point for Instant Recovery to Microsoft Azure
- getGet All Mount Sessions for Instant Recovery to Microsoft Azure
- postStop Publishing Machine to Microsoft Azure
- postStart Migrating Machine to Microsoft Azure
- getGet Settings for Switchover to Microsoft Azure
- putUpdate Settings for Switchover to Microsoft Azure
- postStart Switchover to Microsoft Azure
- postRestore Entire VMware vSphere VM
- postRestore Entire VMware Cloud Director VM
- postRestore Entire Microsoft Hyper-V VM
- getGet All FCD Mount Points
- postStart Instant FCD Recovery
- getGet FCD Mount Point
- postStop FCD Publishing
- postStart FCD Migration
- postStart File Restore
- postUnmount File System
- postGet User Code for Delegated Restore of Microsoft Entra ID Items
- postGet Credentials for Delegated Restore of Microsoft Entra ID Items
- getGet Redirect URI for Delegated Restore of Microsoft Entra ID Items
- postPerform Authorization Code Exchange for Delegated Restore of Microsoft Entra ID Items
- postMount Microsoft Entra ID Tenant
- postStart Microsoft Entra ID Tenant Restore from Copy
- postUnmount Microsoft Entra ID Tenant
- postStart Microsoft Entra ID Audit Log Restore
- postUnmount Microsoft Entra ID Audit Logs
- postStarts Volume Restore for Agent or Recovery Appliance
- Application Items Restore
- DiskManagement
- postInitialize Disk Management
- postMap Backup Layout to Host Layout Automatically
- putKeep Disk Management Session Alive
- getGet Current Restore Layout of Host
- postApply Backup Layout
- postApply Disk Layout
- postErase Disk
- postRemove Partition
- postResize Partition
- postGet Partition Resize Options
- postRestore Partition
- putUnlock BitLocker-Protected Volume
- putCreate Disk Management Checkpoint
- putRevert to Disk Management Checkpoint
- Recovery Media
- Data Integration API
- Backup Browser
- postValidate Target Machine Credentials
- postValidate FLR Restore Item Target Path
- getGet All File Restore Mount Points
- getGet File Restore Mount Point
- getGet Restored Files Audit
- 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
- getDownload Files and Folders
- getGet All Unstructured Data Mount Points
- getGet Unstructured Data Mount Point
- postBrowse Unstructured Data File System
- postGet Restore Points of Unstructured Data File System Item
- postSearch for Files and Folders in Unstructured Data Mount Point
- postBrowse Search Results in Unstructured Data Mount Point
- postCopy Files and Folders to Specific Folder
- postRestore Files and Folders from Unstructured Data Backup
- postPrepare Files and Folders for Download from Unstructured Data Backup
- getDownload Files and Folders
- postCompare Attributes of Unstructured Data Backup with Source
- postCompare Files and Folders of Unstructured Data Backup with Source
- getGet Mount Points of All Microsoft Entra ID Tenants
- getGet Mount Point of Microsoft Entra ID Tenant
- postGet Restore Points of Microsoft Entra ID Tenant
- getGet Protection Scope of Microsoft Entra ID Tenant
- postGet Microsoft Entra ID Items
- postGet Microsoft Entra ID Item
- postGet Restore Points of Microsoft Entra ID Item
- postValidate Microsoft Entra ID Items
- postCheck Microsoft Entra ID Items in Production
- postGenerate Microsoft Entra ID User Passwords
- postRestore Microsoft Entra ID Items
- postRestore Microsoft Entra ID Item Properties
- postCompare Microsoft Entra ID Item Properties
- postStart Comparing Microsoft Entra ID Item Properties
- getGet Comparison Results for Microsoft Entra ID Items
- postStart Comparing Microsoft Entra ID Conditional Access Policy
- getGet Comparison Results for Microsoft Entra ID Conditional Access Policy
- postStart Exporting Microsoft Entra ID Items to JSON
- getGet JSON Export Results for Microsoft Entra ID Items
- postExport Microsoft Entra ID Tenant Objects To JSON
- postExport Microsoft Entra ID Items
- postUpload Microsoft Entra ID Users
- postUpload Microsoft Entra ID Groups
- postUpload Microsoft Entra ID Administrative Units
- postUpload Microsoft Entra ID Roles
- postUpload Microsoft Entra ID Applications
- postUpload Microsoft Entra ID Conditional Access Policies
- postUpload Microsoft Entra ID Device Configurations
- postUpload Microsoft Entra ID Organization Contacts
- postUpload Microsoft Entra ID Devices
- getGet All Restore Sessions of Microsoft Entra ID Tenant
- getGet Restore Session of Microsoft Entra ID Tenant
- getGet Restore Session Logs of Microsoft Entra ID Tenant
- postStop Restore Session of Microsoft Entra ID Tenant
- postReveal Microsoft Entra ID BitLocker Recovery Key
- Tasks
- Replicas
- Replica Restore Points
- Failover
- Failback
- Sessions
- Agents
- getGet All Recovery Tokens
- postCreate Recovery Token
- getGet Recovery Token
- putEdit Recovery Token
- delDelete Recovery Token
- getGet All Protected Linux Computers
- getGet Protected Linux Computer
- getGet All Discovered Entities
- getGet All Agent States
- getGet Agent State
- getGet Agent Backups
- postAttach Backups to Agent
- postDetach Backups from Agent
- getGet Protection Groups
- postAdd Protection Group
- getGet Protection Group
- putEdit Protection Group
- delRemove Protection Group
- postRescan Protection Group
- postEnable Protection Group
- postDisable Protection Group
- postDownload Protection Group Packages
- getGet Discovered Entities
- postRescan Discovered Entities
- postReboot Discovered Entities
- postInstall Agent on Discovered Entities
- postUninstall Agent from Discovered Entities
- postUpgrade Agent on Discovered Entities
- postInstall CBT Driver on Discovered Entities
- postUninstall CBT Driver from Discovered Entities
- postUninstall All Components from Discovered Entities
- postAdd Discovered Entities to Trusted Hosts List
- postPrepare Agent Hosts for Remote Bare Metal Recovery
- postRecreate Embedded Recovery Media on Agent Hosts
- getGet Discovered Entity
- delRemove Discovered Entity
- postCreate Recovery Media Task for Discovered Entity
- getCreate Recovery Media for Discovered Entity
- getGet Linux Agent Packages
- getGet Unix Agent Packages
- getGet Agents Recovery Appliances
- getGet Agents Recovery Appliance
- postReboots Agents Recovery Appliances
- postReboots Agents Recovery Appliance
- Active Directory Domains
- 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
- Log export
The Restore section defines operations for performing restore.
In this version, the REST API supports the following recovery operations:
- Instant Recovery to VMware vSphere
- Instant Recovery to Microsoft Hyper-V
- Instant Recovery of Microsoft Windows and Linux machine backups to Microsoft Azure
- Instant File Share Recovery to the original or another location
- Entire VM restore of a VMware vSphere VM backup to VMware vSphere
- Entire VM restore of a Microsoft Hyper-V VM backup to Microsoft Hyper-V
- Entire VM restore of a VMware Cloud Director VM backup to VMware Cloud Director
- Restore of an entire file share, bucket or container backup to the original or another location
- Restore of disk backups that will be registered as First Class Disks (FCD) — a type of virtual disks that can be managed independent of any VM
- File restore from a backup or replica of a Microsoft Windows or Linux machine
- File restore from an unstructured data backup
- Microsoft Entra ID item restore
- Microsoft Entra ID audit log restore
Restore Entire File Share
The HTTP POST request to the /api/v1/restore/unstructuredData/fileShare endpoint restores an entire file share to the original or another location.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
| restorePointId required | string <uuid> Restore point ID. To get the ID, run the Get All Restore Points request. |
object (UnstructuredDataShareRestoreDestinationModel) Target for restoring entire file share. | |
object (UnstructuredDataShareRestoreOptionsModel) Restore options for restoring entire file share. |
A restore session has been created. To check the progress, track the session state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "restorePointId": "9f469cdc-100a-4bba-9d0b-5c5411517808",
- "destination": {
- "unstructuredDataServerId": "3cd03b37-7685-40d5-a63b-7fec631e2ac9",
- "restoreToBackupServer": false,
- "preserveHierarchy": false
}, - "restoreOptions": {
- "rollback": false,
- "overwriteMode": "ReplaceOlder",
- "restorePermissions": true
}
}- 201
- 400
- 401
- 403
- 404
- 500
{- "sessionType": "ConfigurationBackup",
- "state": "Stopped",
- "id": "f848e90c-7f37-4ff5-9d55-04e33f8a4de3",
- "name": "Backup Configuration Job",
- "jobId": "99d1bf3d-e2e0-4bec-b2b3-820c0b87d212",
- "creationTime": "2023-11-08T10:00:12.56+01:00",
- "endTime": "2023-11-08T10:00:34.017+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 0,
- "platformName": "VMware",
- "platformId": "00000000-0000-0000-0000-000000000000"
}Restore Entire Object Storage Bucket or Container
The HTTP POST request to the /api/v1/restore/unstructuredData/objectStorage endpoint restores an entire object storage bucket or container.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
| restorePointId required | string <uuid> Restore point ID. To get the ID, run the Get All Restore Points request. |
object (UnstructuredDataOSRestoreDestinationModel) Target for restoring entire object storage bucket or container. | |
object (UnstructuredDataOSRestoreOptionsModel) Restore options for restoring entire object storage bucket or container. |
A restore session has been created. To check the progress, track the session state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "restorePointId": "9f469cdc-100a-4bba-9d0b-5c5411517808",
- "destination": {
- "unstructuredDataServerId": "3cd03b37-7685-40d5-a63b-7fec631e2ac9",
- "restoreToBackupServer": false,
- "path": "restored-data",
- "newBucketName": "tech-restored-bucket",
- "regionId": "us-east-1"
}, - "restoreOptions": {
- "rollback": false,
- "overwriteMode": "ReplaceOlder",
- "overwriteBucketAttributes": false,
- "coldStorageRetrievalSettings": {
- "coldStorageRetrievalMode": "AmazonBulk",
- "availabilityPeriodDays": 7,
- "sendNotificationMail": true,
- "notificationHours": 24
}
}
}- 201
- 400
- 401
- 403
- 404
- 500
{- "sessionType": "ConfigurationBackup",
- "state": "Stopped",
- "id": "f848e90c-7f37-4ff5-9d55-04e33f8a4de3",
- "name": "Backup Configuration Job",
- "jobId": "99d1bf3d-e2e0-4bec-b2b3-820c0b87d212",
- "creationTime": "2023-11-08T10:00:12.56+01:00",
- "endTime": "2023-11-08T10:00:34.017+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 0,
- "platformName": "VMware",
- "platformId": "00000000-0000-0000-0000-000000000000"
}Get All Mount Points for Instant File Share Recovery
The HTTP GET request to the /api/v1/restore/instantRecovery/unstructuredData endpoint gets an array of mount points for Instant File Share Recovery.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
query Parameters
| skip | integer <int32> Number of mount points to skip. |
| limit | integer <int32> Maximum number of mount points to return. |
| orderColumn | string (EInstantUnstructuredDataRecoveryMountsFiltersOrderColumn) Sorts mount points by one of the mount point parameters. |
| orderAsc | boolean If |
| stateFilter | string (EInstantRecoveryMountState) Filters mount points by mount point state. |
| shareNameFilter | string Filters mount points by file share name. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
OK
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 401
- 403
- 404
- 500
{- "data": [
- {
- "state": "Published",
- "id": "11a90854-7054-4441-881e-ac790904b62b",
- "sessionId": "11a90854-7054-4441-881e-ac790904b62b",
- "spec": {
- "autoSelectMountServers": true,
- "restoreOptions": [
- {
- "restorePointId": "9cea4ad6-8437-49e3-8a37-54d1e095a812",
- "mountServerId": "6745a759-2205-4cd2-b172-8ec8f7e60ef8",
- "permissions": {
- "permissionType": "AllowEveryone",
- "owner": "Administrator",
- "permissionScope": [ ]
}
}
], - "reason": ""
}, - "unstructuredServerId": "6745a759-2205-4cd2-b172-8ec8f7e60ef8",
- "unstructuredServerName": "\\\\srv85\\C:\\Shares\\nfs_share",
- "errorMessage": ""
}, - {
- "state": "Publishing",
- "id": "22b01965-1234-4bcd-9999-bcdeff001234",
- "sessionId": "22b01965-1234-4bcd-9999-bcdeff001234",
- "spec": {
- "autoSelectMountServers": true,
- "restoreOptions": [
- {
- "restorePointId": "abcd1234-5678-90ef-abcd-1234567890ef",
- "mountServerId": "99887766-5544-4321-aaaa-bbccddeeff00",
- "permissions": {
- "permissionType": "AllowEveryone",
- "owner": "Administrator",
- "permissionScope": [ ]
}
}
], - "reason": ""
}, - "unstructuredServerId": "99887766-5544-4321-aaaa-bbccddeeff00",
- "unstructuredServerName": "\\\\srv42\\D$\\Backups\\data_share",
- "errorMessage": ""
}
], - "pagination": {
- "total": 2,
- "count": 2,
- "skip": 0,
- "limit": 200
}
}Start Instant File Share Recovery
The HTTP POST request to the /api/v1/restore/instantRecovery/unstructuredData endpoint starts Instant File Share Recovery.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
required | Array of objects (UnstructuredDataRestoreOptionsModel) Array of options for Instant File Share Recovery. |
| autoSelectMountServers | boolean If |
| reason | string Reason for performing Instant Recovery. |
An InstantRecovery session has been started. To check the progress, track the session state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "autoSelectMountServers": true,
- "restoreOptions": [
- {
- "restorePointId": "9cea4ad6-8437-49e3-8a37-54d1e095a812",
- "permissions": {
- "owner": "Administrator",
- "permissionType": "AllowEveryone",
- "permissionScope": [ ]
}
}
], - "reason": "Verifying backup integrity"
}- 201
- 400
- 401
- 403
- 404
- 500
{- "data": [
- {
- "sessionType": "BackupJob",
- "state": "Stopped",
- "id": "c924ee2f-1197-4b37-8de3-009c1977f347",
- "name": "Backup Job 1",
- "jobId": "c05dfa57-f59a-4e90-8065-b7f5d3276406",
- "creationTime": "2023-12-04T06:13:34.983+01:00",
- "endTime": "2023-12-04T06:15:00.617+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Failed",
- "message": "Creating synthetic full backup (22% done)",
- "isCanceled": false
}, - "resourceId": "c7478158-7c99-4bab-93b1-c3efdd1062fa",
- "resourceReference": "/api/v1/backups/c7478158-7c99-4bab-93b1-c3efdd1062fa",
- "usn": 0,
- "initiatedBy": "user"
}
], - "pagination": {
- "total": 307,
- "count": 1,
- "skip": 0,
- "limit": 1
}
}Get Mount Point for Instant File Share Recovery
The HTTP GET request to the /api/v1/restore/instantRecovery/unstructuredData/{mountId} endpoint gets an Instant Recovery mount point that has the specified mountID.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All Mount Points for Instant File Share Recovery request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
OK
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 401
- 403
- 404
- 500
{- "state": "Published",
- "id": "11a90854-7054-4441-881e-ac790904b62b",
- "sessionId": "11a90854-7054-4441-881e-ac790904b62b",
- "spec": {
- "autoSelectMountServers": true,
- "restoreOptions": [
- {
- "restorePointId": "9cea4ad6-8437-49e3-8a37-54d1e095a812",
- "mountServerId": "6745a759-2205-4cd2-b172-8ec8f7e60ef8",
- "permissions": {
- "permissionType": "AllowEveryone",
- "owner": "Administrator",
- "permissionScope": [ ]
}
}
], - "reason": ""
}, - "unstructuredServerId": "6745a759-2205-4cd2-b172-8ec8f7e60ef8",
- "unstructuredServerName": "\\\\srv85\\C:\\Shares\\nfs_share",
- "errorMessage": ""
}Stop File Share Publishing
The HTTP POST request to the /api/v1/restore/instantRecovery/unstructuredData/{mountId}/unmount endpoint stops publishing the file share and removes it from the destination server.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All Mount Points for Instant File Share Recovery request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
An InstantRecovery session has been started to stop publishing the file share. To check the progress, track the session state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 400
- 401
- 403
- 404
- 500
{- "sessionType": "ConfigurationBackup",
- "state": "Stopped",
- "id": "f848e90c-7f37-4ff5-9d55-04e33f8a4de3",
- "name": "Backup Configuration Job",
- "jobId": "99d1bf3d-e2e0-4bec-b2b3-820c0b87d212",
- "creationTime": "2023-11-08T10:00:12.56+01:00",
- "endTime": "2023-11-08T10:00:34.017+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 0,
- "platformName": "VMware",
- "platformId": "00000000-0000-0000-0000-000000000000"
}Start File Share Migration
The HTTP POST request to the /api/v1/restore/instantRecovery/unstructuredData/{mountId}/migrate endpoint migrates the published file share to production.
Available to: Backup Administrator.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All Mount Points for Instant File Share Recovery request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
required | object (UnstructuredDataShareMigrationDestinationModel) Destination for file share migration. |
required | object (UnstructuredDataSwitchoverSettingsModel) Switchover settings for Instant File Share Recovery. |
| overwriteMode | string (EUnstructuredDataInstantRestoreOverwriteMode) Overwrite mode. |
An UnstructuredDataMigration session has been started to migrate the published file share to production. To check the progress, track the session state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "destination": {
- "unstructuredDataServerId": "3cd03b37-7685-40d5-a63b-7fec631e2ac9",
- "preserveHierarchy": false
}, - "overwriteMode": "ReplaceOlder",
- "switchoverSettings": {
- "type": "Scheduled",
- "scheduleTime": "2025-10-21T08:21:32.008Z"
}
}- 201
- 400
- 401
- 403
- 404
- 500
{- "sessionType": "ConfigurationBackup",
- "state": "Stopped",
- "id": "f848e90c-7f37-4ff5-9d55-04e33f8a4de3",
- "name": "Backup Configuration Job",
- "jobId": "99d1bf3d-e2e0-4bec-b2b3-820c0b87d212",
- "creationTime": "2023-11-08T10:00:12.56+01:00",
- "endTime": "2023-11-08T10:00:34.017+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 0,
- "platformName": "VMware",
- "platformId": "00000000-0000-0000-0000-000000000000"
}Start File Share Switchover
The HTTP POST request to the /api/v1/restore/instantRecovery/unstructuredData/{mountId}/switchover endpoint starts switchover from the specified mount point.
Available to: Backup Administrator.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All Mount Points for Instant File Share Recovery request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
An InstantRecovery session has been started to switch the unstructured data. To check the progress, track the session state.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 201
- 401
- 403
- 404
- 500
{- "sessionType": "ConfigurationBackup",
- "state": "Stopped",
- "id": "f848e90c-7f37-4ff5-9d55-04e33f8a4de3",
- "name": "Backup Configuration Job",
- "jobId": "99d1bf3d-e2e0-4bec-b2b3-820c0b87d212",
- "creationTime": "2023-11-08T10:00:12.56+01:00",
- "endTime": "2023-11-08T10:00:34.017+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 0,
- "platformName": "VMware",
- "platformId": "00000000-0000-0000-0000-000000000000"
}Get File Share Switchover Settings
The HTTP GET request to the /api/v1/restore/instantRecovery/unstructuredData/{mountId}/switchoverSettings endpoint gets switchover settings for a mount point that has the specified mountID.
Available to: Backup Administrator.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All Mount Points for Instant File Share Recovery request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
OK
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 400
- 401
- 403
- 404
- 500
{- "type": "Scheduled",
- "scheduleTime": "2025-10-21T08:14:47.754Z"
}Update File Share Switchover Settings
The HTTP PUT request to the /api/v1/restore/instantRecovery/unstructuredData/{mountId}/switchoverSettings endpoint modifies switchover settings for an Instant Recovery mount point that has the specified mountID.
Available to: Backup Administrator.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All Mount Points for Instant File Share Recovery request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/json
| type required | string (EUnstructuredDataInstantRecoverySwitchoverType) Switchover type. |
| scheduleTime | string <date-time> Date and time when switchover will be triggered. |
OK
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "type": "Scheduled",
- "scheduleTime": "2025-10-21T08:14:47.754Z"
}- 200
- 400
- 401
- 403
- 404
- 500
{- "type": "Scheduled",
- "scheduleTime": "2025-10-21T08:14:47.754Z"
}Start File Restore from Unstructured Data Backup
The HTTP POST request to the /api/v1/restore/flr/unstructuredData endpoint starts file restore from an unstructured data backup. The operation starts a file restore session and mounts the share to a mount point.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
| unstructuredDataServerId | string <uuid> Unstructured data server ID. To get the ID, run the Get All Unstructured Data Servers request. If you use this property, do not specify the |
| restorePointId | string <uuid> Restore point ID. To get the ID, run the Get All Restore Points request. If you use this property, do not specify the |
| backupId | string <uuid> Backup ID. To get the ID, run the Get All Backups request. If you use this property, do not specify the |
object (FlrAutoUnmountModel) Settings for automatic unmount of the file system. | |
object (UnstructuredDataColdStorageRetrievalSettings) Settings for retrieving data from cold storage. |
Unstructured data share has been mounted.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "unstructuredDataServerId": "3cd03b37-7685-40d5-a63b-7fec631e2ac9",
- "backupId": "f0001e05-e072-418d-91b0-528f314b8b8e",
- "autoUnmount": {
- "isEnabled": true,
- "noActivityPeriodInMinutes": 30
}
}- 201
- 400
- 401
- 403
- 500
{- "sessionId": "b7e1c2d3-4a5f-6789-abcd-ef0123456789",
- "properties": {
- "pathSeparator": "/"
}, - "sourceProperties": {
- "backupId": "c4d5e6f7-a8b9-0123-4567-89abcdef0123"
}
}Unmount Unstructured Data FLR Volumes
The HTTP POST request to the /api/v1/restore/unstructuredData/{sessionId}/unmount endpoint unmounts unstructured data backup files from a mount point and stops a file restore session that has the specified sessionId.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
path Parameters
| sessionId required | string <uuid> Restore session ID. To get the ID, run the Get All Sessions request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Restore session has been stopped.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 201
- 401
- 403
- 404
- 500
{- "sessionType": "ConfigurationBackup",
- "state": "Stopped",
- "id": "f848e90c-7f37-4ff5-9d55-04e33f8a4de3",
- "name": "Backup Configuration Job",
- "jobId": "99d1bf3d-e2e0-4bec-b2b3-820c0b87d212",
- "creationTime": "2023-11-08T10:00:12.56+01:00",
- "endTime": "2023-11-08T10:00:34.017+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 0,
- "platformName": "VMware",
- "platformId": "00000000-0000-0000-0000-000000000000"
}Prolong a Retrieval Operation from Cold Object Storage
The HTTP POST request to the /api/v1/restore/unstructuredData/retrieveFromArchiveStorage endpoint retrieves unstructured data from cold object storage.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
| retrievalOperationId required | string <uuid> Retrieval operation id. |
| availabilityPeriodDays required | integer <int32> Number of days, the retrieved files must be kept available. |
A retrieval session has been created. To check the progress, track the session state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "retrievalOperationId": "d1e2f3a4-b5c6-7890-1234-56789abcdef0",
- "availabilityPeriodDays": 7
}- 201
- 400
- 401
- 403
- 404
- 500
{- "sessionType": "ConfigurationBackup",
- "state": "Stopped",
- "id": "f848e90c-7f37-4ff5-9d55-04e33f8a4de3",
- "name": "Backup Configuration Job",
- "jobId": "99d1bf3d-e2e0-4bec-b2b3-820c0b87d212",
- "creationTime": "2023-11-08T10:00:12.56+01:00",
- "endTime": "2023-11-08T10:00:34.017+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 0,
- "platformName": "VMware",
- "platformId": "00000000-0000-0000-0000-000000000000"
}Get Cold Object Storage Retrieval Operations
The HTTP GET request to the /api/v1/restore/unstructuredData/retrieveFromArchiveStorage endpoint returns the current retrieval operations from cold object storage with their expiration periods.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
query Parameters
| serverIdFilter required | Array of strings <uuid> Filter retrievals to only show retrievals for points belonging to this backup source. |
| backupIdFilter required | Array of strings <uuid> Filter retrievals to only show retrievals for points belonging to this backup. |
| restorePointIdFilter required | Array of strings <uuid> Filter retrievals to only show retrievals for these points. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
The active retrievals
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 201
- 400
- 401
- 403
- 404
- 500
{- "data": [
- {
- "operationId": "d1e2f3a4-b5c6-7890-1234-56789abcdef0",
- "restorePointId": "9f469cdc-100a-4bba-9d0b-5c5411517808",
- "serverId": "3cd03b37-7685-40d5-a63b-7fec631e2ac9",
- "backupId": "c4d5e6f7-a8b9-0123-4567-89abcdef0123",
- "retrievalExpirationTime": "2026-06-19T10:45:00Z",
- "sessionState": "Retrieved",
- "operationType": "RestorePointBlobs"
}
]
}Get All Mount Points for Instant Recovery to VMware vSphere
The HTTP GET request to the /api/v1/restore/instantRecovery/vSphere/vm endpoint gets an array of Instant Recovery mount points to VMware vSphere.
Available to: Backup Administrator, Backup Operator, Restore Operator, Backup Viewer, Security Administrator. Also available to custom roles that have backup or restore permissions.
query Parameters
| skip | integer <int32> Number of mount points to skip. |
| limit | integer <int32> Default: 200 Maximum number of mount points to return. |
| orderColumn | string (EInstantViVMRecoveryMountsFiltersOrderColumn) Sorts mount points by one of the mount point parameters. |
| orderAsc | boolean If |
| stateFilter | string (EInstantRecoveryMountState) Filters mount points by mount point state. |
| vmNameFilter | string Filters mount points by the |
| mountIdFilter | Array of strings <uuid> Filters mount points by the |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
OK
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 401
- 403
- 404
- 500
{- "data": [
- {
- "state": "Mounted",
- "id": "2e0bf225-91b3-4005-8524-6f7971e9ac4f",
- "sessionId": "2e0bf225-91b3-4005-8524-6f7971e9ac4f",
- "spec": {
- "type": "Customized",
- "restorePointId": "ae2757ca-c200-46a6-88f9-fe9b90262672",
- "vmTagsRestoreEnabled": true,
- "secureRestore": {
- "virusDetectionAction": "DisableNetwork",
- "antivirusScanEnabled": true,
- "entireVolumeScanEnabled": true
}, - "nicsEnabled": false,
- "powerUp": true,
- "reason": "IR",
- "datastore": {
- "redirectEnabled": true,
- "cacheDatastore": {
- "type": "Datastore",
- "hostName": "vcenter01.tech.local",
- "name": "esx04-ds1",
- "objectId": "datastore-78098",
- "platform": "VSphere"
}
}
}, - "vmName": "apache05-ir",
- "errorMessage": "",
- "jobName": "VMware Backup Job",
- "restorePointDate": "2024-11-15T14:30:00Z"
}
], - "pagination": {
- "total": 1,
- "count": 1,
- "skip": 0,
- "limit": 1
}
}Start Instant Recovery to VMware vSphere
The HTTP POST request to the /api/v1/restore/instantRecovery/vSphere/vm endpoint starts Instant Recovery to VMware vSphere. You can recover a VM from the specified restore point to the original location with initial VM settings, or to any location but with different settings.
You can also instantly recover backups of other platforms (for example, Veeam Agent backups or backups of other hypervisors) to VMware vSphere. To do this, use the OtherPlatform type and specify the target VMware vSphere location in the destination property.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
| restorePointId required | string <uuid> ID of the restore point. | ||||||
| type required | string (EInstantVMRecoveryModeType) Instant Recovery restore mode.
| ||||||
required | object (SecureRestoreSpec) Secure restore settings. | ||||||
| nicsEnabled | boolean If | ||||||
| powerUp | boolean If | ||||||
| reason | string Reason for restoring the VM. | ||||||
| overwrite | boolean If | ||||||
| shareCredentialsId | string <uuid> Credentials to network share the restorePoint is located on. If needed. | ||||||
| vmTagsRestoreEnabled | boolean If |
An InstantRecovery session has been started to start Instant Recovery. To check the progress, track the session state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "restorePointId": "af75ddaa-d680-4c50-ac82-07834a007707",
- "type": "OriginalLocation",
- "vmTagsRestoreEnabled": true,
- "secureRestore": {
- "antivirusScanEnabled": true,
- "virusDetectionAction": "DisableNetwork",
- "entireVolumeScanEnabled": true
}, - "nicsEnabled": false,
- "powerUp": true,
- "reason": "Instant Recovery to VMware vSphere"
}- 201
- 400
- 401
- 403
- 404
- 500
{- "sessionType": "InstantRecovery",
- "state": "Working",
- "id": "2e0bf225-91b3-4005-8524-6f7971e9ac4f",
- "name": "apache05",
- "jobId": "9239c712-3c0e-49e9-ae4d-c9c6267504e0",
- "creationTime": "2024-03-07T19:31:23.07555+01:00",
- "endTime": "2024-03-07T19:35:45.12345+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "<StateXml/>",
- "isCanceled": false
}, - "resourceId": "2e0bf225-91b3-4005-8524-6f7971e9ac4f",
- "resourceReference": "/api/v1/restore/instantRecovery/vmware/vm/2e0bf225-91b3-4005-8524-6f7971e9ac4f",
- "usn": 0
}Get Mount Point for Instant Recovery to VMware vSphere
The HTTP GET request to the /api/v1/restore/instantRecovery/vSphere/vm/{mountId} endpoint gets an Instant Recovery mount point that has the specified mountID.
Available to: Backup Administrator, Backup Operator, Restore Operator, Backup Viewer, Security Administrator. Also available to custom roles that have backup or restore permissions.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All Mount Points for Instant Recovery to VMware vSphere request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
OK
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 401
- 403
- 404
- 500
{- "state": "Mounted",
- "id": "32441b29-d55c-4b20-801a-c1b17cd75d55",
- "sessionId": "32441b29-d55c-4b20-801a-c1b17cd75d55",
- "spec": {
- "type": "OriginalLocation",
- "restorePointId": "77be4f6f-66d8-4b2b-9821-1e6acce25b87",
- "vmTagsRestoreEnabled": true,
- "secureRestore": {
- "virusDetectionAction": "DisableNetwork",
- "antivirusScanEnabled": true,
- "entireVolumeScanEnabled": true
}, - "nicsEnabled": false,
- "powerUp": true,
- "reason": "Instant Recovery to VMware vSphere"
}, - "vmName": "apache04",
- "errorMessage": "",
- "jobName": "VMware Backup Job",
- "restorePointDate": "2024-11-15T14:30:00Z"
}Stop Publishing Machine to VMware vSphere
The HTTP POST request to the /api/v1/restore/instantRecovery/vSphere/vm/{mountId}/unmount endpoint stops publishing the recovered machine and removes it from the destination host.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All Mount Points for Instant Recovery to VMware vSphere request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
An InstantRecovery session has been started to stop publishing the VM. To check the progress, track the session state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 400
- 401
- 403
- 404
- 500
{- "sessionType": "InstantRecovery",
- "state": "Working",
- "id": "2e0bf225-91b3-4005-8524-6f7971e9ac4f",
- "name": "apache05",
- "jobId": "9239c712-3c0e-49e9-ae4d-c9c6267504e0",
- "creationTime": "2024-03-07T19:31:23.07555+01:00",
- "endTime": "2024-03-07T19:35:45.12345+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "<StateXml/>",
- "isCanceled": false
}, - "resourceId": "2e0bf225-91b3-4005-8524-6f7971e9ac4f",
- "resourceReference": "/api/v1/restore/instantRecovery/vmware/vm/2e0bf225-91b3-4005-8524-6f7971e9ac4f",
- "usn": 0
}Start Migrating Machine to VMware vSphere
The HTTP POST request to the /api/v1/restore/instantRecovery/vSphere/vm/{mountId}/migrate endpoint starts migrating the machine for which you have started Instant Recovery, using the specified mount point.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All Mount Points for Instant Recovery to VMware vSphere request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
object (InventoryObjectModel) Inventory object properties. | |
object (InventoryObjectModel) Inventory object properties. | |
object (InventoryObjectModel) Inventory object properties. | |
object (ViVMQuickMigrationDatastoresSpec) Destination datastore. | |
| sourceProxyIds | Array of strings <uuid> Array of source backup proxies. |
| targetProxyIds | Array of strings <uuid> Array of target backup proxies. |
| VeeamQMEnabled | boolean If |
| DeleteSourceVmsFiles | boolean If |
A QuickMigration session has been started to migrate the VM. To check the progress, track the session state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "destinationHost": {
- "type": "Host",
- "hostName": "vcenter01.tech.local",
- "name": "prgtwesx01.tech.local",
- "objectId": "host-1008",
- "urn": "vc:vcenter01.tech.local;folder:group-d1;datacenter:datacenter-1001;folder:group-h1003;computeresource:domain-s1006;hostsystem:host-1008",
- "platform": "VSphere",
- "size": "N/A"
}, - "folder": {
- "type": "Folder",
- "hostName": "vcenter01.tech.local",
- "name": "Enterprise",
- "objectId": "group-v2046",
- "urn": "vc:vcenter01.tech.local;folder:group-d1;datacenter:datacenter-1001;folder:group-v1002;folder:group-v2004;folder:group-v2046",
- "platform": "VSphere",
- "size": "N/A"
}, - "resourcePool": {
- "type": "ResourcePool",
- "hostName": "vcenter01.tech.local",
- "name": "Enterprise",
- "objectId": "resgroup-1023",
- "urn": "vc:vcenter01.tech.local;folder:group-d1;datacenter:datacenter-1001;folder:group-h1003;computeresource:domain-s1006;hostsystem:host-1008;resourcepool:resgroup-1023",
- "platform": "VSphere",
- "size": "N/A"
}, - "datastore": {
- "defaultDatastore": {
- "type": "Datastore",
- "hostName": "vcenter01.tech.local",
- "name": "prgtwesx01-ds01",
- "objectId": "datastore-4686",
- "urn": "vc:vcenter01.tech.local;folder:group-d1;datacenter:datacenter-1001;datastore:datastore-4686",
- "platform": "VSphere",
- "size": "21.8 TB"
}
}, - "sourceProxyIds": [
- "2e0bf225-91b3-4005-8524-6f7971e9ac4f",
- "6745a759-2205-4cd2-b172-8ec8f7e60ef8"
], - "targetProxyIds": [
- "83ba3602-158f-45cd-affc-0885c10b84fc",
- "3c5557b1-71e8-4508-8dce-4e743b294ef5"
], - "VeeamQMEnabled": true,
- "DeleteSourceVmsFiles": false
}- 200
- 400
- 401
- 403
- 404
- 500
{- "sessionType": "QuickMigration",
- "state": "Stopped",
- "id": "8228661b-861e-40c4-8133-8a97700f4dfa",
- "name": "Quick Migration Job",
- "jobId": "a00aa837-2c85-40c9-ae98-8b089dabc9b5",
- "creationTime": "2024-03-07T21:16:08.216977+01:00",
- "endTime": "2024-03-07T21:22:45.678901+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "resourceId": "8228661b-861e-40c4-8133-8a97700f4dfa",
- "usn": 0
}Get All Mount Points for Instant Recovery to Microsoft Hyper-V
The HTTP GET request to the /api/v1/restore/instantRecovery/hyperV/vm endpoint gets an array of Instant Recovery mount points to Microsoft Hyper-V.
Available to: Backup Administrator, Backup Operator, Restore Operator, Backup Viewer, Security Administrator. Also available to custom roles that have backup or restore permissions.
query Parameters
| skip | integer <int32> Number of mount points to skip. |
| limit | integer <int32> Default: 200 Maximum number of mount points to return. |
| orderColumn | string (EInstantHvVMRecoveryMountsFiltersOrderColumn) Sorts mount points by one of the mount point parameters. |
| orderAsc | boolean If |
| stateFilter | string (EInstantRecoveryMountState) Filters mount points by mount point state. |
| vmNameFilter | string Filters mount points by backup job name. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
OK
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 401
- 403
- 404
- 500
{- "data": [
- {
- "state": "Mounted",
- "id": "76683fbf-9cc0-4766-a169-f01918fdaa60",
- "sessionId": "76683fbf-9cc0-4766-a169-f01918fdaa60",
- "spec": {
- "destinationHost": {
- "type": "Host",
- "hostName": "pdctwhv02.tech.local",
- "name": "pdctwhv02.tech.local",
- "objectId": "a51b5e5e-4487-4c5b-87c0-f25fe1c7cf73",
- "urn": "Host:pdctwhv02.tech.local",
- "platform": "HyperV",
- "size": "N/A"
}, - "datastore": {
- "allocateRequiredDiskSpace": false,
- "configurationFilesPath": "D:\\Storage\\HyperV",
- "diskMappings": [
- {
- "disk": {
- "uid": "3efc7ca1-cb53-460f-90f8-518253855feb:2278d143-bf7b-414d-ae43-2b59a9aea38b:F5B154F37B7795C558E0521F3C753DFB:070f0e5b-7f69-443b-a34e-59b30b22da6a",
- "name": "appsrv001.vhdx",
- "path": "D:\\Storage\\Hyper-V\\Virtual Hard Disks",
- "size": 4194304
}, - "targetFolder": "D:\\Storage\\HyperV\\Virtual Hard Disks"
}
]
}, - "network": {
- "mappings": [ ]
}, - "target": {
- "vmName": "appsrv001-ir729",
- "preserveUUID": false,
- "registerAsClusterResource": false
}, - "type": "Customized",
- "restorePointId": "070f0e5b-7f69-443b-a34e-59b30b22da6a",
- "secureRestore": {
- "virusDetectionAction": "Ignore",
- "antivirusScanEnabled": false,
- "entireVolumeScanEnabled": false
}, - "powerUp": true,
- "reason": "Checking the VM"
}, - "vmName": "appsrv001-ir729",
- "jobName": "Backup Job 1 - appsrv001",
- "restorePointDate": "2025-07-29T13:25:32.973718",
- "hostName": "pdctwhv02.tech.local"
}
], - "pagination": {
- "total": 1,
- "count": 1,
- "skip": 0,
- "limit": 200
}
}Start Instant Recovery to Microsoft Hyper-V
The HTTP POST request to the /api/v1/restore/instantRecovery/hyperV/vm endpoint starts Instant Recovery to Microsoft Hyper-V. You can recover a VM from the specified restore point to the original location with initial VM settings, or to any location but with different settings.
You can also instantly recover backups of other platforms (for example, Veeam Agent backups or backups of other hypervisors) to Microsoft Hyper-V. To do this, use the OtherPlatform type and specify the target Microsoft Hyper-V location in the destinationHost property.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
| restorePointId required | string <uuid> ID of the restore point. | ||||||
| type required | string (EInstantVMRecoveryModeType) Instant Recovery restore mode.
| ||||||
object (SecureRestoreSpec) Secure restore settings. | |||||||
| powerUp | boolean If | ||||||
| reason | string Reason for restoring the VM. | ||||||
| shareCredentialsId | string <uuid> Credentials to network share the restorePoint is located on. If needed. |
An InstantRecovery session has been started to start Instant Recovery. To check the progress, track the session state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "type": "OriginalLocation",
- "restorePointId": "070f0e5b-7f69-443b-a34e-59b30b22da6a",
- "secureRestore": {
- "virusDetectionAction": "Ignore",
- "antivirusScanEnabled": false,
- "entireVolumeScanEnabled": false
}, - "powerUp": true,
- "reason": "Recovery to previous state"
}- 201
- 400
- 401
- 403
- 404
- 500
{- "sessionType": "InstantRecovery",
- "state": "Working",
- "id": "2e0bf225-91b3-4005-8524-6f7971e9ac4f",
- "name": "apache05",
- "jobId": "9239c712-3c0e-49e9-ae4d-c9c6267504e0",
- "creationTime": "2024-03-07T19:31:23.07555+01:00",
- "endTime": "2024-03-07T19:35:45.12345+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "<StateXml/>",
- "isCanceled": false
}, - "resourceId": "2e0bf225-91b3-4005-8524-6f7971e9ac4f",
- "resourceReference": "/api/v1/restore/instantRecovery/vmware/vm/2e0bf225-91b3-4005-8524-6f7971e9ac4f",
- "usn": 0
}Get Mount Point for Instant Recovery to Microsoft Hyper-V
The HTTP GET request to the /api/v1/restore/instantRecovery/hyperV/vm/{mountId} endpoint gets an Instant Recovery mount point that has the specified mountID.
Available to: Backup Administrator, Backup Operator, Restore Operator, Backup Viewer, Security Administrator. Also available to custom roles that have backup or restore permissions.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All Mount Points for Instant Recovery to Microsoft Hyper-V request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
OK
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 401
- 403
- 404
- 500
{- "state": "Mounted",
- "id": "76683fbf-9cc0-4766-a169-f01918fdaa60",
- "sessionId": "76683fbf-9cc0-4766-a169-f01918fdaa60",
- "spec": {
- "destinationHost": {
- "type": "Host",
- "hostName": "pdctwhv02.tech.local",
- "name": "pdctwhv02.tech.local",
- "objectId": "a51b5e5e-4487-4c5b-87c0-f25fe1c7cf73",
- "urn": "Host:pdctwhv02.tech.local",
- "platform": "HyperV",
- "size": "N/A"
}, - "datastore": {
- "allocateRequiredDiskSpace": false,
- "configurationFilesPath": "D:\\Storage\\HyperV",
- "diskMappings": [
- {
- "disk": {
- "uid": "3efc7ca1-cb53-460f-90f8-518253855feb:2278d143-bf7b-414d-ae43-2b59a9aea38b:F5B154F37B7795C558E0521F3C753DFB:070f0e5b-7f69-443b-a34e-59b30b22da6a",
- "name": "appsrv001.vhdx",
- "path": "D:\\Storage\\Hyper-V\\Virtual Hard Disks",
- "size": 4194304
}, - "targetFolder": "D:\\Storage\\HyperV\\Virtual Hard Disks"
}
]
}, - "network": {
- "mappings": [ ]
}, - "target": {
- "vmName": "appsrv001-ir729",
- "preserveUUID": false,
- "registerAsClusterResource": false
}, - "type": "Customized",
- "restorePointId": "070f0e5b-7f69-443b-a34e-59b30b22da6a",
- "secureRestore": {
- "virusDetectionAction": "Ignore",
- "antivirusScanEnabled": false,
- "entireVolumeScanEnabled": false
}, - "powerUp": true,
- "reason": "Checking the VM"
}, - "vmName": "appsrv001-ir729",
- "jobName": "Backup Job 1 - appsrv001",
- "restorePointDate": "2025-07-29T13:25:32.973718",
- "hostName": "pdctwhv02.tech.local"
}Stop Publishing Machine to Microsoft Hyper-V
The HTTP POST request to the /api/v1/restore/instantRecovery/hyperV/vm/{mountId}/unmount endpoint stops publishing the recovered machine and removes it from the destination host.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All Mount Points for Instant Recovery to Microsoft Hyper-V request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
An InstantRecovery session has been started to stop publishing the VM. To check the progress, track the session state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 400
- 401
- 403
- 404
- 500
{- "sessionType": "InstantRecovery",
- "state": "Working",
- "id": "2e0bf225-91b3-4005-8524-6f7971e9ac4f",
- "name": "apache05",
- "jobId": "9239c712-3c0e-49e9-ae4d-c9c6267504e0",
- "creationTime": "2024-03-07T19:31:23.07555+01:00",
- "endTime": "2024-03-07T19:35:45.12345+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "<StateXml/>",
- "isCanceled": false
}, - "resourceId": "2e0bf225-91b3-4005-8524-6f7971e9ac4f",
- "resourceReference": "/api/v1/restore/instantRecovery/vmware/vm/2e0bf225-91b3-4005-8524-6f7971e9ac4f",
- "usn": 0
}Start Migrating Machine to Microsoft Hyper-V
The HTTP POST request to the /api/v1/restore/instantRecovery/hyperV/vm/{mountId}/migrate endpoint starts migrating the machine for which you have started Instant Recovery, using the specified mount point.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All Mount Points for Instant Recovery to Microsoft Hyper-V request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
VM has been migrated to production.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 400
- 401
- 403
- 404
- 500
{- "errorCode": "UnexpectedContent",
- "message": "One or more request parameters are not valid."
}Get All Mount Points for Instant Recovery to Microsoft Azure
The HTTP GET request to the /api/v1/restore/instantRecovery/azure/vm endpoint gets an array of Instant Recovery mount points of Microsoft Azure VMs.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
query Parameters
| skip | integer <int32> Number of mounts to skip. |
| limit | integer <int32> Default: 200 Maximum number of mounts to return. |
| orderColumn | string (EAzureInstantVMRecoveryMountsFiltersOrderColumn) Sorts mounts by one of the mount parameters. |
| orderAsc | boolean Sorts mounts in ascending order by the |
| stateFilter | string (EAzureInstantRecoveryMountState) Filters mounts by mount state. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
OK
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 401
- 403
- 404
- 500
{- "data": [
- {
- "state": "Stopped",
- "id": "4e920162-6c42-4483-9b7a-768ed40d31fe",
- "spec": {
- "restorePointId": "4c544307-6e30-4259-98dd-9d2a0533c7fd",
- "subscription": {
- "subscriptionId": "8f7d2c50-86e0-4b7d-bf02-9ee1e0a9a123",
- "location": "westeurope"
}, - "name": {
- "name": "srv81",
- "tags": [
- {
- "name": "owner",
- "value": "Michael Wells"
}
]
}, - "vmSize": {
- "instanceSize": "Standard_F4s_v2",
- "disks": [
- {
- "diskType": "PremiumSSD",
- "diskUid": "73d19634-f4dd-43a8-a30c-3e52bcc709ea:a29e33d4-acca-4a79-91ed-08ffe36cf67e:2000:2877f843-50f0-4bc1-813c-5b5900e40649",
- "include": true
}
]
}, - "resourceGroup": {
- "resourceGroup": "rg-alpha123"
}, - "network": {
- "network": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we",
- "subnet": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we/subnets/default",
- "networkSecurityGroup": {
- "mode": "Existing",
- "id": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/networkSecurityGroups/twnsg01we"
}, - "assignPublicIp": true
}, - "appliance": {
- "subnet": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we/subnets/ir2azappliances",
- "storageAccount": "mystorageacct123"
}, - "reason": "Restoring data",
- "verifyVMBoot": true
}, - "errorMessage": ""
}, - {
- "state": "Ready",
- "id": "3781bbcc-60d7-43a1-a356-fbb9f9ccec6a",
- "spec": {
- "restorePointId": "be6e2a88-1d7d-46cc-b375-616c632ab8df",
- "subscription": {
- "subscriptionId": "f98b1d90-4c66-4b89-95e4-6c7a6c2e9123",
- "location": "westeurope"
}, - "name": {
- "name": "srv21",
- "tags": [
- {
- "name": "owner",
- "value": "Sheila D. Cory"
}
]
}, - "vmSize": {
- "instanceSize": "Standard_F4s_v2",
- "disks": [
- {
- "diskType": "PremiumSSD",
- "diskUid": "f92a51e3-d235-466f-af20-1ca92dd4cc2b:bfd08896-3ad1-4230-87ea-761c4e088793:2000:cad11c9a-9746-479a-9b4c-f336732ffc20",
- "include": true
}
]
}, - "resourceGroup": {
- "resourceGroup": "rg-sigma789"
}, - "network": {
- "network": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we",
- "subnet": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we/subnets/default",
- "networkSecurityGroup": {
- "mode": "DoNotAssign"
}, - "assignPublicIp": false
}, - "appliance": {
- "subnet": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we/subnets/default",
- "storageAccount": "demostoracct456"
}, - "reason": "Started at 7/12/2025 1:36:21 PM",
- "verifyVMBoot": false
}, - "errorMessage": ""
}
], - "pagination": {
- "total": 2,
- "count": 2
}
}Start Instant Recovery to Microsoft Azure
The HTTP POST request to the /api/v1/restore/instantRecovery/azure/vm endpoint starts Instant Recovery of a Linux or Microsoft Windows machine to Microsoft Azure.
Deploying a helper appliance template with REST API is not supported in this version. Before you run this request, you must deploy a helper appliance template in the Veeam Backup & Replication UI or with the
Deploy-VBRAzureApplianceTemplate cmdlet.To get the values required in the request body, run the following requests:
- Run the Get All Restore Points request to get the
RestorePointIdproperty value. - Run the Get Restore Point Disks request to get the
diskUidproperty value. - Run the Get All Cloud Credentials request to get the
subscriptionIdproperty value. Use the ID that Veeam Backup & Replication assigned to the Microsoft Azure subscription. You can find this ID in thedata[x].subscription.subscriptions[y].idproperty, wherexandyare the ordinal numbers of the objects in the arrays. - Run the Get Cloud Hierarchy request to get the values for the remaining required properties.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
| restorePointId required | string <uuid> Restore point ID. To get the ID, run the Get All Restore Points request. |
required | object (AzureComputeSubscriptionModel) Microsoft Azure compute subscription. |
required | object (AzureComputeVMSizeModel) Size settings for Microsoft Azure VM. |
required | object (AzureComputeResourceGroupModel) Microsoft Azure resource group. |
required | object (AzureComputeNetworkModel) Microsoft Azure VM network settings. |
required | object (AzureInstantVMRecoveryApplianceModel) Helper appliance for Instant Recovery to Microsoft Azure. |
object (AzureComputeNameModel) Name of Microsoft Azure VM. | |
| reason | string Reason for performing Instant Recovery to Microsoft Azure. |
| verifyVMBoot | boolean If |
Microsoft Azure Instant Recovery mount has been initiated to start Instant Recovery. To check the progress, track the mount state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "restorePointId": "be6e2a88-1d7d-46cc-b375-616c632ab8df",
- "subscription": {
- "subscriptionId": "b874dc1b-36f7-4ade-96cb-c5c977993bcd",
- "location": "westeurope"
}, - "name": {
- "name": "abor-vmware-fedora40-gen2",
- "tags": [
- {
- "name": "owner",
- "value": "Sheila D. Cory"
}
]
}, - "vmSize": {
- "instanceSize": "Standard_F4s_v2",
- "disks": [
- {
- "diskType": "PremiumSSD",
- "diskUid": "f92a51e3-d235-466f-af20-1ca92dd4cc2b:bfd08896-3ad1-4230-87ea-761c4e088793:2000:cad11c9a-9746-479a-9b4c-f336732ffc20",
- "include": true
}
]
}, - "resourceGroup": {
- "resourceGroup": "rg-sigma789"
}, - "network": {
- "network": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we",
- "subnet": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we/subnets/default",
- "networkSecurityGroup": {
- "mode": "CreateNew"
}, - "assignPublicIp": false
}, - "appliance": {
- "subnet": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we/subnets/default",
- "storageAccount": "demostoracct456"
}, - "reason": "Started at 7/12/2025 1:36:21 PM",
- "verifyVMBoot": false
}- 201
- 400
- 401
- 403
- 404
- 500
{- "state": "Starting",
- "id": "4e920162-6c42-4483-9b7a-768ed40d31fe",
- "spec": {
- "restorePointId": "4c544307-6e30-4259-98dd-9d2a0533c7fd",
- "subscription": {
- "subscriptionId": "8f7d2c50-86e0-4b7d-bf02-9ee1e0a9a123",
- "location": "westeurope"
}, - "name": {
- "name": "srv81",
- "tags": [
- {
- "name": "owner",
- "value": "Michael Wells"
}
]
}, - "vmSize": {
- "instanceSize": "Standard_F4s_v2",
- "disks": [
- {
- "diskType": "PremiumSSD",
- "diskUid": "73d19634-f4dd-43a8-a30c-3e52bcc709ea:a29e33d4-acca-4a79-91ed-08ffe36cf67e:2000:2877f843-50f0-4bc1-813c-5b5900e40649",
- "include": true
}
]
}, - "resourceGroup": {
- "resourceGroup": "rg-alpha123"
}, - "network": {
- "network": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we",
- "subnet": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we/subnets/default",
- "networkSecurityGroup": {
- "mode": "Existing",
- "id": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/networkSecurityGroups/twnsg01we"
}, - "assignPublicIp": true
}, - "appliance": {
- "subnet": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we/subnets/ir2azappliances",
- "storageAccount": "mystorageacct123"
}, - "reason": "Restoring data",
- "verifyVMBoot": true
}, - "errorMessage": ""
}Get Mount Point for Instant Recovery to Microsoft Azure
The HTTP GET request to the /api/v1/restore/instantRecovery/azure/vm/{mountId} endpoint gets an Instant Recovery mount point that has the specified mountID.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All Mount Points for Instant Recovery to Microsoft Azure request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
OK
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 401
- 403
- 404
- 500
{- "state": "Starting",
- "id": "4e920162-6c42-4483-9b7a-768ed40d31fe",
- "spec": {
- "restorePointId": "4c544307-6e30-4259-98dd-9d2a0533c7fd",
- "subscription": {
- "subscriptionId": "8f7d2c50-86e0-4b7d-bf02-9ee1e0a9a123",
- "location": "westeurope"
}, - "name": {
- "name": "srv81",
- "tags": [
- {
- "name": "owner",
- "value": "Michael Wells"
}
]
}, - "vmSize": {
- "instanceSize": "Standard_F4s_v2",
- "disks": [
- {
- "diskType": "PremiumSSD",
- "diskUid": "73d19634-f4dd-43a8-a30c-3e52bcc709ea:a29e33d4-acca-4a79-91ed-08ffe36cf67e:2000:2877f843-50f0-4bc1-813c-5b5900e40649",
- "include": true
}
]
}, - "resourceGroup": {
- "resourceGroup": "rg-alpha123"
}, - "network": {
- "network": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we",
- "subnet": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we/subnets/default",
- "networkSecurityGroup": {
- "mode": "Existing",
- "id": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/networkSecurityGroups/twnsg01we"
}, - "assignPublicIp": true
}, - "appliance": {
- "subnet": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we/subnets/ir2azappliances",
- "storageAccount": "mystorageacct123"
}, - "reason": "Restoring data",
- "verifyVMBoot": true
}, - "errorMessage": ""
}Get All Mount Sessions for Instant Recovery to Microsoft Azure
The HTTP GET request to the /api/v1/restore/instantRecovery/azure/vm/{mountId}/sessions endpoint gets an array of Instant Recovery sessions associated with a mount point.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All Mount Points for Instant Recovery to Microsoft Azure request. |
query Parameters
| skip | integer <int32> Number of mount sessions to skip. |
| limit | integer <int32> Default: 200 Maximum number of mount sessions to return. |
| orderColumn | string (ESessionsFiltersOrderColumn) Sorts mounts by one of the mount sessions parameters. |
| orderAsc | boolean Sorts mount sessions in ascending order by the |
| createdAfterFilter | string <date-time> Returns sessions that are created after the specified date and time. |
| createdBeforeFilter | string <date-time> Returns sessions that are created before the specified date and time. |
| endedAfterFilter | string <date-time> Returns sessions that are finished after the specified date and time. |
| endedBeforeFilter | string <date-time> Returns sessions that are finished before the specified date and time. |
| typeFilter | string (ESessionType) Filters sessions by session type. |
| stateFilter | string (ESessionState) Filters sessions by session state. |
| resultFilter | Array of strings (ESessionResult) Filters sessions by session result. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
OK
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 401
- 403
- 404
- 500
{- "data": [
- {
- "sessionType": "AzureInstantRecoveryStop",
- "state": "Stopped",
- "platformName": "WindowsPhysical",
- "id": "e1415a1c-56c4-4f84-87a8-f27e123d0c76",
- "name": "srv81",
- "jobId": "f5e2493a-fbc5-49b8-ba73-afcd0de71df1",
- "creationTime": "2025-07-10T18:01:00.652318+02:00",
- "endTime": "2025-07-10T18:03:43.967965+02:00",
- "progressPercent": 0,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 792529,
- "platformId": "00000000-0000-0000-0000-000000000000",
- "initiatedBy": "WORKGROUP\\TWVBR01$"
}, - {
- "sessionType": "AzureInstantRecoveryMigration",
- "state": "Stopped",
- "platformName": "CustomPlatform",
- "id": "df5de033-056f-41c8-bd90-425363ade8a9",
- "name": "srv81",
- "jobId": "d865f6a3-b4d0-4590-a483-4c9ede1ee1b2",
- "creationTime": "2025-07-10T17:50:53.233945+02:00",
- "endTime": "2025-07-10T17:54:57.34163+02:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 791751,
- "platformId": "89622f35-9e48-424b-9d52-a74dc03b65c2",
- "initiatedBy": ".\\lu01"
}, - {
- "sessionType": "AzureInstantRecoveryStart",
- "state": "Stopped",
- "platformName": "WindowsPhysical",
- "id": "d585f58b-188c-4995-911e-a86a7622ee87",
- "name": "srv81",
- "jobId": "dce11f11-83d0-4401-8a94-57304a67bc4d",
- "creationTime": "2025-07-10T17:10:09.505405+02:00",
- "endTime": "2025-07-10T17:15:52.060986+02:00",
- "progressPercent": 0,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 789547,
- "platformId": "00000000-0000-0000-0000-000000000000",
- "initiatedBy": ".\\lu01"
}
], - "pagination": {
- "total": 3,
- "count": 3
}
}Stop Publishing Machine to Microsoft Azure
The HTTP POST request to the /api/v1/restore/instantRecovery/azure/vm/{mountId}/unmount endpoint stops publishing the recovered VM and removes it from the destination host.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All Mount Points for Instant Recovery to Microsoft Azure request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
An AzureInstantRecoveryStop session has been started to stop publishing the VM. To check the progress, track the mount state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 201
- 400
- 401
- 403
- 404
- 500
{- "state": "Starting",
- "id": "4e920162-6c42-4483-9b7a-768ed40d31fe",
- "spec": {
- "restorePointId": "4c544307-6e30-4259-98dd-9d2a0533c7fd",
- "subscription": {
- "subscriptionId": "8f7d2c50-86e0-4b7d-bf02-9ee1e0a9a123",
- "location": "westeurope"
}, - "name": {
- "name": "srv81",
- "tags": [
- {
- "name": "owner",
- "value": "Michael Wells"
}
]
}, - "vmSize": {
- "instanceSize": "Standard_F4s_v2",
- "disks": [
- {
- "diskType": "PremiumSSD",
- "diskUid": "73d19634-f4dd-43a8-a30c-3e52bcc709ea:a29e33d4-acca-4a79-91ed-08ffe36cf67e:2000:2877f843-50f0-4bc1-813c-5b5900e40649",
- "include": true
}
]
}, - "resourceGroup": {
- "resourceGroup": "rg-alpha123"
}, - "network": {
- "network": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we",
- "subnet": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we/subnets/default",
- "networkSecurityGroup": {
- "mode": "Existing",
- "id": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/networkSecurityGroups/twnsg01we"
}, - "assignPublicIp": true
}, - "appliance": {
- "subnet": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we/subnets/ir2azappliances",
- "storageAccount": "mystorageacct123"
}, - "reason": "Restoring data",
- "verifyVMBoot": true
}, - "errorMessage": ""
}Start Migrating Machine to Microsoft Azure
The HTTP POST request to the /api/v1/restore/instantRecovery/azure/vm/{mountId}/migrate endpoint starts VM migration from the specified Instant Recovery mount point.
Available to: Backup Administrator.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All Mount Points for Instant Recovery to Microsoft Azure request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
object (AzureInstantVMRecoverySwitchoverSettingsModel) Switchover settings for Instant Recovery to Microsoft Azure. |
An AzureInstantRecoveryMigration session has been started to migrate the VM. To check the progress, track the mount state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "switchoverSettings": {
- "type": "Manual",
- "verifyVMBoot": true,
- "powerOnVM": true
}
}- 201
- 400
- 401
- 403
- 404
- 500
{- "state": "Starting",
- "id": "4e920162-6c42-4483-9b7a-768ed40d31fe",
- "spec": {
- "restorePointId": "4c544307-6e30-4259-98dd-9d2a0533c7fd",
- "subscription": {
- "subscriptionId": "8f7d2c50-86e0-4b7d-bf02-9ee1e0a9a123",
- "location": "westeurope"
}, - "name": {
- "name": "srv81",
- "tags": [
- {
- "name": "owner",
- "value": "Michael Wells"
}
]
}, - "vmSize": {
- "instanceSize": "Standard_F4s_v2",
- "disks": [
- {
- "diskType": "PremiumSSD",
- "diskUid": "73d19634-f4dd-43a8-a30c-3e52bcc709ea:a29e33d4-acca-4a79-91ed-08ffe36cf67e:2000:2877f843-50f0-4bc1-813c-5b5900e40649",
- "include": true
}
]
}, - "resourceGroup": {
- "resourceGroup": "rg-alpha123"
}, - "network": {
- "network": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we",
- "subnet": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we/subnets/default",
- "networkSecurityGroup": {
- "mode": "Existing",
- "id": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/networkSecurityGroups/twnsg01we"
}, - "assignPublicIp": true
}, - "appliance": {
- "subnet": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we/subnets/ir2azappliances",
- "storageAccount": "mystorageacct123"
}, - "reason": "Restoring data",
- "verifyVMBoot": true
}, - "errorMessage": ""
}Get Settings for Switchover to Microsoft Azure
The HTTP GET request to the /api/v1/restore/instantRecovery/azure/vm/{mountId}/switchoverSettings endpoint gets switchover settings for an Instant Recovery mount point that has the specified mountID.
Available to: Backup Administrator.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All Mount Points for Instant Recovery to Microsoft Azure request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
OK
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 401
- 403
- 404
- 500
{- "type": "Scheduled",
- "scheduleTime": "2025-08-24T14:15:22Z",
- "verifyVMBoot": false,
- "powerOnVM": true
}Update Settings for Switchover to Microsoft Azure
The HTTP PUT request to the /api/v1/restore/instantRecovery/azure/vm/{mountId}/switchoverSettings endpoint modifies switchover settings for an Instant Recovery mount point that has the specified mountID.
Available to: Backup Administrator.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All Mount Points for Instant Recovery to Microsoft Azure request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/json
| type required | string (EAzureInstantVMRecoverySwitchoverType) Switchover type. |
| scheduleTime | string <date-time> Date and time when switchover will be triggered. |
| verifyVMBoot | boolean If |
| powerOnVM | boolean If |
The switchover settings have been updated.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "type": "Scheduled",
- "scheduleTime": "2025-08-24T14:15:22Z",
- "verifyVMBoot": false,
- "powerOnVM": true
}- 201
- 401
- 403
- 404
- 500
{- "type": "Scheduled",
- "scheduleTime": "2025-08-24T14:15:22Z",
- "verifyVMBoot": false,
- "powerOnVM": true
}Start Switchover to Microsoft Azure
The HTTP POST request to the /api/v1/restore/instantRecovery/azure/vm/{mountId}/switchover endpoint starts switchover for a mount point that has the specified mountID.
Available to: Backup Administrator.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All Mount Points for Instant Recovery to Microsoft Azure request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
An AzureInstantRecoverySwitchover session has been started to initiate a VM switchover. To check the progress, track the mount state.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 201
- 401
- 403
- 404
- 500
{- "state": "Starting",
- "id": "4e920162-6c42-4483-9b7a-768ed40d31fe",
- "spec": {
- "restorePointId": "4c544307-6e30-4259-98dd-9d2a0533c7fd",
- "subscription": {
- "subscriptionId": "8f7d2c50-86e0-4b7d-bf02-9ee1e0a9a123",
- "location": "westeurope"
}, - "name": {
- "name": "srv81",
- "tags": [
- {
- "name": "owner",
- "value": "Michael Wells"
}
]
}, - "vmSize": {
- "instanceSize": "Standard_F4s_v2",
- "disks": [
- {
- "diskType": "PremiumSSD",
- "diskUid": "73d19634-f4dd-43a8-a30c-3e52bcc709ea:a29e33d4-acca-4a79-91ed-08ffe36cf67e:2000:2877f843-50f0-4bc1-813c-5b5900e40649",
- "include": true
}
]
}, - "resourceGroup": {
- "resourceGroup": "rg-alpha123"
}, - "network": {
- "network": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we",
- "subnet": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we/subnets/default",
- "networkSecurityGroup": {
- "mode": "Existing",
- "id": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/networkSecurityGroups/twnsg01we"
}, - "assignPublicIp": true
}, - "appliance": {
- "subnet": "/subscriptions/7cc1ad71-e285-4c90-b6a6-8d9b7a0a1986/resourceGroups/tw-ir2az-infra-rg01/providers/Microsoft.Network/virtualNetworks/twvnet01we/subnets/ir2azappliances",
- "storageAccount": "mystorageacct123"
}, - "reason": "Restoring data",
- "verifyVMBoot": true
}, - "errorMessage": ""
}Restore Entire VMware vSphere VM
The HTTP POST request to the /api/v1/restore/vmRestore/vSphere endpoint performs entire VM restore of a VMware vSphere VM to VMware vSphere. You can restore a VM from the specified restore point to the original location with initial VM settings, or to any location but with different settings.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
| restorePointId required | string <uuid> ID of the restore point. | ||||||
| type required | string (EEntireVMRestoreModeType) Entire VM restore mode.
| ||||||
object (RestoreProxySpec) Backup proxies for VM data transport. | |||||||
object (SecureRestoreSpec) Secure restore settings. | |||||||
| powerUp | boolean If | ||||||
| reason | string Reason for restoring the VM. | ||||||
| overwrite | boolean If | ||||||
| quickRollback | boolean If |
Restore session has been created. To check the progress, track the session state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "restorePointId": "0899c74d-53f0-413a-a731-e1e7297285ba",
- "type": "OriginalLocation",
- "restoreProxies": {
- "autoSelectEnabled": true
}, - "secureRestore": {
- "antivirusScanEnabled": true,
- "virusDetectionAction": "DisableNetwork",
- "entireVolumeScanEnabled": true
}, - "powerUp": true,
- "reason": "Corruption of the VM",
- "overwrite": true,
- "quickRollback": true
}- 201
- 400
- 401
- 403
- 404
- 500
{- "sessionType": "ConfigurationBackup",
- "state": "Stopped",
- "id": "f848e90c-7f37-4ff5-9d55-04e33f8a4de3",
- "name": "Backup Configuration Job",
- "jobId": "99d1bf3d-e2e0-4bec-b2b3-820c0b87d212",
- "creationTime": "2023-11-08T10:00:12.56+01:00",
- "endTime": "2023-11-08T10:00:34.017+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 0,
- "platformName": "VMware",
- "platformId": "00000000-0000-0000-0000-000000000000"
}Restore Entire VMware Cloud Director VM
The HTTP POST request to the /api/v1/restore/vmRestore/cloudDirector endpoint performs entire VM restore of a VMware Cloud Director VM to VMware Cloud Director. You can restore a VM from the specified restore point to the original location with initial VM settings, or to any location but with different settings.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
| restorePointId required | string <uuid> ID of the restore point. | ||||||
| type required | string (EEntireVMRestoreModeType) Entire VM restore mode.
| ||||||
object (RestoreProxySpec) Backup proxies for VM data transport. | |||||||
object (SecureRestoreSpec) Secure restore settings. | |||||||
| powerUp | boolean If | ||||||
| reason | string Reason for restoring the VM. | ||||||
| quickRollback | boolean If |
A RestoreVm session has been created. To check the progress, track the session state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "restorePointId": "5a78f3e1-9c2b-4d6e-8f10-2a3b4c5d6e7f",
- "type": "OriginalLocation",
- "restoreProxies": {
- "autoSelectEnabled": true
}, - "secureRestore": {
- "antivirusScanEnabled": true,
- "virusDetectionAction": "DisableNetwork",
- "entireVolumeScanEnabled": true
}, - "powerUp": true,
- "reason": "Corruption of the VM",
- "quickRollback": true
}- 201
- 400
- 401
- 403
- 404
- 500
{- "sessionType": "ConfigurationBackup",
- "state": "Stopped",
- "id": "f848e90c-7f37-4ff5-9d55-04e33f8a4de3",
- "name": "Backup Configuration Job",
- "jobId": "99d1bf3d-e2e0-4bec-b2b3-820c0b87d212",
- "creationTime": "2023-11-08T10:00:12.56+01:00",
- "endTime": "2023-11-08T10:00:34.017+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 0,
- "platformName": "VMware",
- "platformId": "00000000-0000-0000-0000-000000000000"
}Restore Entire Microsoft Hyper-V VM
The HTTP POST request to the /api/v1/restore/vmRestore/hyperV endpoint performs entire VM restore of a Microsoft Hyper-V VM to Microsoft Hyper-V. You can restore a VM from the specified restore point to the original location with initial VM settings, or to any location but with different settings.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
| restorePointId required | string <uuid> ID of the restore point. | ||||||
| type required | string (EEntireVMRestoreModeType) Entire VM restore mode.
| ||||||
object (SecureRestoreSpec) Secure restore settings. | |||||||
| powerUp | boolean If | ||||||
| reason | string Reason for restoring the VM. | ||||||
| quickRollback | boolean If |
Restore session has been created. To check the progress, track the session state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "restorePointId": "0899c74d-53f0-413a-a731-e1e7297285ba",
- "type": "OriginalLocation",
- "secureRestore": {
- "antivirusScanEnabled": true,
- "virusDetectionAction": "DisableNetwork",
- "entireVolumeScanEnabled": true
}, - "powerUp": true,
- "reason": "Corruption of the VM",
- "quickRollback": true
}- 201
- 400
- 401
- 403
- 404
- 500
{- "sessionType": "ConfigurationBackup",
- "state": "Stopped",
- "id": "f848e90c-7f37-4ff5-9d55-04e33f8a4de3",
- "name": "Backup Configuration Job",
- "jobId": "99d1bf3d-e2e0-4bec-b2b3-820c0b87d212",
- "creationTime": "2023-11-08T10:00:12.56+01:00",
- "endTime": "2023-11-08T10:00:34.017+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 0,
- "platformName": "VMware",
- "platformId": "00000000-0000-0000-0000-000000000000"
}Get All FCD Mount Points
The HTTP GET request to the /api/v1/restore/instantRecovery/vSphere/fcd endpoint gets an array of FCD mount points.
Available to: Backup Administrator, Backup Operator, Restore Operator, Backup Viewer. Also available to custom roles that have backup or restore permissions.
query Parameters
| skip | integer <int32> Number of mount points to skip. |
| limit | integer <int32> Default: 200 Maximum number of mount points to return. |
| orderColumn | string (EVmwareFcdInstantRecoveryMountsFiltersOrderColumn) Sorts mount points by one of the mount point parameters. |
| orderAsc | boolean If |
| stateFilter | string (EInstantRecoveryMountState) Filters mount points by mount point state. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
OK
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 401
- 403
- 404
- 500
{- "data": [
- {
- "id": "f1a2b3c4-d5e6-7890-abcd-ef1234567890",
- "sessionId": "b7e1c2d3-4a5f-6789-abcd-ef0123456789",
- "state": "Mounted",
- "spec": {
- "restorePointId": "0899c74d-53f0-413a-a731-e1e7297285ba",
- "destinationCluster": {
- "type": "Cluster",
- "platform": "VSphere",
- "hostName": "vcenter01.tech.local",
- "name": "Production-Cluster",
- "objectId": "domain-c7",
- "urn": "ClusterComputeResource:domain-c7"
}, - "disksMapping": [
- {
- "nameInBackup": "disk-2000.vmdk",
- "mountedDiskName": "appsrv001-data",
- "registeredFcdName": "appsrv001-data-restored"
}
]
}, - "mountedDisks": [
- {
- "nameInBackup": "disk-2000.vmdk",
- "mountedDiskName": "appsrv001-data",
- "registeredFcdName": "appsrv001-data-restored",
- "objectId": "vstorageObject-1234"
}
]
}
], - "pagination": {
- "total": 2,
- "count": 2,
- "skip": 0,
- "limit": 100
}
}Start Instant FCD Recovery
The HTTP POST request to the /api/v1/restore/instantRecovery/vSphere/fcd endpoint starts Instant FCD Recovery from the restore point to the destination cluster.
Specify the destination cluster in the destinationCluster parameter of the request body as a model of the VMware vSphere object. For details on how to get the cluster model, see Get Inventory Objects.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
| restorePointId required | string <uuid> ID of the restore point. |
required | object (InventoryObjectModel) Inventory object properties. |
required | Array of objects (VmwareFcdInstantRecoveryDiskSpec) Array of disks for restore. |
object (VmwareFcdWriteCacheSpec) Write cache for recovered disks. | |
| reason | string Reason for restoring the FCD. |
Instant FCD Recovery has been started. To check the progress, track the session state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "restorePointId": "0899c74d-53f0-413a-a731-e1e7297285ba",
- "destinationCluster": {
- "type": "Cluster",
- "platform": "VSphere",
- "hostName": "vcenter01.tech.local",
- "name": "Production-Cluster",
- "objectId": "domain-c7",
- "urn": "ClusterComputeResource:domain-c7"
}, - "disksMapping": [
- {
- "nameInBackup": "disk-2000.vmdk",
- "mountedDiskName": "appsrv001-data",
- "registeredFcdName": "appsrv001-data-restored"
}
], - "writeCache": {
- "redirectIsEnabled": true,
- "cacheDatastore": {
- "type": "Datacenter",
- "platform": "VSphere",
- "hostName": "vcenter01.tech.local",
- "name": "cache-datastore",
- "objectId": "datastore-15",
- "urn": "Datastore:datastore-15"
}
}, - "reason": "Instant recovery of a corrupted disk"
}- 201
- 400
- 401
- 403
- 404
- 500
{- "sessionType": "ConfigurationBackup",
- "state": "Stopped",
- "id": "f848e90c-7f37-4ff5-9d55-04e33f8a4de3",
- "name": "Backup Configuration Job",
- "jobId": "99d1bf3d-e2e0-4bec-b2b3-820c0b87d212",
- "creationTime": "2023-11-08T10:00:12.56+01:00",
- "endTime": "2023-11-08T10:00:34.017+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 0,
- "platformName": "VMware",
- "platformId": "00000000-0000-0000-0000-000000000000"
}Get FCD Mount Point
The HTTP GET request to the /api/v1/restore/instantRecovery/vSphere/fcd/{mountId} endpoint gets information about the mounted vPower NFS datastore, such as restore session ID, mount point state, instant FCD recovery settings and disks that will be recovered.
Available to: Backup Administrator, Backup Operator, Restore Operator, Backup Viewer. Also available to custom roles that have backup or restore permissions.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All FCD Mount Points request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
OK
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 401
- 403
- 404
- 500
{- "id": "f1a2b3c4-d5e6-7890-abcd-ef1234567890",
- "sessionId": "b7e1c2d3-4a5f-6789-abcd-ef0123456789",
- "state": "Mounted",
- "spec": {
- "restorePointId": "0899c74d-53f0-413a-a731-e1e7297285ba",
- "destinationCluster": {
- "type": "Cluster",
- "platform": "VSphere",
- "hostName": "vcenter01.tech.local",
- "name": "Production-Cluster",
- "objectId": "domain-c7",
- "urn": "ClusterComputeResource:domain-c7"
}, - "disksMapping": [
- {
- "nameInBackup": "disk-2000.vmdk",
- "mountedDiskName": "appsrv001-data",
- "registeredFcdName": "appsrv001-data-restored"
}
]
}, - "mountedDisks": [
- {
- "nameInBackup": "disk-2000.vmdk",
- "mountedDiskName": "appsrv001-data",
- "registeredFcdName": "appsrv001-data-restored",
- "objectId": "vstorageObject-1234"
}
]
}Stop FCD Publishing
The HTTP POST request to the /api/v1/restore/instantRecovery/vSphere/fcd/{mountId}/dismount endpoint stops publishing the recovered FCDs and removes the disks from the datastore.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All FCD Mount Points request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
The disks have been unmounted. To check the progress, track the session state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 400
- 401
- 403
- 404
- 500
{- "sessionType": "ConfigurationBackup",
- "state": "Stopped",
- "id": "f848e90c-7f37-4ff5-9d55-04e33f8a4de3",
- "name": "Backup Configuration Job",
- "jobId": "99d1bf3d-e2e0-4bec-b2b3-820c0b87d212",
- "creationTime": "2023-11-08T10:00:12.56+01:00",
- "endTime": "2023-11-08T10:00:34.017+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 0,
- "platformName": "VMware",
- "platformId": "00000000-0000-0000-0000-000000000000"
}Start FCD Migration
The HTTP POST request to the /api/v1/restore/instantRecovery/vSphere/fcd/{mountId}/migrate endpoint starts migration of FCDs from the specified mount point.
In the request body, specify FCD migration configuration:
- Disks for migration
- Target datastore
- Storage policy that will be applied to the migrated disks
Available to: Backup Administrator.
path Parameters
| mountId required | string <uuid> Mount point ID. To get the ID, run the Get All FCD Mount Points request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
required | object (InventoryObjectModel) Inventory object properties. |
| mountedDiskNames | Array of strings Array of disks that will be migrated to the |
object (InventoryObjectModel) Inventory object properties. |
FCD Migration has been started. To check the progress, track the session state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "mountedDiskNames": [
- "appsrv001-data"
], - "targetDatastore": {
- "type": "Datacenter",
- "platform": "VSphere",
- "hostName": "vcenter01.tech.local",
- "name": "production-datastore",
- "objectId": "datastore-21",
- "urn": "Datastore:datastore-21"
}, - "storagePolicy": {
- "type": "StoragePolicy",
- "platform": "VSphere",
- "hostName": "vcenter01.tech.local",
- "name": "vSAN Default Storage Policy",
- "objectId": "storagePolicy-1",
- "urn": "StoragePolicy:storagePolicy-1"
}
}- 200
- 400
- 401
- 403
- 404
- 500
{- "sessionType": "ConfigurationBackup",
- "state": "Stopped",
- "id": "f848e90c-7f37-4ff5-9d55-04e33f8a4de3",
- "name": "Backup Configuration Job",
- "jobId": "99d1bf3d-e2e0-4bec-b2b3-820c0b87d212",
- "creationTime": "2023-11-08T10:00:12.56+01:00",
- "endTime": "2023-11-08T10:00:34.017+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 0,
- "platformName": "VMware",
- "platformId": "00000000-0000-0000-0000-000000000000"
}Start File Restore
The HTTP POST request to the /api/v1/restore/flr endpoint starts file restore from a backup or replica of a Microsoft Windows or Linux machine. The operation starts a file restore session and mounts the machine file system to a mount point.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
| restorePointId required | string <uuid> ID of the restore point from which you want to restore files. |
| type required | string (EFlrType) Restore type. |
required | object (FlrAutoUnmountModel) Settings for automatic unmount of the file system. |
| mountMode required | string (EFlrMountModeType) Mount mode. |
| reason | string Reason for restoring files. |
| credentialsId | string <uuid> ID of the credentials record used to connect to the source machine. The credentials will be used to compare files of the backup and the source machine. |
object (WindowsFlrMountServerSettings) Mount server settings for file restore from Microsoft Windows machines. Specify these mount server settings if the |
File system has been mounted.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "restorePointId": "5777a78d-62f6-40a3-a7e3-8b56a56e58c0",
- "type": "Linux",
- "autoUnmount": {
- "isEnabled": true,
- "noActivityPeriodInMinutes": 5
}, - "reason": "File restore",
- "mountMode": "Manual",
- "mountServer": {
- "mountServerType": "MountServer",
- "mountServerId": "6d2dfee6-7a76-4ccf-933c-d32a60a1b1c1"
}
}- 201
- 400
- 401
- 403
- 500
{- "type": "Linux",
- "sessionId": "1dc723e8-12a0-4480-bc34-6cb117d3d4a1",
- "restorePointId": "ab3361d3-df80-474d-b23f-ea9a498b9e8c",
- "mountErrors": [ ],
- "properties": {
- "pathSeparator": "/"
}, - "sourceProperties": {
- "machineName": "ubuntu88",
- "restorePointName": "ubuntu88"
}
}Unmount File System
The HTTP POST request to the /api/v1/restore/flr/{sessionId}/unmount endpoint unmounts the file system from a mount point and stops a file restore session that has the specified sessionId.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
path Parameters
| sessionId required | string <uuid> Restore session ID. To get the ID, run the Get All File Restore Mount Points request. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Restore session has been stopped.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 201
- 401
- 403
- 404
- 500
{- "sessionType": "ConfigurationBackup",
- "state": "Stopped",
- "id": "f848e90c-7f37-4ff5-9d55-04e33f8a4de3",
- "name": "Backup Configuration Job",
- "jobId": "99d1bf3d-e2e0-4bec-b2b3-820c0b87d212",
- "creationTime": "2023-11-08T10:00:12.56+01:00",
- "endTime": "2023-11-08T10:00:34.017+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 0,
- "platformName": "VMware",
- "platformId": "00000000-0000-0000-0000-000000000000"
}Get User Code for Delegated Restore of Microsoft Entra ID Items
The HTTP POST request to the /api/v1/restore/entraId/tenant/deviceCode endpoint obtains a user code required to get credentials for delegated restore of Microsoft Entra ID items.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
| sessionId required | string <uuid> Mount session ID. |
User and device codes have been received.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "sessionId": "b7e1c2d3-4a5f-6789-abcd-ef0123456789"
}- 201
- 400
- 401
- 403
- 500
{- "userCode": "A1B2C3D4E",
- "deviceCode": "GmRhmhcxhwAzkoEqiMEg_DnyEysRdbN6xY7L8Hk0e8j",
- "message": "To sign in, use a web browser to open the page https://microsoft.com/devicelogin and enter the code 000000000 to authenticate.",
- "clientId": "9f8e7d6c-5b4a-3210-fedc-ba9876543210",
- "expiresOn": "2026-06-19T10:45:00Z"
}Get Credentials for Delegated Restore of Microsoft Entra ID Items
The HTTP POST request to the /api/v1/restore/entraId/tenant/deviceCode/state endpoint gets credentials that are required for delegated restore of Microsoft Entra ID items. Before you request the credentials, obtain a user code using the Get User Code for Delegated Restore of Microsoft Entra ID Items request.
You can use the credentials in the following requests:
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
| sessionId required | string <uuid> Mount session ID. |
| userCode required | string User code. To get the code, run the Get User Code for Delegated Restore of Microsoft Entra ID Items request. |
OK
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "sessionId": "b7e1c2d3-4a5f-6789-abcd-ef0123456789",
- "userCode": "A1B2C3D4E"
}- 200
- 400
- 401
- 403
- 500
{- "credentialsId": "3cd03b37-7685-40d5-a63b-7fec631e2ac9",
- "status": "Success",
- "username": "TECH\\Administrator"
}Get Redirect URI for Delegated Restore of Microsoft Entra ID Items
The HTTP GET request to the /api/v1/restore/entraId/tenant/{sessionId}/authCode/startAuthorization endpoint obtains a redirect URI required to perform authorization code flow for delegated restore of Microsoft Entra ID items.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
"path Parameters
| sessionId required | string <uuid> Mount session ID. |
query Parameters
| vdcSessionId required | string Veeam Data Cloud session ID. |
| redirectUri required | string <uri> Application redirect URI (where code will be redirected to). |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Redirect URI has been generated.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 200
- 400
- 401
- 403
- 500
Perform Authorization Code Exchange for Delegated Restore of Microsoft Entra ID Items
The HTTP POST request to the /api/v1/restore/entraId/tenant/authCode/authorize endpoint performs code exchange part of authorization code flow for delegated restore of Microsoft Entra ID items.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
"header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
| sessionId required | string <uuid> Mount session ID. |
| code | string Authorization code returned by the authorization provider. |
| state | string State string returned by the authorization provider. |
| error | string Error summary. |
| errorDescription | string Error description. |
Authorization code exchange has been successful.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "code": "0.AXcAk2pZ0qhT...authcode...",
- "state": "f3a9b1c2-d4e5-6789-abcd-ef0123456789",
- "sessionId": "b7e1c2d3-4a5f-6789-abcd-ef0123456789"
}- 200
- 400
- 401
- 403
- 500
{- "successful": true,
- "credentialsId": "3cd03b37-7685-40d5-a63b-7fec631e2ac9"
}Mount Microsoft Entra ID Tenant
The HTTP POST request to the /api/v1/restore/entraId/tenant endpoint mounts a Microsoft Entra ID tenant from its backup and starts a mount session required for Microsoft Entra ID tenant restore.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
| backupId required | string <uuid> ID of a Microsoft Entra ID tenant backup. |
Tenant has been mounted.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "backupId": "c4d5e6f7-a8b9-0123-4567-89abcdef0123"
}- 201
- 400
- 401
- 403
- 500
{- "sessionId": "783241eb-5b56-4456-9736-379206ffc600",
- "sourceProperties": {
- "backupId": "61a85b62-41a9-4421-aa4f-568e3989fed8",
- "tenantId": "46101a50-1c07-4e11-a249-6dc349fbf909",
- "tenantName": "Tenant 1"
}
}Start Microsoft Entra ID Tenant Restore from Copy
The HTTP POST request to the /api/v1/restore/entraId/tenant/fromCopy endpoint starts restore from backup copy for a Microsoft Entra ID tenant.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
| restorePointId required | string <uuid> ID of a Microsoft Entra ID tenant restore point. |
object (UnstructuredDataColdStorageRetrievalSettings) Settings for retrieving data from cold storage. |
An EntraIdRestoreFromCopy session has been created to start restore from backup copy for a Microsoft Entra ID tenant. To check the progress, track the session state.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "restorePointId": "8c843d10-6d0f-4abe-b898-e1ba18b94f68",
- "coldStorageRetrievalSettings": {
- "coldStorageRetrievalMode": "AmazonBulk",
- "availabilityPeriodDays": 7,
- "sendNotificationMail": true,
- "notificationHours": 24
}
}- 201
- 400
- 401
- 403
- 500
{- "sessionType": "ConfigurationBackup",
- "state": "Stopped",
- "id": "f848e90c-7f37-4ff5-9d55-04e33f8a4de3",
- "name": "Backup Configuration Job",
- "jobId": "99d1bf3d-e2e0-4bec-b2b3-820c0b87d212",
- "creationTime": "2023-11-08T10:00:12.56+01:00",
- "endTime": "2023-11-08T10:00:34.017+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 0,
- "platformName": "VMware",
- "platformId": "00000000-0000-0000-0000-000000000000"
}Unmount Microsoft Entra ID Tenant
The HTTP POST request to the /api/v1/restore/entraId/tenant/{sessionId}/stop endpoint unmounts a Microsoft Entra ID tenant and stops a mount session that has the specified sessionId.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
path Parameters
| sessionId required | string <uuid> Mount session ID. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonoptional
| gracefulStop required | boolean Default: true If |
| cancelChainedJobs | boolean Default: false If |
Mount session has been stopped.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "gracefulStop": true,
- "cancelChainedJobs": false
}- 201
- 401
- 403
- 404
- 500
{- "sessionType": "ConfigurationBackup",
- "state": "Stopped",
- "id": "f848e90c-7f37-4ff5-9d55-04e33f8a4de3",
- "name": "Backup Configuration Job",
- "jobId": "99d1bf3d-e2e0-4bec-b2b3-820c0b87d212",
- "creationTime": "2023-11-08T10:00:12.56+01:00",
- "endTime": "2023-11-08T10:00:34.017+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 0,
- "platformName": "VMware",
- "platformId": "00000000-0000-0000-0000-000000000000"
}Start Microsoft Entra ID Audit Log Restore
The HTTP POST request to the /api/v1/restore/entraId/auditLog endpoint starts the Microsoft Entra ID audit log restore from a backup of Microsoft Entra ID audit logs. The operation starts a file restore session and mounts the log files to a mount point.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
| unstructuredDataServerId | string <uuid> Unstructured data server ID. To get the ID, run the Get All Unstructured Data Servers request. If you use this property, do not specify the |
| restorePointId | string <uuid> Restore point ID. To get the ID, run the Get All Restore Points request. If you use this property, do not specify the |
| backupId | string <uuid> Backup ID. To get the ID, run the Get All Backups request. If you use this property, do not specify the |
object (FlrAutoUnmountModel) Settings for automatic unmount of the file system. | |
object (UnstructuredDataColdStorageRetrievalSettings) Settings for retrieving data from cold storage. |
Log files have been mounted.
Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "unstructuredDataServerId": "3cd03b37-7685-40d5-a63b-7fec631e2ac9",
- "backupId": "f0001e05-e072-418d-91b0-528f314b8b8e",
- "autoUnmount": {
- "isEnabled": true,
- "noActivityPeriodInMinutes": 30
}
}- 201
- 400
- 401
- 403
- 500
{- "sessionId": "b7e1c2d3-4a5f-6789-abcd-ef0123456789",
- "properties": {
- "pathSeparator": "/"
}, - "sourceProperties": {
- "backupId": "c4d5e6f7-a8b9-0123-4567-89abcdef0123"
}
}Unmount Microsoft Entra ID Audit Logs
The HTTP POST request to the /api/v1/restore/entraId/auditLog/{sessionId}/unmount endpoint unmounts Microsoft Entra ID log files from a mount point and stops a file restore session that has the specified sessionId.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
path Parameters
| sessionId required | string <uuid> Restore session ID. |
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Restore session has been stopped.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Not found. No object was found with the path parameter specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- curl
- Python
- JavaScript
- C#
- Go
- 201
- 401
- 403
- 404
- 500
{- "sessionType": "ConfigurationBackup",
- "state": "Stopped",
- "id": "f848e90c-7f37-4ff5-9d55-04e33f8a4de3",
- "name": "Backup Configuration Job",
- "jobId": "99d1bf3d-e2e0-4bec-b2b3-820c0b87d212",
- "creationTime": "2023-11-08T10:00:12.56+01:00",
- "endTime": "2023-11-08T10:00:34.017+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 0,
- "platformName": "VMware",
- "platformId": "00000000-0000-0000-0000-000000000000"
}Starts Volume Restore for Agent or Recovery Appliance
The HTTP POST request to the /api/v1/restore/startVolumeRestore endpoint starts Volume Restore for Agent or Recovery Appliance.
Available to: Backup Administrator, Restore Operator. Also available to custom roles that have restore permissions.
header Parameters
| x-api-version required | string Default: 1.3-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
| diskManagementSessionId required | string <uuid> Disk management session ID. |
required | object (DiskMappingContext) Disk mapping context. |
| reason | string Reason for starting volume restore operation. |
| injectDrivers | boolean If |
A session has been created to restore volumes. To check the progress, track the session state.
Unauthorized. The authorization header has been expected but not found (or found but is expired).
Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.
Internal server error. The request has been received but could not be completed because of an internal error at the server side.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "diskManagementSessionId": "e5f6a7b8-c9d0-1234-5678-9abcdef01234",
- "diskMappingContext": {
- "version": 1,
- "disks": [
- {
- "number": 0,
- "size": {
- "size": 100,
- "unit": "Gb"
}, - "isDynamic": false,
- "logicalSectorSize": 512,
- "partitions": [ ]
}
]
}, - "reason": "Restore corrupted system volume",
- "injectDrivers": true
}- 201
- 401
- 403
- 500
{- "sessionType": "ConfigurationBackup",
- "state": "Stopped",
- "id": "f848e90c-7f37-4ff5-9d55-04e33f8a4de3",
- "name": "Backup Configuration Job",
- "jobId": "99d1bf3d-e2e0-4bec-b2b3-820c0b87d212",
- "creationTime": "2023-11-08T10:00:12.56+01:00",
- "endTime": "2023-11-08T10:00:34.017+01:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 0,
- "platformName": "VMware",
- "platformId": "00000000-0000-0000-0000-000000000000"
}