- About Veeam Backup & Replication REST API
- Overview
- How To
- Changelog
- Login
- Service
- Services
- Credentials
- getGet All Credentials
- postAdd Credentials Record
- getGet Credentials Record
- putEdit Credentials Record
- delRemove Credentials Record
- postChange Password
- postChange Linux Private Key
- postChange Linux Root Password
- getGet All Cloud Credentials
- postAdd Cloud Credentials Record
- postGet Microsoft 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 All Protection Groups
- postGet Inventory Objects for Specific Protection Group
- getGet All Unstructured Data Servers
- getGet Unstructured Data Servers
- 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
- Traffic Rules
- General Options
- 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
- Configuration Backup
- Deployment
- Managed Servers
- getGet All Servers
- postAdd Server
- postGet vCenter Servers Attached to Cloud Director Server
- postGet Hyper-V Servers Managed by Hyper-V Cluster or SCVMM Server
- getGet Server
- putEdit Server
- delRemove Server
- postChange to Single-Use Credentials
- getGet Volumes for Hyper-V Standalone Server
- putEdit Volumes on 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 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
- Jobs
- Backups
- Backup Objects
- Restore Points
- Restore
- getGet All Instant Recovery Mount Points of VMware vSphere VMs
- postStart Instant Recovery of VMware vSphere VM
- getGet Instant Recovery Mount Point of VMware vSphere VM
- postStop Publishing VMware vSphere VM
- postStart Migrating VMware vSphere VM
- getGet All Instant Recovery Mount Points of Microsoft Hyper-V VMs
- postStart Instant Recovery of Microsoft Hyper-V VM
- getGet Instant Recovery Mount Point of Microsoft Hyper-V VM
- postStop Publishing Microsoft Hyper-V VM
- postStart Migrating Microsoft Hyper-V VM
- getGet All Mount Points for Instant Recovery to Azure
- postStart Instant Recovery to Azure
- getGet Mount Point for Instant Recovery to Azure
- getGet All Mount Sessions for Instant Recovery to Azure
- postStop Publishing Machine to Azure
- postStart Migrating Machine to Azure
- getGet Settings for Switchover to Azure
- putUpdate Settings for Switchover to Azure
- postStart Switchover to 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
- 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
- Data Integration API
- Backup Browsers
- postValidate Target Machine Credentials
- 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
- getGet All Unstructured Data Mount Points
- getGet Unstructured Data Mount Point
- postBrowse Unstructured Data File System
- postSearch for Files and Folders in Unstructured Data Source
- postBrowse Search Results
- postCopy Files and Folders to Specific Folder
- getGet Mount Points of All 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
- 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
- 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
- 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 Computers
- getGet Protected Computer
- getGet Discovered Entities
- postRescan Discovered Entities
- postInstall Agent on Discovered Entities
- postUninstall Agent from Discovered Entities
- postUninstall All Components from Discovered Entities
- getGet Discovered Entity
- delRemove Discovered Entity
- getGet Linux Agent Packages
- getGet Unix Agent Packages
- Protection Groups
- 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 Agents section defines paths and operations for obtaining protected computers and managing recovery tokens used for bare metal recovery.
Get All Recovery Tokens
The HTTP GET request to the /api/v1/agents/recoveryTokens
path allows you to get an array of all recovery tokens.
Available to: Veeam Backup Administrator.
query Parameters
skip | integer <int32> Number of recovery tokens to skip. |
limit | integer <int32> Default: 200 Maximum number of recovery tokens to return. |
orderColumn | string (EComputerRecoveryTokenFiltersOrderColumn) Sorts recovery tokens by one of the parameters. |
orderAsc | boolean If |
nameFilter | string Filters recovery tokens by the |
header Parameters
x-api-version required | string Default: 1.3-rev0 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.
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
- 500
{- "data": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "recoveryToken": "string",
- "expirationDate": "2019-08-24T14:15:22Z"
}
], - "pagination": {
- "total": 0,
- "count": 0,
- "skip": 0,
- "limit": 0
}
}
Create Recovery Token
The HTTP POST request to the /api/v1/agents/recoveryTokens
path allows you to create a new recovery token.
Available to: Veeam Backup Administrator.
header Parameters
x-api-version required | string Default: 1.3-rev0 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
backupIds required | Array of strings <uuid> Array of backup IDs whose data you want to restore with the recovery token. |
expirationDate required | string <date-time> Date and time when the recovery token expires. |
Recovery token has been created.
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
{- "backupIds": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
], - "expirationDate": "2019-08-24T14:15:22Z"
}
- 200
- 400
- 401
- 403
- 500
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "recoveryToken": "string",
- "expirationDate": "2019-08-24T14:15:22Z"
}
Get Recovery Token
The HTTP GET request to the /api/v1/agents/recoveryTokens/{id}
path allows you to get a recovery token that has the specified id
.
Available to: Veeam Backup Administrator.
path Parameters
id required | string <uuid> Recovery token ID. To get the ID, run the Get All Recovery Tokens request. |
header Parameters
x-api-version required | string Default: 1.3-rev0 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": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "recoveryToken": "string",
- "expirationDate": "2019-08-24T14:15:22Z"
}
Edit Recovery Token
The HTTP PUT request to the /api/v1/agents/recoveryTokens/{id}
path allows you to edit settings of a recovery token that has the specified id
.
Available to: Veeam Backup Administrator.
path Parameters
id required | string <uuid> Recovery token ID. To get the ID, run the Get All Recovery Tokens request. |
header Parameters
x-api-version required | string Default: 1.3-rev0 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
id required | string <uuid> ID of the recovery token. |
name required | string Friendly name of the recovery token. |
expirationDate required | string <date-time> Date and time when the recovery token expires. |
recoveryToken | string Recovery token. |
Recovery token has been updated.
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
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "recoveryToken": "string",
- "expirationDate": "2019-08-24T14:15:22Z"
}
- 200
- 400
- 401
- 403
- 404
- 500
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "recoveryToken": "string",
- "expirationDate": "2019-08-24T14:15:22Z"
}
Delete Recovery Token
The HTTP DELETE request to the /api/v1/agents/recoveryTokens/{id}
path allows you to delete a recovery token that has the specified id
.
Available to: Veeam Backup Administrator.
path Parameters
id required | string <uuid> Recovery token ID. To get the ID, run the Get All Recovery Tokens request. |
header Parameters
x-api-version required | string Default: 1.3-rev0 Version and revision of the client REST API. Must be in the following format: |
Token has been deleted.
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
- 204
- 401
- 403
- 404
- 500
{ }
Get All Protected ComputersDeprecated
The HTTP GET request to the /api/v1/agents/protectedComputers
path allows you to get an array of all protected computers.
Available to: Veeam Backup Administrator, Veeam Restore Operator.
query Parameters
skip | integer <int32> Number of protected computers to skip. |
limit | integer <int32> Default: 200 Maximum number of protected computers to return. |
orderColumn | string (EProtectedComputerFiltersOrderColumn) Sorts protected computers by one of the protected computer parameters. |
orderAsc | boolean If |
nameFilter | string Filters protected computers by the |
typeFilter | string (EProtectedComputerType) Filters protected computers by protected computer type. |
header Parameters
x-api-version required | string Default: 1.3-rev0 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
{- "property": "value"
}
Get Protected ComputerDeprecated
The HTTP GET request to the /api/v1/agents/protectedComputers/{id}
path allows you to get a protected computer that has the specified id
.
Available to: Veeam Backup Administrator, Veeam Restore Operator.
path Parameters
id required | string <uuid> ID of the protected computer. |
header Parameters
x-api-version required | string Default: 1.3-rev0 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": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "type": "Linux",
- "protectionGroups": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "credentialsId": "08e8bcd2-3d30-4d03-8e1a-ab6ac0cbf1ed"
}
]
}
Get Discovered Entities
The HTTP GET request to the /api/v1/agents/protectionGroups/{id}/discoveredEntities
path allows you to get a list of discovered entities — a list of individual computers, clusters or Active Directory objects processed in the scope of the protection group that has the specified id
.
Available to: Veeam Backup Administrator.
path Parameters
id required | string <uuid> Protection group ID. To get the protection group ID, run the Get Protection Groups request. |
query Parameters
skip | integer <int32> Number of discovered entities to skip. |
limit | integer <int32> Default: 200 Maximum number of discovered entities to return. |
orderColumn | string (EDiscoveredEntityFiltersOrderColumn) Sorts discovered entities by one of the discovered entity parameters. |
orderAsc | boolean Sorts discovered entities in the ascending order by the |
nameFilter | string Filters discovered entities by the |
ipAddressFilter | string Filters discovered entities by the |
stateFilter | string Filters discovered entities by their states. |
agentStatusFilter | string Filters discovered entities by the installed agent status. |
driverStatusFilter | string Filters discovered entities by the installed driver status. |
header Parameters
x-api-version required | string Default: 1.3-rev0 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": "Online",
- "agentStatus": "Installed",
- "driverStatus": "Installed",
- "operatingSystem": "WindowsServer2022",
- "operatingSystemPlatform": "X64",
- "agentVersion": "13.0.0.632",
- "driverVersion": "Veeam Volume CT Driver (13.0.0.12)",
- "rebootRequired": false,
- "ipAddresses": [
- "172.24.29.220"
], - "lastConnected": "2025-04-22T19:01:26.588034",
- "operatingSystemVersion": "Microsoft Windows Server 2022 (21H2, 64-bit)",
- "operatingSystemUpdateVersion": 2109,
- "objectId": "cb324094-3476-4b8e-92fd-94ff8bfcb7cf",
- "biosUuid": "d8ad2542-9d46-e67e-7b05-efd2dc8e2595",
- "plugins": [
- {
- "type": "MSSQL",
- "status": "Installed",
- "version": "13.0.0.4695"
}, - {
- "type": "OracleRMAN",
- "status": "NotInstalled"
}, - {
- "type": "SAPHANA",
- "status": "NotInstalled"
}, - {
- "type": "SAPOnOracle",
- "status": "NotInstalled"
}
], - "type": "Computer",
- "id": "7e76a5bb-287a-490e-ae0a-5e852ea775ee",
- "name": "dlsql03",
- "parentId": "15aa12f6-6078-4e2f-8a90-0a3d496d6f77",
- "protectionGroupId": "c2600b42-7c64-4219-a447-95bd33e70c1a"
}
], - "pagination": {
- "total": 1,
- "count": 1,
- "skip": 0,
- "limit": 200
}
}
Rescan Discovered Entities
The HTTP POST request to the /api/v1/agents/protectionGroups/{id}/discoveredEntities/rescan
path allows you to start rescan jobs which can install/upgrade agents on a subset of discovered entities in the protection group specified by id
.
Available to: Veeam Backup Administrator.
path Parameters
id required | string <uuid> Protection group ID. To get the protection group ID, run the Get Protection Groups request. |
header Parameters
x-api-version required | string Default: 1.3-rev0 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
entityIds required | Array of strings <uuid> Array of discovered entity IDs to process. To get the discovered entity IDs, run the Get Discovered Entities request. |
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.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "entityIds": [
- "7e76a5bb-287a-490e-ae0a-5e852ea775ee"
]
}
- 200
- 401
- 403
- 404
- 500
{- "sessionType": "AgentDiscovery",
- "state": "Stopped",
- "platformName": "WindowsPhysical",
- "id": "8ca855d7-4bde-4277-bbc9-fabd606d0a5e",
- "name": "Rescan of dlsql03",
- "jobId": "59e96b69-ae91-45b3-82be-c0b31f25c915",
- "creationTime": "2025-04-23T09:46:47.664243+02:00",
- "endTime": "2025-04-23T09:48:02.473501+02:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 806726,
- "platformId": "00000000-0000-0000-0000-000000000000"
}
Install Agent on Discovered Entities
The HTTP POST request to the /api/v1/agents/protectionGroups/{id}/discoveredEntities/installAgent
path allows you to install agent on discovered entities in the protection group specified by id
.
Available to: Veeam Backup Administrator.
path Parameters
id required | string <uuid> Protection group ID. To get the protection group ID, run the Get Protection Groups request. |
header Parameters
x-api-version required | string Default: 1.3-rev0 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
entityIds required | Array of strings <uuid> Array of discovered entity IDs to process. To get the discovered entity IDs, run the Get Discovered Entities request. |
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.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "entityIds": [
- "7e76a5bb-287a-490e-ae0a-5e852ea775ee"
]
}
- 200
- 401
- 403
- 404
- 500
{- "sessionType": "AgentDiscovery",
- "state": "Stopped",
- "platformName": "WindowsPhysical",
- "id": "8ca855d7-4bde-4277-bbc9-fabd606d0a5e",
- "name": "Rescan of dlsql03",
- "jobId": "59e96b69-ae91-45b3-82be-c0b31f25c915",
- "creationTime": "2025-04-23T09:46:47.664243+02:00",
- "endTime": "2025-04-23T09:48:02.473501+02:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 806726,
- "platformId": "00000000-0000-0000-0000-000000000000"
}
Uninstall Agent from Discovered Entities
The HTTP POST request to the /api/v1/agents/protectionGroups/{id}/discoveredEntities/uninstallAgent
path allows you to uninstall agent from discovered entities in the protection group specified by id
.
Available to: Veeam Backup Administrator.
path Parameters
id required | string <uuid> Protection group ID. To get the protection group ID, run the Get Protection Groups request. |
header Parameters
x-api-version required | string Default: 1.3-rev0 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
entityIds required | Array of strings <uuid> Array of discovered entity IDs to process. To get the discovered entity IDs, run the Get Discovered Entities request. |
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.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "entityIds": [
- "7e76a5bb-287a-490e-ae0a-5e852ea775ee"
]
}
- 200
- 401
- 403
- 404
- 500
{- "sessionType": "AgentDiscovery",
- "state": "Stopped",
- "platformName": "WindowsPhysical",
- "id": "8ca855d7-4bde-4277-bbc9-fabd606d0a5e",
- "name": "Rescan of dlsql03",
- "jobId": "59e96b69-ae91-45b3-82be-c0b31f25c915",
- "creationTime": "2025-04-23T09:46:47.664243+02:00",
- "endTime": "2025-04-23T09:48:02.473501+02:00",
- "progressPercent": 100,
- "result": {
- "result": "Success",
- "message": "Success",
- "isCanceled": false
}, - "usn": 806726,
- "platformId": "00000000-0000-0000-0000-000000000000"
}
Uninstall All Components from Discovered Entities
The HTTP POST request to the /api/v1/agents/protectionGroups/{id}/discoveredEntities/uninstallAllComponents
path allows you to uninstall all components from discovered entities in the protection group with the specified id
.
Available to: Veeam Backup Administrator.
path Parameters
id required | string <uuid> Protection group ID. To get the protection group ID, run the Get Protection Groups request. |
header Parameters
x-api-version required | string Default: 1.3-rev0 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
entityIds required | Array of strings <uuid> Array of discovered entity IDs to process. To get the discovered entity IDs, run the Get Discovered Entities request. |
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.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "entityIds": [
- "497f6eca-6276-4993-bfeb-53cbbbba6f08"
]
}
- 200
- 401
- 403
- 404
- 500
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "jobId": "9d222c6d-893e-4e79-8201-3c9ca16a0f39",
- "sessionType": "Infrastructure",
- "creationTime": "2019-08-24T14:15:22Z",
- "endTime": "2019-08-24T14:15:22Z",
- "state": "Stopped",
- "progressPercent": 0,
- "result": {
- "result": "None",
- "message": "string",
- "isCanceled": true
}, - "resourceId": "026d60bb-63a8-407e-bf67-01dcfc6022e6",
- "resourceReference": "string",
- "parentSessionId": "b1d7834e-fe2f-4cad-b0e5-ff5c5615f344",
- "usn": 0,
- "platformName": "VMware",
- "platformId": "32a6e381-64f4-4911-86b6-3bf681b64d23",
- "initiatedBy": "string"
}
Get Discovered Entity
The HTTP GET request to the /api/v1/agents/protectionGroups/{id}/discoveredEntities/{entityId}
path allows you to get a discovered entity that has the specified id
.
Available to: Veeam Backup Administrator.
path Parameters
id required | string <uuid> Protection group ID. To get the ID, run the Get All Protection Groups request. |
entityId required | string <uuid> Discovered entity ID. To get the ID, run the Get Discovered Entities request. |
header Parameters
x-api-version required | string Default: 1.3-rev0 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": "Online",
- "agentStatus": "Installed",
- "driverStatus": "Installed",
- "operatingSystem": "WindowsServer2022",
- "operatingSystemPlatform": "X64",
- "agentVersion": "13.0.0.632",
- "driverVersion": "Veeam Volume CT Driver (13.0.0.12)",
- "rebootRequired": false,
- "ipAddresses": [
- "172.24.29.220"
], - "lastConnected": "2025-04-23T08:18:33.90584",
- "operatingSystemVersion": "Microsoft Windows Server 2022 (21H2, 64-bit)",
- "operatingSystemUpdateVersion": 2109,
- "objectId": "cb324094-3476-4b8e-92fd-94ff8bfcb7cf",
- "biosUuid": "d8ad2542-9d46-e67e-7b05-efd2dc8e2595",
- "plugins": [
- {
- "type": "MSSQL",
- "status": "Installed",
- "version": "13.0.0.4695"
}, - {
- "type": "OracleRMAN",
- "status": "NotInstalled"
}, - {
- "type": "SAPHANA",
- "status": "NotInstalled"
}, - {
- "type": "SAPOnOracle",
- "status": "NotInstalled"
}
], - "type": "Computer",
- "id": "7e76a5bb-287a-490e-ae0a-5e852ea775ee",
- "name": "dlsql03",
- "parentId": "15aa12f6-6078-4e2f-8a90-0a3d496d6f77",
- "protectionGroupId": "c2600b42-7c64-4219-a447-95bd33e70c1a"
}
Remove Discovered Entity
The HTTP DELETE request to the /api/v1/agents/protectionGroups/{id}/discoveredEntities/{entityId}
path allows you to remove a discovered entity that has the specified id
from the configuration.
Available to: Veeam Backup Administrator.
path Parameters
id required | string <uuid> Protection group ID. To get the ID, run the Get All Protection Groups request. |
entityId required | string <uuid> Discovered entity ID. To get the ID, run the Get Discovered Entities request. |
header Parameters
x-api-version required | string Default: 1.3-rev0 Version and revision of the client REST API. Must be in the following format: |
Discovered entity has been removed.
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
- 204
- 401
- 403
- 404
- 500
{ }
Get Linux Agent Packages
The HTTP GET request to the /api/v1/agents/packages/linux
path allows you to get an array of Linux agent packages available for export.
Available to: Veeam Backup Administrator.
query Parameters
skip | integer <int32> Number of Linux packages to skip. |
limit | integer <int32> Default: 200 Maximum number of Linux packages to return. |
orderColumn | string (ELinuxPackageFiltersOrderColumn) Sorts Linux packages by one of the parameters. |
orderAsc | boolean Sorts Linux packages in the ascending order by the |
nameFilter | string Filters Linux packages by the |
distributionFilter | string Filters Linux packages by the distributionName. |
packageBitnessFilter | string Filters Linux packages by the package bitness. |
header Parameters
x-api-version required | string Default: 1.3-rev0 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.
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
- 500
{- "data": [
- {
- "packageBitness": "x64",
- "packageName": "Debian 11 x64 - 13.0.0.609",
- "distributionName": "debian"
}, - {
- "packageBitness": "x64",
- "packageName": "Debian 11 x64-nosnap - 13.0.0.609",
- "distributionName": "debian"
}, - {
- "packageBitness": "x64",
- "packageName": "Debian 12 x64 - 13.0.0.609",
- "distributionName": "debian"
}, - {
- "packageBitness": "x64",
- "packageName": "Debian 12 x64-nosnap - 13.0.0.609",
- "distributionName": "debian"
}, - {
- "packageBitness": "x64",
- "packageName": "Ubuntu 16.4 x64 - 13.0.0.609",
- "distributionName": "ubuntu"
}, - {
- "packageBitness": "x64",
- "packageName": "Ubuntu 16.4 x64-nosnap - 13.0.0.609",
- "distributionName": "ubuntu"
}, - {
- "packageBitness": "x64",
- "packageName": "Ubuntu 18.4 x64 - 13.0.0.609",
- "distributionName": "ubuntu"
}, - {
- "packageBitness": "x64",
- "packageName": "Ubuntu 18.4 x64-nosnap - 13.0.0.609",
- "distributionName": "ubuntu"
}, - {
- "packageBitness": "x64",
- "packageName": "Ubuntu 20.4 x64 - 13.0.0.609",
- "distributionName": "ubuntu"
}, - {
- "packageBitness": "x64",
- "packageName": "Ubuntu 20.4 x64-nosnap - 13.0.0.609",
- "distributionName": "ubuntu"
}, - {
- "packageBitness": "x64",
- "packageName": "Ubuntu 22.4 x64 - 13.0.0.609",
- "distributionName": "ubuntu"
}, - {
- "packageBitness": "x64",
- "packageName": "Ubuntu 22.4 x64-nosnap - 13.0.0.609",
- "distributionName": "ubuntu"
}, - {
- "packageBitness": "x64",
- "packageName": "Ubuntu 24.4 x64 - 13.0.0.609",
- "distributionName": "ubuntu"
}, - {
- "packageBitness": "x64",
- "packageName": "Ubuntu 24.4 x64-nosnap - 13.0.0.609",
- "distributionName": "ubuntu"
}, - {
- "packageBitness": "x64",
- "packageName": "Red Hat 8 x64 - 13.0.0.609",
- "distributionName": "RHEL"
}, - {
- "packageBitness": "x64",
- "packageName": "Red Hat 8 x64-nosnap - 13.0.0.609",
- "distributionName": "RHEL"
}, - {
- "packageBitness": "x64",
- "packageName": "Red Hat 8.4,8.6,8.8,8.10 ppc64le-nosnap - 13.0.0.609",
- "distributionName": "RHEL"
}, - {
- "packageBitness": "x64",
- "packageName": "Red Hat 9.4 ppc64le-nosnap - 13.0.0.609",
- "distributionName": "RHEL"
}, - {
- "packageBitness": "x64",
- "packageName": "Red Hat 9 x64 - 13.0.0.609",
- "distributionName": "RHEL"
}, - {
- "packageBitness": "x64",
- "packageName": "Red Hat 9 x64-nosnap - 13.0.0.609",
- "distributionName": "RHEL"
}, - {
- "packageBitness": "x64",
- "packageName": "Red Hat 10 x64 - 13.0.0.609",
- "distributionName": "RHEL"
}, - {
- "packageBitness": "x64",
- "packageName": "Red Hat 10 x64-nosnap - 13.0.0.609",
- "distributionName": "RHEL"
}, - {
- "packageBitness": "x64",
- "packageName": "Rocky Linux 10 x64 - 13.0.0.609",
- "distributionName": "rocky"
}, - {
- "packageBitness": "x64",
- "packageName": "Rocky Linux 10 x64-nosnap - 13.0.0.609",
- "distributionName": "rocky"
}, - {
- "packageBitness": "x64",
- "packageName": "Rocky Linux 9 x64 - 13.0.0.609",
- "distributionName": "rocky"
}, - {
- "packageBitness": "x64",
- "packageName": "Rocky Linux 9 x64-nosnap - 13.0.0.609",
- "distributionName": "rocky"
}, - {
- "packageBitness": "x64",
- "packageName": "Rocky Linux 8.10 x64 - 13.0.0.609",
- "distributionName": "rocky"
}, - {
- "packageBitness": "x64",
- "packageName": "Rocky Linux 8.10 x64-nosnap - 13.0.0.609",
- "distributionName": "rocky"
}, - {
- "packageBitness": "x64",
- "packageName": "AlmaLinux 10 x64 - 13.0.0.609",
- "distributionName": "almalinux"
}, - {
- "packageBitness": "x64",
- "packageName": "AlmaLinux 10 x64-nosnap - 13.0.0.609",
- "distributionName": "almalinux"
}, - {
- "packageBitness": "x64",
- "packageName": "AlmaLinux 9 x64 - 13.0.0.609",
- "distributionName": "almalinux"
}, - {
- "packageBitness": "x64",
- "packageName": "AlmaLinux 9 x64-nosnap - 13.0.0.609",
- "distributionName": "almalinux"
}, - {
- "packageBitness": "x64",
- "packageName": "AlmaLinux 8.10 x64 - 13.0.0.609",
- "distributionName": "almalinux"
}, - {
- "packageBitness": "x64",
- "packageName": "AlmaLinux 8.10 x64-nosnap - 13.0.0.609",
- "distributionName": "almalinux"
}, - {
- "packageBitness": "x64",
- "packageName": "Oracle Linux 7 x64 - 13.0.0.609",
- "distributionName": "ol"
}, - {
- "packageBitness": "x64",
- "packageName": "Oracle Linux 7 x64-nosnap - 13.0.0.609",
- "distributionName": "ol"
}, - {
- "packageBitness": "x64",
- "packageName": "Oracle Linux 8 x64 - 13.0.0.609",
- "distributionName": "ol"
}, - {
- "packageBitness": "x64",
- "packageName": "Oracle Linux 8 x64-nosnap - 13.0.0.609",
- "distributionName": "ol"
}, - {
- "packageBitness": "x64",
- "packageName": "Oracle Linux 9 x64 - 13.0.0.609",
- "distributionName": "ol"
}, - {
- "packageBitness": "x64",
- "packageName": "Oracle Linux 9 x64-nosnap - 13.0.0.609",
- "distributionName": "ol"
}, - {
- "packageBitness": "x64",
- "packageName": "Oracle Linux 10 x64 - 13.0.0.609",
- "distributionName": "ol"
}, - {
- "packageBitness": "x64",
- "packageName": "Oracle Linux 10 x64-nosnap - 13.0.0.609",
- "distributionName": "ol"
}, - {
- "packageBitness": "x64",
- "packageName": "SLES 12.5 default x64 - 13.0.0.609",
- "distributionName": "SLES"
}, - {
- "packageBitness": "x64",
- "packageName": "SLES 12.5 default x64-nosnap - 13.0.0.609",
- "distributionName": "SLES"
}, - {
- "packageBitness": "x64",
- "packageName": "SLES 12.5 default ppc64le-nosnap - 13.0.0.609",
- "distributionName": "SLES"
}, - {
- "packageBitness": "x64",
- "packageName": "SLES 15.3 default x64 - 13.0.0.609",
- "distributionName": "SLES"
}, - {
- "packageBitness": "x64",
- "packageName": "SLES 15.3 default x64-nosnap - 13.0.0.609",
- "distributionName": "SLES"
}, - {
- "packageBitness": "x64",
- "packageName": "SLES 15.3 default ppc64le-nosnap - 13.0.0.609",
- "distributionName": "SLES"
}, - {
- "packageBitness": "x64",
- "packageName": "SLES 15.3 preempt x64 - 13.0.0.609",
- "distributionName": "SLES"
}, - {
- "packageBitness": "x64",
- "packageName": "SLES 15.3 preempt x64-nosnap - 13.0.0.609",
- "distributionName": "SLES"
}, - {
- "packageBitness": "x64",
- "packageName": "SLES 15.4 default x64 - 13.0.0.609",
- "distributionName": "SLES"
}, - {
- "packageBitness": "x64",
- "packageName": "SLES 15.4 default x64-nosnap - 13.0.0.609",
- "distributionName": "SLES"
}, - {
- "packageBitness": "x64",
- "packageName": "SLES 15.4 default ppc64le-nosnap - 13.0.0.609",
- "distributionName": "SLES"
}, - {
- "packageBitness": "x64",
- "packageName": "SLES 15.5 default x64 - 13.0.0.609",
- "distributionName": "SLES"
}, - {
- "packageBitness": "x64",
- "packageName": "SLES 15.5 default x64-nosnap - 13.0.0.609",
- "distributionName": "SLES"
}, - {
- "packageBitness": "x64",
- "packageName": "SLES 15.5 default ppc64le-nosnap - 13.0.0.609",
- "distributionName": "SLES"
}, - {
- "packageBitness": "x64",
- "packageName": "SLES 15.6 default x64 - 13.0.0.609",
- "distributionName": "SLES"
}, - {
- "packageBitness": "x64",
- "packageName": "SLES 15.6 default x64-nosnap - 13.0.0.609",
- "distributionName": "SLES"
}, - {
- "packageBitness": "x64",
- "packageName": "SLES 15.6 default ppc64le-nosnap - 13.0.0.609",
- "distributionName": "SLES"
}, - {
- "packageBitness": "x64",
- "packageName": "Amazon Linux 2,2023 x64 - 13.0.0.609",
- "distributionName": "amzn"
}
], - "pagination": {
- "total": 60,
- "count": 60
}
}
Get Unix Agent Packages
The HTTP GET request to the /api/v1/agents/packages/unix
path allows you to get an array of Unix agent packages available for export.
Available to: Veeam Backup Administrator.
query Parameters
skip | integer <int32> Number of Unix packages to skip. |
limit | integer <int32> Default: 200 Maximum number of Unix packages to return. |
orderColumn | string (EUnixPackageFiltersOrderColumn) Sorts Unix packages by one of the parameters. |
orderAsc | boolean Sorts Unix packages in the ascending order by the |
nameFilter | string Filters Unix packages by the |
header Parameters
x-api-version required | string Default: 1.3-rev0 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.
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
- 500
{- "data": [
- {
- "packageName": "IBM AIX"
}, - {
- "packageName": "Solaris Intel"
}, - {
- "packageName": "Solaris SPARC"
}
], - "pagination": {
- "total": 3,
- "count": 3
}
}