Skip to content

Read exact node credential retirement evidence, not physical cleanup

GET
/apis/nodus.dev/v1/nodes/{name}/retirement
curl --request GET \
--url 'https://example.com/apis/nodus.dev/v1/nodes/example/retirement?uid=example'
name
required
string

The object’s name.

uid
required
string

Exact immutable Node metadata.uid; absence is never retirement proof.

OK

Media type application/json

NodeRetirement proves only platform credential retirement for one retained host identity. Native access still requires local workload termination and verified device cleanup.

object
apiVersion
string
credentialGeneration
required

CredentialGeneration is the durable node-credential revocation fence.

integer format: int64
kind
string
node
required

Node names the immutable enrolled host.

string
nodeIdentityRevokedTime
required

NodeIdentityRevokedTime is the retained explicit node-identity tombstone time.

string
organizationUID
required

OrganizationUID binds the proof to the authenticated organization.

string
retired
required

Retired is true only when every retirement predicate agrees in one snapshot.

boolean
uid
required

UID is the exact Node metadata.uid supplied in the request.

string
Example generated
{
"apiVersion": "example",
"credentialGeneration": 1,
"kind": "example",
"node": "example",
"nodeIdentityRevokedTime": "example",
"organizationUID": "example",
"retired": true,
"uid": "example"
}

An error: a metav1.Status whose reason is a registered code.

Media type application/json

Status is the error body of every API response: a Kubernetes metav1.Status (so kubectl and client-go understand it) plus three top-level extensions that those clients ignore (ADR-028).

object
apiVersion
string
code
integer format: int32
details
object
causes
Array<object>
nullable
object
field
string
message
string
reason
string
group
string
kind
string
name
string
retryAfterSeconds
integer format: int32
uid
string
docs

Docs is the URL of the code’s docs page.

string
fix

Fix says what to do next, for example a CLI command or the field to change.

string
kind
string
message
string
metadata
object
continue
string
remainingItemCount
integer format: int64
resourceVersion
string
selfLink
string
shardInfo
object
selector
required
string
reason
string
requestId

RequestID identifies the request in logs and support tickets.

string
status
string
Example generated
{
"apiVersion": "example",
"code": 1,
"details": {
"causes": [
{
"field": "example",
"message": "example",
"reason": "example"
}
],
"group": "example",
"kind": "example",
"name": "example",
"retryAfterSeconds": 1,
"uid": "example"
},
"docs": "example",
"fix": "example",
"kind": "example",
"message": "example",
"metadata": {
"continue": "example",
"remainingItemCount": 1,
"resourceVersion": "example",
"selfLink": "example",
"shardInfo": {
"selector": "example"
}
},
"reason": "example",
"requestId": "example",
"status": "example"
}