コンテンツにスキップ

Interfaces discovered on a node, with query-time utilization.

GET
/api/v1/nodes/{node_id}/interfaces
curl --request GET \
--url https://example.com/api/v1/nodes/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/interfaces \
--header 'Authorization: Bearer <token>'

View, not ManageConfig — unlike the rest of this module. An interface list is device state an operator reads, not a setting they author. Skeleton mode answers an empty list rather than 503: the interface inventory is PostgreSQL-only, so “none known” is the truthful answer.

node_id
required
string format: uuid

Node id

Interfaces known for this node with query-time utilization; empty in skeleton mode

Media typeapplication/json
Array<object>

One interface row for the node-detail Interfaces tab: stored metadata joined with query-time rate()/latest() metrics. Utilization is derived here and never stored (ADR-012).

object
if_alias
string | null
if_name
string | null
if_speed_bps
integer | null format: int64
ifindex
required
integer format: int32
in_bps
number | null format: double
in_util_pct
number | null format: double
last_seen_unix
integer | null format: int64
oper_status
number | null format: double
out_bps
number | null format: double
out_util_pct
number | null format: double
stale
required
boolean
Examplegenerated
[
{
"if_alias": "example",
"if_name": "example",
"if_speed_bps": 1,
"ifindex": 1,
"in_bps": 1,
"in_util_pct": 1,
"last_seen_unix": 1,
"oper_status": 1,
"out_bps": 1,
"out_util_pct": 1,
"stale": true
}
]

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 View

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"
}
}