- About Veeam Backup & Replication REST API
- Overview
- How To
- Changelog
- Login
- 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
- 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
- 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
- Service
- Services
- Connection
- Cloud Browser
- Inventory Browser
- getGet All VMware vSphere Servers
- getGet VMware vSphere Server Objects
- postGet All Servers
- postGet Inventory Objects
- postRescan Inventory Objects
- 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
- Traffic Rules
- General Options
- 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
- Managed Servers
- Repositories
- getGet All Repositories
- postAdd Repository
- getGet All Repository States
- getGet Repository
- putEdit Repository
- delRemove Repository
- getGet All Scale-Out Backup Repositories
- postAdd Scale-Out Backup Repository
- getGet Scale-Out Backup Repository
- putEdit Scale-Out Backup Repository
- delRemove Scale-Out Backup Repository
- postEnable Sealed Mode
- postDisable Sealed Mode
- postEnable Maintenance Mode
- postDisable Maintenance Mode
- Proxies
- WAN Accelerators
- Jobs
- Backups
- Backup Objects
- Restore Points
- Backup Browsers
- getGet All File Restore Mount Points
- getGet File Restore Mount Point
- 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
- 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
- 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
- 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
- Restore
- getGet All VM Mount Points
- postStart Instant Recovery
- getGet VM Mount Point
- postStop VM Publishing
- postStart VM Migration
- postRestore Entire VMware vSphere VM
- postRestore Entire VMware Cloud Director VM
- getGet All FCD Mounts
- postStart Instant FCD Recovery
- getGet FCD Mount 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
- postUnmount Microsoft Entra ID Tenant
- postStart Microsoft Entra ID Audit Log Restore
- postUnmount Microsoft Entra ID Audit Logs
- Data Integration API
- Tasks
- Replicas
- Replica Restore Points
- Failover
- Failback
- Sessions
- Agents
- Automation
- postImport Jobs
- postExport Jobs
- postImport Credentials
- postExport Credentials
- postImport Cloud Credentials
- postExport Cloud Credentials
- postImport Proxies
- postExport Proxies
- postImport Servers
- postExport Servers
- postImport Repositories
- postExport Repositories
- postImport Encryption Passwords
- postExport Encryption Passwords
- getGet All Automation Sessions
- getGet Automation Session
- getGet Automation Session Logs
- postStop Automation Session
The Security section defines paths and operations for managing Security & Compliance Analyzer and getting four-eyes authorization events.
Start Security & Compliance Analyzer
The HTTP POST request to the /api/v1/securityAnalyzer/start
path allows you to start Security & Compliance Analyzer on the backup server.
Available to: Veeam Backup Administrator, Veeam Security Administrator.
header Parameters
x-api-version required | string Default: 1.2-rev0 Version and revision of the client REST API. Must be in the following format: |
A SecurityComplianceAnalyzer
session has been created to start Security & Compliance Analyzer. 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.
- curl
- Python
- JavaScript
- C#
- Go
- 201
- 401
- 403
- 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"
}
Get Security & Compliance Analyzer Last Run
The HTTP GET request to the /api/v1/securityAnalyzer/lastRun
path allows you to get the last session of Security & Compliance Analyzer.
Available to: Veeam Backup Administrator, Veeam Security Administrator.
header Parameters
x-api-version required | string Default: 1.2-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",
- "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"
}
Get Security & Compliance Analyzer Schedule
The HTTP GET request to the /api/v1/securityAnalyzer/schedule
path allows you to get the Security & Compliance Analyzer schedule.
Available to: Veeam Backup Administrator, Veeam Security Administrator.
header Parameters
x-api-version required | string Default: 1.2-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
{- "dailyScanEnabled": true,
- "dailyScanLocalTime": "14:15:22Z",
- "sendScanResults": true,
- "recipients": "string",
- "notificationType": "UseGlobalNotificationSettings",
- "customNotificationSettings": {
- "subject": "string",
- "notifyOnSuccess": true,
- "notifyOnWarning": true,
- "notifyOnError": true
}
}
Modify Security & Compliance Analyzer Schedule
The HTTP PUT request to the /api/v1/securityAnalyzer/schedule
path allows you to modify the Security & Compliance Analyzer schedule.
Available to: Veeam Backup Administrator, Veeam Security Administrator.
header Parameters
x-api-version required | string Default: 1.2-rev0 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonrequired
dailyScanEnabled | boolean If |
dailyScanLocalTime | string <time> Local time when the Security & Compliance Analyzer session must start. |
sendScanResults | boolean If |
recipients | string Recipients' email addresses separated with a semicolon. |
notificationType | string (EEmailNotificationType) Type of email notification settings (global notification settings specified for the backup server, or custom notification settings specified for this job). |
object (SecurityAnalyzerEmailNotificationSettings) Custom notification settings specified for Security & Compliance Analyzer. |
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
{- "dailyScanEnabled": true,
- "dailyScanLocalTime": "14:15:22Z",
- "sendScanResults": true,
- "recipients": "string",
- "notificationType": "UseGlobalNotificationSettings",
- "customNotificationSettings": {
- "subject": "string",
- "notifyOnSuccess": true,
- "notifyOnWarning": true,
- "notifyOnError": true
}
}
- 200
- 400
- 401
- 403
- 500
{- "dailyScanEnabled": true,
- "dailyScanLocalTime": "14:15:22Z",
- "sendScanResults": true,
- "recipients": "string",
- "notificationType": "UseGlobalNotificationSettings",
- "customNotificationSettings": {
- "subject": "string",
- "notifyOnSuccess": true,
- "notifyOnWarning": true,
- "notifyOnError": true
}
}
Reset All Security & Compliance Analyzer Statuses
The HTTP POST request to the /api/v1/securityAnalyzer/bestPractices/resetAll
path allows you to restore default compliance statuses for all Security & Compliance Analyzer best practices.
Available to: Veeam Backup Administrator, Veeam Security Administrator.
header Parameters
x-api-version required | string Default: 1.2-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
{- "items": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "bestPractice": "string",
- "status": "Analyzing",
- "note": "string"
}
]
}
Get Security & Compliance Analyzer Results
The HTTP GET request to the /api/v1/securityAnalyzer/bestPractices
path allows you to get best practices compliance result from the Backup server.
Available to: Veeam Backup Administrator, Veeam Security Administrator.
header Parameters
x-api-version required | string Default: 1.2-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
{- "items": [
- {
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "bestPractice": "string",
- "status": "Analyzing",
- "note": "string"
}
]
}
Suppress Security & Compliance Analyzer Best Practice Status
The HTTP POST request to the /api/v1/securityAnalyzer/bestPractices/{id}/suppress
path allows you to suppress a Security & Compliance Analyzer best practice compliance status that has the specified id
.
Available to: Veeam Backup Administrator, Veeam Security Administrator.
path Parameters
id required | string <uuid> Best practice status ID. |
header Parameters
x-api-version required | string Default: 1.2-rev0 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/jsonoptional
note | string Note that specifies the reason for suppressing the option (excluding it from the analyzer checklist). |
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.
- Payload
- curl
- Python
- JavaScript
- C#
- Go
{- "note": "string"
}
- 200
- 401
- 403
- 500
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "bestPractice": "string",
- "status": "Analyzing",
- "note": "string"
}
Reset Security & Compliance Analyzer Status
The HTTP POST request to the /api/v1/securityAnalyzer/bestPractices/{id}/reset
path allows you to reset the compliance status of a Security & Compliance Analyzer best practice that has the specified id
.
Available to: Veeam Backup Administrator, Veeam Security Administrator.
path Parameters
id required | string <uuid> Option ID. |
header Parameters
x-api-version required | string Default: 1.2-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
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "bestPractice": "string",
- "status": "Analyzing",
- "note": "string"
}
Get All Authorization Events
The HTTP GET request to the /api/v1/authorization/events
path allows you to get an array of security-related events. These events cover the following operation types:
- Approved and rejected requests
- Updated four-eyes authorization settings
- Updated settings for users and user groups
- Assigned roles
- Added or deleted users and user groups
Available to: Veeam Backup Administrator, Veeam Security Administrator.
query Parameters
skip | integer <int32> Number of authorization events to skip. |
limit | integer <int32> Maximum number of authorization events to return. |
orderColumn | string (EAuthorizationEventsFiltersOrderColumn) Sorts authorization events by one of the authorization events parameters. |
orderAsc | boolean If |
nameFilter | string Filters authorization events by the |
createdAfterFilter | string <date-time> Returns authorization events that are created after the specified date and time. |
createdBeforeFilter | string <date-time> Returns authorization events that are created before the specified date and time. |
processedAfterFilter | string <date-time> Returns authorization events that are processed after the specified date and time. |
processedBeforeFilter | string <date-time> Returns authorization events that are processed before the specified date and time. |
stateFilter | string (EAuthorizationEventState) Filters authorization events by state. |
createdByFilter | string Filters authorization events created by the specified user. |
processedByFilter | string Filters authorization events processed by the specified user. |
expireBeforeFilter | string <date-time> Returns authorization events that expire before the specified date and time. |
expireAfterFilter | string <date-time> Returns authorization events that expire after the specified date and time. |
header Parameters
x-api-version required | string Default: 1.2-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",
- "description": "string",
- "state": "Pending",
- "creationTime": "2019-08-24T14:15:22Z",
- "createdBy": "string",
- "expirationTime": "2019-08-24T14:15:22Z",
- "processedBy": "string",
- "processedTime": "2019-08-24T14:15:22Z"
}
], - "pagination": {
- "total": 0,
- "count": 0,
- "skip": 0,
- "limit": 0
}
}
Get Authorization Event
The HTTP GET request to the /api/v1/authorization/events/{id}
path allows you to get an authorization event that has the specified id
.
Available to: Veeam Backup Administrator, Veeam Security Administrator.
path Parameters
id required | string <uuid> ID of the authorization event. |
header Parameters
x-api-version required | string Default: 1.2-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
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "name": "string",
- "description": "string",
- "state": "Pending",
- "creationTime": "2019-08-24T14:15:22Z",
- "createdBy": "string",
- "expirationTime": "2019-08-24T14:15:22Z",
- "processedBy": "string",
- "processedTime": "2019-08-24T14:15:22Z"
}