Nodes
Nodes
Services for GCS endpoints may be deployed on multiple different physical resources. The Nodes API allows an administrator to manage those nodes.
Nodes Overview
Method | API Path | Description |
---|---|---|
|
List endpoint nodes |
|
|
Create a new node |
|
|
Get node |
|
|
Update a node |
|
|
Update a node |
|
|
Delete a node |
Details
List endpoint nodes
GET /api/nodes
Get the endpoint’s list of nodes.
This operation requires either the endpoint to have the public
property
set to true or the caller to have a role that allows viewing this endpoint
or a collection on it.
Authorization
-
PublicAuthorizer
-
RoleAuthorizer:
-
endpoint:owner
-
endpoint:administrator
-
endpoint:activity_manager
-
endpoint:activity_monitor
-
collection:administrator:*
-
collection:activity_manager:*
-
collection:activity_monitor:*
-
collection:access_manager:*
-
-
StorageGatewayAuthorizer
-
*
-
Query Parameters
Parameter | Type | Description |
---|---|---|
page_size |
integer <int> |
Maximum page size for a paginated response |
marker |
string |
Pagination marker for a paginated response |
Responses
200 - List nodes response
This is the result envelope returned from all operations in this API. Each operation may add properties to this base document type with additional operation-specific data values.
Name |
Type |
Description |
code |
string |
|
data |
array ( Node ) |
|
DATA_TYPE |
string |
Type of this document |
detail |
any type |
|
has_next_page |
boolean |
Boolean flag indicating whether or not additional pages of response data may be requested by passing the marker to the same operation. |
http_response_code |
integer |
Numeric HTTP response code |
marker |
string |
Opaque marker that may be passed to this API call to fetch the next
page of results if the returned document has |
message |
string |
Message describing this result |
{
"code": "success",
"data": [
{
"DATA_TYPE": "node#1.0.0",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"incoming_port_range": [
65535,
65535
],
"ip_addresses": [
"string"
],
"outgoing_port_range": [
65535,
65535
],
"status": "active"
}
],
"DATA_TYPE": "result#1.0.0",
"detail": null,
"has_next_page": false,
"http_response_code": 100,
"marker": "string",
"message": "string"
}
Create a new node
POST /api/nodes
Create a new node to describe a host which is providing service for this endpoint. This adds the node’s IP address to the DNS record for this endpoint’s GCS Manager and for all collections.
On success returns a copy of the created Node with the system generated id added.
Request body
Services for Globus Connect Server endpoints may be deployed on multiple different physical resources, referred to as data transfer nodes. Each node may have one or more IP addresses, TCP incoming and outgoing port ranges, and a status value indicating whether it is configured to actively respond to requests or is in maintenance mode.
Version 1.1.0 adds support for setting the data interface on a node.
One of the following schemas:
Example
{
"DATA_TYPE": "node#1.0.0",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"incoming_port_range": [
65535,
65535
],
"ip_addresses": [
"string"
],
"outgoing_port_range": [
65535,
65535
],
"status": "active"
}
Responses
200 - Create node response
This is the result envelope returned from all operations in this API. Each operation may add properties to this base document type with additional operation-specific data values.
Name |
Type |
Description |
code |
string |
|
data |
array ( Node ) |
|
DATA_TYPE |
string |
Type of this document |
detail |
any type |
|
has_next_page |
boolean |
Boolean flag indicating whether or not additional pages of response data may be requested by passing the marker to the same operation. |
http_response_code |
integer |
Numeric HTTP response code |
marker |
string |
Opaque marker that may be passed to this API call to fetch the next
page of results if the returned document has |
message |
string |
Message describing this result |
{
"code": "success",
"data": [
{
"DATA_TYPE": "node#1.0.0",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"incoming_port_range": [
65535,
65535
],
"ip_addresses": [
"string"
],
"outgoing_port_range": [
65535,
65535
],
"status": "active"
}
],
"DATA_TYPE": "result#1.0.0",
"detail": null,
"has_next_page": false,
"http_response_code": 100,
"marker": "string",
"message": "string"
}
403 - Permission denied
One of the following schemas:
Name |
Type |
Description |
code |
string |
|
http_response_code |
any type |
|
detail |
string or MissingRequiredRole |
|
DATA_TYPE |
string |
Type of this document |
data |
array of object |
|
has_next_page |
boolean |
Boolean flag indicating whether or not additional pages of response data may be requested by passing the marker to the same operation. |
marker |
string |
Opaque marker that may be passed to this API call to fetch the next
page of results if the returned document has |
message |
string |
Message describing this result |
Name |
Type |
Description |
code |
string |
|
http_response_code |
any type |
|
detail |
string or LimitExceeded |
|
DATA_TYPE |
string |
Type of this document |
data |
array of object |
|
has_next_page |
boolean |
Boolean flag indicating whether or not additional pages of response data may be requested by passing the marker to the same operation. |
marker |
string |
Opaque marker that may be passed to this API call to fetch the next
page of results if the returned document has |
message |
string |
Message describing this result |
{
"code": "permission_denied",
"http_response_code": 403,
"detail": "string",
"DATA_TYPE": "result#1.0.0",
"data": [
{}
],
"has_next_page": false,
"marker": "string",
"message": "string"
}
Details
Get node
GET /api/nodes/{node_id}
Get information about one of the endpoint’s node.
This operation requires either the endpoint to have the public property set to true or the caller to have a role that allows viewing this Endpoint or a Collection on it.
Authorization
-
PublicAuthorizer
-
RoleAuthorizer:
-
endpoint:owner
-
endpoint:administrator
-
endpoint:activity_manager
-
endpoint:activity_monitor
-
collection:administrator:*
-
collection:activity_manager:*
-
collection:activity_monitor:*
-
collection:access_manager:*
-
-
StorageGatewayAuthorizer
-
*
-
Responses
200 - Get node response
This is the result envelope returned from all operations in this API. Each operation may add properties to this base document type with additional operation-specific data values.
Name |
Type |
Description |
code |
string |
|
data |
array ( Node ) |
|
DATA_TYPE |
string |
Type of this document |
detail |
any type |
|
has_next_page |
boolean |
Boolean flag indicating whether or not additional pages of response data may be requested by passing the marker to the same operation. |
http_response_code |
integer |
Numeric HTTP response code |
marker |
string |
Opaque marker that may be passed to this API call to fetch the next
page of results if the returned document has |
message |
string |
Message describing this result |
{
"code": "success",
"data": [
{
"DATA_TYPE": "node#1.0.0",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"incoming_port_range": [
65535,
65535
],
"ip_addresses": [
"string"
],
"outgoing_port_range": [
65535,
65535
],
"status": "active"
}
],
"DATA_TYPE": "result#1.0.0",
"detail": null,
"has_next_page": false,
"http_response_code": 100,
"marker": "string",
"message": "string"
}
Update a node
PUT /api/nodes/{node_id}
Update a node, replacing all properties with those in the input. This
operation optionally returns the node’s definition after the update if the
include=node
query parameter is passed to this operation.
Query Parameters
Parameter | Type | Description |
---|---|---|
include |
array of string |
Flag indicating whether to request all roles assignments for the endpoint or collection. |
Request body
Services for Globus Connect Server endpoints may be deployed on multiple different physical resources, referred to as data transfer nodes. Each node may have one or more IP addresses, TCP incoming and outgoing port ranges, and a status value indicating whether it is configured to actively respond to requests or is in maintenance mode.
Version 1.1.0 adds support for setting the data interface on a node.
One of the following schemas:
Example
{
"DATA_TYPE": "node#1.0.0",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"incoming_port_range": [
65535,
65535
],
"ip_addresses": [
"string"
],
"outgoing_port_range": [
65535,
65535
],
"status": "active"
}
Responses
200 - Update node response
This is the result envelope returned from all operations in this API. Each operation may add properties to this base document type with additional operation-specific data values.
Name |
Type |
Description |
code |
string |
|
data |
array ( Node ) |
|
DATA_TYPE |
string |
Type of this document |
detail |
any type |
|
has_next_page |
boolean |
Boolean flag indicating whether or not additional pages of response data may be requested by passing the marker to the same operation. |
http_response_code |
integer |
Numeric HTTP response code |
marker |
string |
Opaque marker that may be passed to this API call to fetch the next
page of results if the returned document has |
message |
string |
Message describing this result |
{
"code": "success",
"data": [
{
"DATA_TYPE": "node#1.0.0",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"incoming_port_range": [
65535,
65535
],
"ip_addresses": [
"string"
],
"outgoing_port_range": [
65535,
65535
],
"status": "active"
}
],
"DATA_TYPE": "result#1.0.0",
"detail": null,
"has_next_page": false,
"http_response_code": 100,
"marker": "string",
"message": "string"
}
403 - Permission denied
This is the result envelope returned from all operations in this API. Each operation may add properties to this base document type with additional operation-specific data values.
Name |
Type |
Description |
code |
string |
|
http_response_code |
any type |
|
detail |
string or MissingRequiredRole |
|
DATA_TYPE |
string |
Type of this document |
data |
array of object |
|
has_next_page |
boolean |
Boolean flag indicating whether or not additional pages of response data may be requested by passing the marker to the same operation. |
marker |
string |
Opaque marker that may be passed to this API call to fetch the next
page of results if the returned document has |
message |
string |
Message describing this result |
{
"code": "permission_denied",
"http_response_code": 403,
"detail": "string",
"DATA_TYPE": "result#1.0.0",
"data": [
{}
],
"has_next_page": false,
"marker": "string",
"message": "string"
}
Update a node
PATCH /api/nodes/{node_id}
Update a node, changing only the properties included in the input document.
Items explicitly set to null in the input are removed from the Node
document. This operation optionally returns the node defintion after
applying the changes in the input if the include=node
query parameter is
passed to this operation.
Query Parameters
Parameter | Type | Description |
---|---|---|
include |
array of string |
Flag indicating whether to request all roles assignments for the endpoint or collection. |
Request body
Services for Globus Connect Server endpoints may be deployed on multiple different physical resources, referred to as data transfer nodes. Each node may have one or more IP addresses, TCP incoming and outgoing port ranges, and a status value indicating whether it is configured to actively respond to requests or is in maintenance mode.
Version 1.1.0 adds support for setting the data interface on a node.
One of the following schemas:
Example
{
"DATA_TYPE": "node#1.0.0",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"incoming_port_range": [
65535,
65535
],
"ip_addresses": [
"string"
],
"outgoing_port_range": [
65535,
65535
],
"status": "active"
}
Responses
200 - Update node response
This is the result envelope returned from all operations in this API. Each operation may add properties to this base document type with additional operation-specific data values.
Name |
Type |
Description |
code |
string |
|
data |
array ( Node ) |
|
DATA_TYPE |
string |
Type of this document |
detail |
any type |
|
has_next_page |
boolean |
Boolean flag indicating whether or not additional pages of response data may be requested by passing the marker to the same operation. |
http_response_code |
integer |
Numeric HTTP response code |
marker |
string |
Opaque marker that may be passed to this API call to fetch the next
page of results if the returned document has |
message |
string |
Message describing this result |
{
"code": "success",
"data": [
{
"DATA_TYPE": "node#1.0.0",
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"incoming_port_range": [
65535,
65535
],
"ip_addresses": [
"string"
],
"outgoing_port_range": [
65535,
65535
],
"status": "active"
}
],
"DATA_TYPE": "result#1.0.0",
"detail": null,
"has_next_page": false,
"http_response_code": 100,
"marker": "string",
"message": "string"
}
403 - Permission denied
This is the result envelope returned from all operations in this API. Each operation may add properties to this base document type with additional operation-specific data values.
Name |
Type |
Description |
code |
string |
|
http_response_code |
any type |
|
detail |
string or MissingRequiredRole |
|
DATA_TYPE |
string |
Type of this document |
data |
array of object |
|
has_next_page |
boolean |
Boolean flag indicating whether or not additional pages of response data may be requested by passing the marker to the same operation. |
marker |
string |
Opaque marker that may be passed to this API call to fetch the next
page of results if the returned document has |
message |
string |
Message describing this result |
{
"code": "permission_denied",
"http_response_code": 403,
"detail": "string",
"DATA_TYPE": "result#1.0.0",
"data": [
{}
],
"has_next_page": false,
"marker": "string",
"message": "string"
}
Delete a node
DELETE /api/nodes/{node_id}
Delete the Node
document for the given node.
Responses
200 - Delete node response
This is the result envelope returned from all operations in this API. Each operation may add properties to this base document type with additional operation-specific data values.
Name |
Type |
Description |
DATA_TYPE |
string |
Type of this document |
code |
string |
String response code |
data |
array of object |
|
detail |
any type |
|
has_next_page |
boolean |
Boolean flag indicating whether or not additional pages of response data may be requested by passing the marker to the same operation. |
http_response_code |
integer |
Numeric HTTP response code |
marker |
string |
Opaque marker that may be passed to this API call to fetch the next
page of results if the returned document has |
message |
string |
Message describing this result |
{
"DATA_TYPE": "result#1.0.0",
"code": "string",
"data": [
{}
],
"detail": null,
"has_next_page": false,
"http_response_code": 100,
"marker": "string",
"message": "string"
}
403 - Permission denied
This is the result envelope returned from all operations in this API. Each operation may add properties to this base document type with additional operation-specific data values.
Name |
Type |
Description |
code |
string |
|
http_response_code |
any type |
|
detail |
string or MissingRequiredRole |
|
DATA_TYPE |
string |
Type of this document |
data |
array of object |
|
has_next_page |
boolean |
Boolean flag indicating whether or not additional pages of response data may be requested by passing the marker to the same operation. |
marker |
string |
Opaque marker that may be passed to this API call to fetch the next
page of results if the returned document has |
message |
string |
Message describing this result |
{
"code": "permission_denied",
"http_response_code": 403,
"detail": "string",
"DATA_TYPE": "result#1.0.0",
"data": [
{}
],
"has_next_page": false,
"marker": "string",
"message": "string"
}