Skip to main content
POST
Suspend Agent

Headers

API-Version
string

Pin request, response, and webhook shapes to a specific dated API version (YYYY-MM-DD). Omit to use the version pinned to your API key (set when the key is created; new keys default to the latest version). New integrations should target the latest version.

Pattern: ^\d{4}-\d{2}-\d{2}$
Example:

"2026-10-16"

Path Parameters

did
string
required

The agent's DID, URL-encoded.

Example:

"did:web:humanos.tech:agent:2f8b6c41-9d37-4e5a-8b02-6c1d9e7a4f35"

Body

application/json
reason
string

Why, recorded on the agent's chain.

Example:

"under review"

Response

Returns the agent, now suspended.

id
string
required

The agent's DID.

Example:

"did:web:humanos.tech:agent:2f8b6c41-9d37-4e5a-8b02-6c1d9e7a4f35"

actorType
enum<string>
required

The kind of actor; always agent on these routes.

Available options:
agent,
organization,
user
Example:

"agent"

status
enum<string>
required

active | suspended | retired (v0.3 §4).

Available options:
active,
suspended,
retired
keys
object[]
required

The agent's keys, rotated and revoked ones included.

assurance
enum<string>
required

The agent's summary rung: the floor across its usable keys. Authorization reads each key's own.

Available options:
pop,
device,
hardware
Example:

"hardware"

binding
enum<string>
required

The binding of the agent's summary rung.

Available options:
self,
custodial,
attested
Example:

"attested"

bootstrapAnchor
enum<string>
required

What vouched for the agent when it was registered: an API key for every agent registered here.

Available options:
api_key,
manual
Example:

"api_key"

verifiedAt
string
required

When the assurance was last VERIFIED. A mandate bounds its own freshness against this (agent.verifiedAt >= now - duration("720h")); renewing an attestation moves it forward.

Example:

"2026-09-02T10:15:00.000Z"

existedSince
string
required

When the agent came to exist on the platform (v0.3 §3.1). It never moves, unlike verifiedAt.

Example:

"2026-09-02T10:15:00.000Z"

root
string

Trust root the attestation chained to.

Example:

"aws-nitro"

runtime
object

The runtime every usable key shares, dated by the oldest attestation among them; for reporting, never authorization. Absent when the keys do not share one.

operator
object

Pointer to the org-signed AFFILIATION event — presence and DID, never an inline claim — with the relation it asserts and, when it states one, when it lapses (validUntil). Nothing is recorded when an affiliation lapses: once validUntil has passed, or when the relation is not operates, a mandate whose rules read the operator's accreditation denies with affiliation_invalid.

Example: