コンテンツにスキップ

Name the node a poller attaches to, rooting the derived dependency graph.

PUT
/api/v1/pollers/{id}/anchor
curl --request PUT \
--url https://example.com/api/v1/pollers/example/anchor \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "node_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0" }'

Direction in the derived graph comes from distance to a poller, so core has to know where each poller sits. It works that out from the addresses the poller reports — but a poller running in a container reports a container-network address that matches no monitored node, which is the common case rather than the unusual one. This is how an operator says where it really is.

Until every pool that has nodes has a placed poller, derived suppression cannot be enabled.

id
required
string

Poller id

Media typeapplication/json

Where a poller attaches to the monitored network.

object
node_id

The node the poller sits behind. null clears the anchor, returning the poller to being placed by its own reported addresses.

string | null format: uuid
Examplegenerated
{
"node_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0"
}

The anchor was set or cleared

No valid bearer token

Media typeapplication/json

The ADR-019 envelope every failure renders as. pub(crate) and schema-bearing so the OpenAPI document can name one error shape for every endpoint (ADR-035) instead of leaving 4xx/5xx bodies undescribed — a client that has to guess the failure shape ends up parsing the success shape and reading undefined.

object
error
required
object
code
required

Stable machine-readable code. Clients branch on this, never on the message.

string
message
required

Operator-facing sentence. Safe to display; never carries an internal error’s own text.

string
Examplegenerated
{
"error": {
"code": "example",
"message": "example"
}
}

Role lacks the ManageConfig permission

Media typeapplication/json

The ADR-019 envelope every failure renders as. pub(crate) and schema-bearing so the OpenAPI document can name one error shape for every endpoint (ADR-035) instead of leaving 4xx/5xx bodies undescribed — a client that has to guess the failure shape ends up parsing the success shape and reading undefined.

object
error
required
object
code
required

Stable machine-readable code. Clients branch on this, never on the message.

string
message
required

Operator-facing sentence. Safe to display; never carries an internal error’s own text.

string
Examplegenerated
{
"error": {
"code": "example",
"message": "example"
}
}

No such poller, or no such node

Media typeapplication/json

The ADR-019 envelope every failure renders as. pub(crate) and schema-bearing so the OpenAPI document can name one error shape for every endpoint (ADR-035) instead of leaving 4xx/5xx bodies undescribed — a client that has to guess the failure shape ends up parsing the success shape and reading undefined.

object
error
required
object
code
required

Stable machine-readable code. Clients branch on this, never on the message.

string
message
required

Operator-facing sentence. Safe to display; never carries an internal error’s own text.

string
Examplegenerated
{
"error": {
"code": "example",
"message": "example"
}
}

Skeleton mode: no durable poller store

Media typeapplication/json

The ADR-019 envelope every failure renders as. pub(crate) and schema-bearing so the OpenAPI document can name one error shape for every endpoint (ADR-035) instead of leaving 4xx/5xx bodies undescribed — a client that has to guess the failure shape ends up parsing the success shape and reading undefined.

object
error
required
object
code
required

Stable machine-readable code. Clients branch on this, never on the message.

string
message
required

Operator-facing sentence. Safe to display; never carries an internal error’s own text.

string
Examplegenerated
{
"error": {
"code": "example",
"message": "example"
}
}