Managed Servers

The Managed Servers section defines paths and operations for managing servers.

NOTE
In the current version, the REST API supports the following server types: VMware vSphere, Linux and Windows.

Get All Servers

The HTTP GET request to the /api/v1/backupInfrastructure/managedServers path allows you to get an array of all servers that are added to the backup infrastructure.

SecurityBearer
Request
query Parameters
skip
integer <int32>

Number of servers to skip.

limit
integer <int32>

Maximum number of servers to return.

orderColumn
string (EManagedServersFiltersOrderColumn)

Sorts servers by one of the server parameters.

Enum: "Name" "Type" "Description"
orderAsc
boolean

Sorts servers in the ascending order by the orderColumn parameter.

nameFilter
string

Filters servers by the nameFilter pattern. The pattern can match any server parameter. To substitute one or more characters, use the asterisk (*) character at the beginning, at the end or both.

typeFilter
string (EManagedServerType)

Filters servers by server type.

Enum: "WindowsHost" "LinuxHost" "ViHost"
viTypeFilter
string (EViHostType)

Filters servers by the type of VMware vSphere server.

Enum: "ESX" "ESXi" "VC"
header Parameters
x-api-version
required
string
Default: 1.1-rev0

Version and revision of the client REST API. Must be in the following format: <version>-<revision>.

Responses
200

OK

401

Unauthorized. The authorization header has been expected but not found (or found but is expired).

403

Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.

500

Internal server error. The request has been received but could not be completed because of an internal error at the server side.

get/api/v1/backupInfrastructure/managedServers
Request samples
Response samples
application/json
{
  • "data": [
    ],
  • "pagination": {
    }
}

Add Server

The HTTP POST request to the /api/v1/backupInfrastructure/managedServers path allows you to add a server to the backup infrastructure.

SecurityBearer
Request
header Parameters
x-api-version
required
string
Default: 1.1-rev0

Version and revision of the client REST API. Must be in the following format: <version>-<revision>.

Request Body schema: application/json
required
credentialsId
required
string <uuid>

ID of the credentials used to connect to the server.

description
required
string

Description of the server.

name
required
string

Full DNS name or IP address of the server.

type
required
string (EManagedServerType)

Type of the server.

object (WindowsHostPortsModel)

Veeam Backup & Replication components installed on the server and ports used by the components.

Responses
201

Infrastructure session has been created to add the server. To check the progress, track the session state.

400

Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.

401

Unauthorized. The authorization header has been expected but not found (or found but is expired).

403

Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.

500

Internal server error. The request has been received but could not be completed because of an internal error at the server side.

post/api/v1/backupInfrastructure/managedServers
Request samples
application/json
{
  • "networkSettings": {
    },
  • "type": "WindowsHost",
  • "name": "enterprise01.tech.local",
  • "description": "Backup Repository",
  • "credentialsId": "d7af15f3-8808-454e-ba79-2c2267acb05d"
}
Response samples
application/json
{
  • "sessionType": "Infrastructure",
  • "state": "Working",
  • "id": "59f85a1e-2016-4d08-aea5-2676a03d548c",
  • "name": "Infrastructure Item Saving",
  • "activityId": "59f85a1e-2016-4d08-aea5-2676a03d548c",
  • "creationTime": "2022-01-28T19:48:43.117+01:00",
  • "endTime": null,
  • "progressPercent": 0,
  • "result": null,
  • "resourceId": null,
  • "resourceReference": null,
  • "parentSessionId": null,
  • "usn": 0
}

Get Server

The HTTP GET request to the /api/v1/backupInfrastructure/managedServers/{id} path allows you to get a managed server that has the specified id.

SecurityBearer
Request
path Parameters
id
required
string <uuid>

ID of the managed server.

header Parameters
x-api-version
required
string
Default: 1.1-rev0

Version and revision of the client REST API. Must be in the following format: <version>-<revision>.

Responses
200

OK

401

Unauthorized. The authorization header has been expected but not found (or found but is expired).

403

Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.

404

Not found. No object was found with the path parameter specified in the request.

500

Internal server error. The request has been received but could not be completed because of an internal error at the server side.

get/api/v1/backupInfrastructure/managedServers/{id}
Request samples
Response samples
application/json
{
  • "networkSettings": {
    },
  • "type": "WindowsHost",
  • "id": "fc5683a4-8c25-4f8e-97cc-0a40745a5729",
  • "name": "enterprise05.tech.local",
  • "description": "Backup repository",
  • "credentialsId": "97d00492-92b7-4929-9e11-68eaa63b88e3"
}

Edit Server

The HTTP PUT request to the /api/v1/backupInfrastructure/managedServers/{id} path allows you to edit a managed server that has the specified id.

SecurityBearer
Request
path Parameters
id
required
string <uuid>

ID of the managed server.

header Parameters
x-api-version
required
string
Default: 1.1-rev0

Version and revision of the client REST API. Must be in the following format: <version>-<revision>.

Request Body schema: application/json
required
credentialsId
required
string <uuid>

ID of a credentials record used to connect to the server.

description
required
string

Description of the server.

id
required
string <uuid>

ID of the server.

name
required
string

Full DNS name or IP address of the server.

type
required
string (EManagedServerType)

Type of the server.

object (WindowsHostPortsModel)

Veeam Backup & Replication components installed on the server and ports used by the components.

Responses
201

Infrastructure session has been created to edit the server. To check the progress, track the session state.

400

Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.

401

Unauthorized. The authorization header has been expected but not found (or found but is expired).

403

Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.

404

Not found. No object was found with the path parameter specified in the request.

500

Internal server error. The request has been received but could not be completed because of an internal error at the server side.

put/api/v1/backupInfrastructure/managedServers/{id}
Request samples
application/json
{
  • "sshSettings": {
    },
  • "type": "LinuxHost",
  • "id": "71988b5d-e338-4c62-81e5-05ea944d233e",
  • "name": "linuxsrv01.tech.local",
  • "description": "Backup repository",
  • "credentialsId": "76571109-fe6e-4638-ad37-2f1f30e3e9f1"
}
Response samples
application/json
{
  • "sessionType": "Infrastructure",
  • "state": "Working",
  • "id": "e81a72de-9b0a-4f4a-a451-0d0ece4c54b2",
  • "name": "Infrastructure Item Saving",
  • "activityId": "e81a72de-9b0a-4f4a-a451-0d0ece4c54b2",
  • "creationTime": "2022-01-28T20:18:47.563+01:00",
  • "endTime": null,
  • "progressPercent": 0,
  • "result": null,
  • "resourceId": null,
  • "resourceReference": null,
  • "parentSessionId": null,
  • "usn": 0
}

Remove Server

The HTTP DELETE request to the /api/v1/backupInfrastructure/managedServers/{id} path allows you to remove a managed server that has the specified id from the backup infrastructure.

SecurityBearer
Request
path Parameters
id
required
string <uuid>

ID of the managed server.

header Parameters
x-api-version
required
string
Default: 1.1-rev0

Version and revision of the client REST API. Must be in the following format: <version>-<revision>.

Responses
201

InfrastructureItemDeletion session has been created to remove the server. To check the progress, track the session state.

401

Unauthorized. The authorization header has been expected but not found (or found but is expired).

403

Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.

404

Not found. No object was found with the path parameter specified in the request.

500

Internal server error. The request has been received but could not be completed because of an internal error at the server side.

delete/api/v1/backupInfrastructure/managedServers/{id}
Request samples
Response samples
application/json
{
  • "sessionType": "InfrastructureItemDeletion",
  • "state": "Working",
  • "id": "af1a6027-3845-487e-9a16-6849f4775a1e",
  • "name": "Infrastructure Item Deletion",
  • "activityId": "fc5683a4-8c25-4f8e-97cc-0a40745a5729",
  • "creationTime": "2022-01-28T20:21:08.81+01:00",
  • "endTime": null,
  • "progressPercent": 0,
  • "result": null,
  • "resourceId": null,
  • "resourceReference": null,
  • "parentSessionId": null,
  • "usn": 0
}

Change to Single-Use Credentials

The HTTP POST request to the /api/v1/backupInfrastructure/managedServers/{id}/updateSingleUseCredentials path allows you to change from persistent to single-use credentials used to access a Linux server that has the specified id. Single-use type of credentials is required if you want to use the Linux server as a hardened repository.

SecurityBearer
Request
path Parameters
id
required
string <uuid>

ID of the managed server.

header Parameters
x-api-version
required
string
Default: 1.1-rev0

Version and revision of the client REST API. Must be in the following format: <version>-<revision>.

Request Body schema: application/json
required
username
required
string

User name.

type
required
string (ECredentialsType)

Credentials type.

password
string

Password.

description
string

Description of the credentials record.

tag
string

Tag used to identify the credentials record.

Responses
201

Infrastructure session has been created to edit the server. To check the progress, track the session state.

400

Bad request. This error is related to POST/PUT requests. The request body is malformed, incomplete or otherwise invalid.

401

Unauthorized. The authorization header has been expected but not found (or found but is expired).

403

Forbidden. The user sending the request does not have adequate privileges to access one or more objects specified in the request.

404

Not found. No object was found with the path parameter specified in the request.

500

Internal server error. The request has been received but could not be completed because of an internal error at the server side.

post/api/v1/backupInfrastructure/managedServers/{id}/updateSingleUseCredentials
Request samples
application/json
{
  • "username": "string",
  • "password": "string",
  • "description": "string",
  • "type": "Standard",
  • "tag": "string"
}
Response samples
application/json
{
  • "sessionType": "Infrastructure",
  • "state": "Working",
  • "id": "e81a72de-9b0a-4f4a-a451-0d0ece4c54b2",
  • "name": "Infrastructure Item Saving",
  • "activityId": "e81a72de-9b0a-4f4a-a451-0d0ece4c54b2",
  • "creationTime": "2022-01-28T20:18:47.563+01:00",
  • "endTime": null,
  • "progressPercent": 0,
  • "result": null,
  • "resourceId": null,
  • "resourceReference": null,
  • "parentSessionId": null,
  • "usn": 0
}