- Home
- Resources
- Nodes Controller
The API allows you to list, view, edit and register nodes.
GET /nodes
Request Parameters
| name |
type |
description |
| direction |
query |
|
| filter |
query |
|
| nameLike |
query |
|
| nodeConfigGuid |
query |
|
| orderBy |
query |
|
| page |
query |
|
| size |
query |
|
Response Body
| media type |
data type |
description |
| application/json |
array of NodeListRecord
(JSON) |
|
Example
Request
GET /nodes
Content-Type: */*
Accept: application/json
...
Response
HTTP/1.1 200 OK
Content-Type: application/json
[ {
"guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
"nodeIp" : "https://some.host:8181/api",
"state" : {
"name" : "ENUM_NAME",
"description" : "Enum description"
}
} ]
POST /nodes
Create a node.
Request Parameters
| name |
type |
description |
constraints |
| existing |
query |
specify whether node exists |
boolean |
Request Body
| media type |
data type |
description |
| application/json |
NodeRegistrationRequest
(JSON) |
specify details for new node |
Response Body
| media type |
data type |
description |
| application/json |
NodeRegistrationResponse
(JSON) |
details of newly created node |
Example
Request
POST /nodes
Content-Type: application/json
Accept: application/json
{ }
Response
HTTP/1.1 201 Created
Content-Type: application/json
{
"guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67"
}
GET /nodes/for-restore
Request Parameters
| name |
type |
description |
constraints |
| backup-to-be-restored |
query |
|
required, not empty |
Response Body
| media type |
data type |
description |
| application/json |
array of NodeListRecord
(JSON) |
|
Example
Request
GET /nodes/for-restore
Content-Type: */*
Accept: application/json
...
Response
HTTP/1.1 200 OK
Content-Type: application/json
[ {
"guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
"nodeIp" : "https://some.host:8181/api",
"state" : {
"name" : "ENUM_NAME",
"description" : "Enum description"
}
} ]
GET /nodes/reduced
Request Parameters
| name |
type |
description |
| direction |
query |
|
| filter |
query |
|
| nameLike |
query |
|
| nodeConfigGuid |
query |
|
| orderBy |
query |
|
| page |
query |
|
| size |
query |
|
Response Body
| media type |
data type |
description |
| application/json |
array of NodeReducedListRecord
(JSON) |
|
Example
Request
GET /nodes/reduced
Content-Type: */*
Accept: application/json
...
Response
HTTP/1.1 200 OK
Content-Type: application/json
[ {
"guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67"
} ]
DELETE /nodes/{guid}
Remove node.
Request Parameters
| name |
type |
description |
| guid |
path |
specify local unique identifier for node (use by vProtect) |
Example
Request
DELETE /nodes/{guid}
Content-Type: */*
...
Response
HTTP/1.1 204 No Content
GET /nodes/{guid}
Get a single node.
Request Parameters
| name |
type |
description |
| guid |
path |
specify local unique identifier for node (use by vProtect) |
Response Body
| media type |
data type |
description |
| application/json |
NodeDetails
(JSON) |
a singe node details |
Example
Request
GET /nodes/{guid}
Content-Type: */*
Accept: application/json
...
Response
HTTP/1.1 200 OK
Content-Type: application/json
{
"guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
"lastSeen" : 1451649601000
}
PUT /nodes/{guid}
Change node details.
Request Parameters
| name |
type |
description |
| guid |
path |
specify local unique identifier for node (use by vProtect) |
Request Body
| media type |
data type |
description |
| application/json |
NodeUpdateRequest
(JSON) |
specify node details to update |
Example
Request
PUT /nodes/{guid}
Content-Type: application/json
{ }
Response
HTTP/1.1 204 No Content
PUT /nodes/{guid}/hypervisor-managers
Assign hypervisor managers to specified node.
Request Parameters
| name |
type |
description |
| guid |
path |
specify local unique identifier for node (use by vProtect) |
Request Body
| media type |
data type |
description |
| application/json |
array of NameAndGuid
(JSON) |
specify list of hypervisor managers that will be assigned to node |
Response Body
| media type |
data type |
description |
| application/json |
array of HypervisorManagerListRecord
(JSON) |
list of assigned hypervisor managers to node |
Example
Request
PUT /nodes/{guid}/hypervisor-managers
Content-Type: application/json
Accept: application/json
[ {
"guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
"name" : "Entity name"
} ]
Response
HTTP/1.1 204 No Content
Content-Type: application/json
[ {
"guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
"type" : {
"name" : "ENUM_NAME",
"description" : "Enum description"
}
} ]
PUT /nodes/{guid}/hypervisors
Assign hypervisors to specified node.
Request Parameters
| name |
type |
description |
| guid |
path |
specify local unique identifier for node (use by vProtect) |
Request Body
| media type |
data type |
description |
| application/json |
array of NameAndGuid
(JSON) |
specify list of hypervisors that will be assigned to node |
Response Body
| media type |
data type |
description |
| application/json |
array of HypervisorListRecord
(JSON) |
list of assigned hypervisors to node |
Example
Request
PUT /nodes/{guid}/hypervisors
Content-Type: application/json
Accept: application/json
[ {
"guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
"name" : "Entity name"
} ]
Response
HTTP/1.1 204 No Content
Content-Type: application/json
[ {
"guid" : "f8f73bf9-2445-4bce-a7dd-753be3b40a67",
"type" : {
"name" : "ENUM_NAME",
"description" : "Enum description"
}
} ]
PUT /nodes/{guid}/state
Change node state.
Request Parameters
| name |
type |
description |
| guid |
path |
specify local unique identifier for node (use by vProtect) |
Request Body
| media type |
data type |
description |
| application/json |
NodeState
(JSON) |
specify node state to change |
Example
Request
PUT /nodes/{guid}/state
Content-Type: application/json
"RUNNING"
Response
HTTP/1.1 204 No Content
PUT /nodes/{guid}/stop
Request Node stop.
Request Parameters
| name |
type |
description |
| guid |
path |
specify local unique identifier for node (use by vProtect) |
Example
Request
PUT /nodes/{guid}/stop
Content-Type: application/json
...
Response
HTTP/1.1 204 No Content