- About Veeam Backup & Replication REST API
- Overview
- How To
- Changelog
- Login
- Service
- Services
- Credentials
- getGet All Credentials
- postAdd Credentials Record
- getGet Credentials Record
- putEdit Credentials Record
- delRemove Credentials Record
- postChange Password
- postChange Linux Private Key
- postChange Linux Root Password
- getGet All Cloud Credentials
- postAdd Cloud Credentials Record
- postGet Microsoft Azure Verification Code
- postRegister Azure AD Application
- postGet Google Authentication Information
- getGet Cloud Credentials Record
- putEdit Cloud Credentials Record
- delRemove Cloud Credentials Record
- postChange Secret Key
- postChange Google Service Account
- postChange Certificate
- getGet All Helper Appliances
- postAdd or Edit Helper Appliance
- getGet Helper Appliance
- delRemove Helper Appliance
- Encryption
- Connection
- Cloud Browser
- Inventory Browser
- Traffic Rules
- General Options
- Malware Detection
- Configuration Backup
- Managed Servers
- Repositories
- getGet All Repositories
- postAdd Repository
- getGet All Repository States
- getGet Repository
- putEdit Repository
- delRemove Repository
- getGet All Scale-Out Backup Repositories
- postAdd Scale-Out Backup Repository
- getGet Scale-Out Backup Repository
- putEdit Scale-Out Backup Repository
- delRemove Scale-Out Backup Repository
- postEnable Sealed Mode
- postDisable Sealed Mode
- postEnable Maintenance Mode
- postDisable Maintenance Mode
- Proxies
- WAN Accelerators
- Jobs
- Backups
- Backup Objects
- Restore Points
- Restore
- getGet All VM Mounts
- postStart Instant Recovery
- getGet VM Mount
- postStop VM Publishing
- postStart VM Migration
- postRestore Entire VMware vSphere VM
- postRestore Entire VMware Cloud Director VM
- getGet All FCD Mounts
- postStart Instant FCD Recovery
- getGet FCD Mount
- postStop FCD Publishing
- postStart FCD Migration
- postStart File Restore
- postUnmount File System
- Backup Browsers
- getGet All File Restore Mounts
- getGet File Restore Mount
- postBrowse File System
- postCompare Attributes
- postCompare Files and Folders
- postSearch for Files and Folders
- postBrowse Search Results
- postRestore Files and Folders to Original Location
- postRestore Files and Folders to Another Location
- postPrepare Files and Folders for Download
- postDownload Files and Folders
- Tasks
- Replicas
- Replica Restore Points
- Failover
- Failback
- Sessions
- Agents
- Automation
- postImport Jobs
- postExport Jobs
- postImport Credentials
- postExport Credentials
- postImport Cloud Credentials
- postExport Cloud Credentials
- postImport Proxies
- postExport Proxies
- postImport Servers
- postExport Servers
- postImport Repositories
- postExport Repositories
- postImport Encryption Passwords
- postExport Encryption Passwords
- getGet All Automation Sessions
- getGet Automation Session
- getGet Automation Session Logs
- postStop Automation Session
The Inventory Browser section defines paths and operations for retrieving virtualization servers and their virtual infrastructure objects (data centers, clusters, hosts, resource pools, vApps, VMs and so on).
In this version, you can browse VMware vSphere and VMware Cloud Director objects only.
Get All VMware vSphere ServersDeprecated
The HTTP GET request to the /api/v1/inventory/vmware/hosts
path allows you to get an array of all VMware vSphere servers added to the backup infrastructure.
Available to: Veeam Backup Administrator.
query Parameters
skip | integer <int32> Number of VMware vSphere servers to skip. |
limit | integer <int32> Maximum number of VMware vSphere servers to return. |
orderColumn | string (EViRootFiltersOrderColumn) Sorts VMware vSphere servers by one of the VMware vSphere server parameters. |
orderAsc | boolean Sorts VMware vSphere servers in the ascending order by the |
nameFilter | string Filters VMware vSphere servers by the |
header Parameters
x-api-version required | string Default: 1.1-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.
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": [
- {
- "inventoryObject": {
- "type": "vCenterServer",
- "hostName": "vcenter01.tech01.local",
- "name": "vcenter01.tech01.local",
- "objectId": "d766a026-a7a7-4d6e-add0-9599a291394f"
}, - "size": "N/A"
}, - {
- "inventoryObject": {
- "type": "vCenterServer",
- "hostName": "vcenter02.tech02.local",
- "name": "vcenter02.tech02.local",
- "objectId": "bd49ae5e-d5ec-4013-8ffa-c91beadce052"
}, - "size": "N/A"
}
], - "pagination": {
- "total": 2,
- "count": 2,
- "skip": 0,
- "limit": 200
}
}
Get VMware vSphere Server ObjectsDeprecated
The HTTP GET request to the /api/v1/inventory/vmware/hosts/{name}
path allows you to get an array of virtual infrastructure objects of the VMware vSphere server that has the specified name
.
Available to: Veeam Backup Administrator.
path Parameters
name required | string Name of the VMware vSphere server. |
query Parameters
skip | integer <int32> Number of objects to skip. |
limit | integer <int32> Maximum number of objects to return. |
orderColumn | string (EvCentersInventoryFiltersOrderColumn) Sorts objects by one of the object parameters. |
orderAsc | boolean Sorts objects in the ascending order by the |
objectIdFilter | string Filters objects by object ID. |
hierarchyTypeFilter | string (EHierarchyType) Filters objects by hierarchy type. |
nameFilter | string Filters objects by the |
typeFilter | string (EVmwareInventoryType) Filters objects by virtual infrastructure type. |
parentContainerNameFilter | string Filters objects by name of the parent container. |
header Parameters
x-api-version required | string Default: 1.1-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": [
- {
- "inventoryObject": {
- "type": "Datacenter",
- "hostName": "vcenter01.tech.local",
- "name": "Prague",
- "objectId": "datacenter-42371"
}, - "size": "N/A"
}, - {
- "inventoryObject": {
- "type": "Folder",
- "hostName": "vcenter01.tech.local",
- "name": "Templates",
- "objectId": "group-h42373"
}, - "size": "N/A"
}, - {
- "inventoryObject": {
- "type": "Host",
- "hostName": "vcenter01.tech.local",
- "name": "esx03.tech.local",
- "objectId": "host-42428"
}, - "size": "N/A"
}, - {
- "inventoryObject": {
- "type": "ResourcePool",
- "hostName": "vcenter01.tech.local",
- "name": "Services",
- "objectId": "resgroup-65867"
}, - "size": "N/A"
}, - {
- "inventoryObject": {
- "type": "VirtualMachine",
- "hostName": "vcenter01.tech.local",
- "name": "winsrv01",
- "objectId": "vm-62230"
}, - "size": "220 GB"
}
], - "pagination": {
- "total": 5,
- "count": 5,
- "skip": 0,
- "limit": 200
}
}
Get All Servers
The HTTP POST request to the /api/v1/inventory
path allows you to get an array of all servers and hosts added to the backup infrastructure.
To filter servers by type, use the following possible values: VCenterServer, Folder, Host, CloudDirectorServer. For details, see request samples.
Available to: Veeam Backup Administrator.
header Parameters
x-api-version required | string Default: 1.1-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/json
object (PaginationFilter) Pagination settings. | |
object (FilterExpressionModel) Filter settings. | |
object (SortExpressionModel) Sorting settings. | |
hierarchyType | string Hierarchy type. Possible values:
|
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
{- "filter": {
- "type": "GroupExpression",
- "operation": "or",
- "items": [
- {
- "type": "PredicateExpression",
- "operation": "endsWith",
- "property": "hostName",
- "value": "tech02.local"
}, - {
- "type": "PredicateExpression",
- "operation": "endsWith",
- "property": "hostName",
- "value": "tech.local"
}
]
}, - "sorting": {
- "property": "name",
- "direction": "descending"
}
}
- 200
- 401
- 403
- 500
{- "data": [
- {
- "type": "vCenterServer",
- "hostName": "vcenter01.tech.local",
- "name": "vcenter01.tech.local",
- "objectId": "b9faa59e-c6cd-44ed-8496-1b429a8f9aca",
- "urn": "vc:vcenter01.tech.local",
- "platform": "VMware",
- "size": "N/A"
}, - {
- "type": "CloudDirectorServer",
- "hostName": "prgclouddirector02.tech02.local",
- "name": "prgclouddirector02.tech02.local",
- "objectId": null,
- "urn": "vcdsystem:prgclouddirector02.tech02.local",
- "platform": "CloudDirector",
- "size": "N/A"
}
], - "pagination": {
- "total": 2,
- "count": 2,
- "skip": 0,
- "limit": 200
}, - "hierarchyType": null
}
Get Inventory Objects
The HTTP POST request to the /api/v1/inventory/{hostname}
path allows you to get an array of inventory objects of a virtualization server (or host) that has the specified hostname
.
Available to: Veeam Backup Administrator.
path Parameters
hostname required | string Name of the server. |
query Parameters
resetCache | boolean If |
header Parameters
x-api-version required | string Default: 1.1-rev2 Version and revision of the client REST API. Must be in the following format: |
Request Body schema: application/json
object (PaginationFilter) Pagination settings. | |
object (FilterExpressionModel) Filter settings. | |
object (SortExpressionModel) Sorting settings. | |
hierarchyType | string Hierarchy type. Possible values:
|
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
{- "filter": {
- "type": "GroupExpression",
- "operation": "and",
- "items": [
- {
- "type": "GroupExpression",
- "operation": "and",
- "items": [
- {
- "type": "PredicateExpression",
- "operation": "greaterThan",
- "property": "Size",
- "value": "10 Mb"
}, - {
- "type": "PredicateExpression",
- "operation": "lessThan",
- "property": "Size",
- "value": "100 Mb"
}
]
}, - {
- "type": "PredicateExpression",
- "operation": "in",
- "property": "Type",
- "value": "VirtualMachine"
}, - {
- "type": "PredicateExpression",
- "operation": "Contains",
- "property": "urn",
- "value": "hostsystem:host-08;"
}
]
}, - "sorting": {
- "property": "Size",
- "direction": "descending"
}
}
- 200
- 401
- 403
- 404
- 500
{- "data": [
- {
- "platform": "VMware",
- "size": "string",
- "hostName": "string",
- "name": "string",
- "type": "Unknown",
- "objectId": "string",
- "urn": "string"
}
], - "pagination": {
- "total": 0,
- "count": 0,
- "skip": 0,
- "limit": 0
}, - "hierarchyType": "string"
}
Rescan Inventory Objects
The HTTP POST request to the /api/v1/inventory/{hostname}/rescan
path allows you to rescan inventory objects of a virtualization server (or host) that has the specified hostname
.
Available to: Veeam Backup Administrator.
path Parameters
hostname required | string Name of the server. |
header Parameters
x-api-version required | string Default: 1.1-rev2 Version and revision of the client REST API. Must be in the following format: |
A HierarchyRescan
task has been started. To check the progress, track the task 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
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "type": "Common",
- "name": "string",
- "state": "Starting",
- "progressPercent": 0,
- "creationTime": "2019-08-24T14:15:22Z",
- "endTime": "2019-08-24T14:15:22Z",
- "result": "None",
- "additionalInfo": {
- "message": "string",
- "resourceId": "026d60bb-63a8-407e-bf67-01dcfc6022e6",
- "resourceReference": "string"
}
}