NodeResource
Introduction
Node Resource.
Hosts the API to manage WASDI compute nodes:
List available nodes visible to the authenticated user.
Get, create, and update node details (admin only).
Share a node with another user and manage sharing permissions.
All endpoints are under the base path /node.
All endpoints require a valid session via the x-session-token header. The node detail, create, and update endpoints are restricted to admin users.
Common Models
NodeViewModel: nodeCode, cloudProvider, apiUrl
NodeFullViewModel: nodeCode, cloudProvider, apiUrl, nodeDescription, nodeGeoserverAddress, active, shared
NodeSharingViewModel: nodeCode, userId
PrimitiveResult: intValue, stringValue, doubleValue, boolValue
ErrorResponse: message
APIs
GET /node/allnodes
Description: Returns the list of WASDI nodes visible to the authenticated user. A node is included if it is active and at least one of the following is true: the user is an admin, the node is flagged as publicly shared, the node has been explicitly shared with the user, or it is the user’s default node. Non-active nodes are excluded unless the
all=trueflag is passed (admin only relevant in practice).HTTP Verb: GET
Headers: x-session-token
Query params: - all (boolean, optional) — if true, also includes inactive nodes; default false
Body: none
Success: - 200 OK, body: list of NodeViewModel (nodeCode, cloudProvider, apiUrl)
Notes: - Returns null on invalid session rather than an HTTP error code.
Return codes: - 200 OK (null body on invalid session)
GET /node
Description: Returns the full details of a specific node. Restricted to admin users.
HTTP Verb: GET
Headers: x-session-token
Query params: - node (string, required) — node code
Body: none
Success: - 200 OK, body: NodeFullViewModel
Return codes: - 200 OK - 400 Bad Request (node not found) - 401 Unauthorized (invalid session or not admin) - 500 Internal Server Error
POST /node
Description: Creates a new WASDI node. Restricted to admin users. The node code must be unique — if a node with the same code already exists the request is rejected.
HTTP Verb: POST
Headers: x-session-token
Query params: none
Body: NodeFullViewModel (required): nodeCode, cloudProvider, apiUrl, nodeDescription, nodeGeoserverAddress, active, shared
Success: - 200 OK
Return codes: - 200 OK - 400 Bad Request (missing nodeCode, or a node with that code already exists) - 401 Unauthorized (invalid session or not admin) - 500 Internal Server Error
PUT /node
Description: Updates an existing WASDI node. Restricted to admin users. The node identified by
nodeCodemust already exist.HTTP Verb: PUT
Headers: x-session-token
Query params: none
Body: NodeFullViewModel (required): nodeCode, cloudProvider, apiUrl, nodeDescription, nodeGeoserverAddress, active, shared
Success: - 200 OK
Return codes: - 200 OK - 400 Bad Request (missing nodeCode, or node not found) - 401 Unauthorized (invalid session or not admin) - 500 Internal Server Error