Skip to content

Retrieve detailed configuration and status information for a specific node

Request

Get a node (appliance or agent)


Requires nodes::read permission.

Security
JWTAuthorizer
Path
nodeIDstringrequired

Node ID

curl -i -X GET \
  'https://apidocs.trustgrid.io/_mock/node/{nodeID}' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Responses

OK

Bodyapplication/json
clusterstring

Cluster FQDN

Example:"mycluster.trustgrid.io"
configobject

Node configuration. Each sub-key mirrors an individual PUT /node/{nodeID}/config/* endpoint. In direct single-node responses, this object contains the complete configuration. In list responses, config may be included when explicitly requested via projection; when returned that way, only the projected config fields are present.

namestring

Node name

Example:"mynode"
onlineboolean

True when the node is connected to the control plane

shadowobject

AWS IoT Device Shadow — the node's desired and reported state store. reported is a flat key-value map updated by the node itself; desired holds pending configuration the node has not yet acknowledged (usually empty). Most fields in reported use dot-notation keys. Common reported keys: node-core.version (software version), memory (RAM in MB), storage (disk free in GB), cores (CPU count), dnsResolution ("healthy"/"unhealthy"), repoConnectivity ("true"/"false"), os.distro.id (e.g., "ubuntu"), ssh.local ("true"/"false"), profile.name, node.upgrade.state, features (object of enabled feature flags), nic.{name}.mac/mtu/speed/dhcp (NIC telemetry).

statestring

Node state

Enum:"ACTIVE""INACTIVE"
tagsobject

User-defined tags for organizing and filtering nodes

typestring

Device type

Enum:"Agent""Node"
uidstring

Node ID

Example:"19084f81-5668-41ee-adbe-295e4c65531a"
fqdnstring

Fully qualified domain name, e.g., mynode.myorg.trustgrid.io. Omitted when projection[] is used without this field.

Example:"mynode.myorg.trustgrid.io"
lastipstring

Last IP address observed when the node connected. Omitted when projection[] is used without this field.

Example:"203.0.113.42"
last_connectinteger

Unix timestamp in milliseconds of the most recent control plane connection. Omitted when projection[] is used without this field.

orgstring

Organization ID (UUID) that owns this node. Returned only by GET /node/{nodeID}.

Example:"aad89024-5927-4ebd-97e2-3cc605c1da5f"
domainstring

Domain FQDN this node belongs to. Returned only by GET /node/{nodeID}.

Example:"myorg.trustgrid.io"
tgTagsobject

System-managed tags assigned by the Trustgrid platform. Read-only; always returned in list and single-node responses.

keysobject

Named cryptographic public keys used for node authentication and WireGuard tunneling. Keyed by purpose (e.g. wireguard, identity); values are opaque string-encoded public keys. Always returned but rarely needed directly.

tgrnstring

Trustgrid Resource Name — a globally unique identifier for this node across the platform. Format: tgrn:tg::nodes:node/{uid}. Always returned.

Example:"tgrn:tg::nodes:node/19084f81-5668-41ee-adbe-295e4c65531a"
created_atinteger

Unix timestamp (seconds) when the node was registered. Omitted when projection[] is used without this field.

deviceobject

Hardware device information detected from the physical or virtual appliance. Omitted when projection[] is used without this field.

locationobject

IP geolocation derived from the node's last observed IP address. Omitted when projection[] is used without this field.

heartbeatobject

Most recent heartbeat received from the node's control plane connection. Omitted when projection[] is used without this field.

lifecycleStatestring

Operational lifecycle state of the node. Omitted when projection[] is used without this field.

Enum:"pre-production""production""maintenance""decommissioned"
disconnectTimeinteger

Unix timestamp (seconds) when the node last disconnected from the control plane. Omitted when projection[] is used without this field.

orderIDstring

UUID of the hardware provisioning order associated with this node. Omitted when projection[] is used without this field.

Response
{ "cluster": "mycluster.trustgrid.io", "config": { "gateway": {}, "cluster": {}, "exec": {}, "snmp": {}, "alert": {}, "vpn": {}, "dns": {}, "network": {}, "services": {}, "connectors": {}, "_bgp": {}, "jvm": {} }, "name": "mynode", "online": true, "shadow": { "desired": {}, "reported": {} }, "state": "ACTIVE", "tags": { "property1": "string", "property2": "string" }, "type": "Agent", "uid": "19084f81-5668-41ee-adbe-295e4c65531a", "fqdn": "mynode.myorg.trustgrid.io", "lastip": "203.0.113.42", "last_connect": 0, "org": "aad89024-5927-4ebd-97e2-3cc605c1da5f", "domain": "myorg.trustgrid.io", "tgTags": { "property1": "string", "property2": "string" }, "keys": { "property1": "string", "property2": "string" }, "tgrn": "tgrn:tg::nodes:node/19084f81-5668-41ee-adbe-295e4c65531a", "created_at": 0, "device": { "mac": "string", "model": "string", "vendor": "string" }, "location": { "latitude": 0, "longitude": 0, "city": "string", "region": "string", "country": "string", "zipcode": "string" }, "heartbeat": { "nodeId": "string", "orgId": "string", "gatekeeper": "string", "timestamp": 0, "source": "string" }, "lifecycleState": "pre-production", "disconnectTime": 0, "orderID": "string" }