Skip to main content
GET
Remediation Stats
string
Start of the window, RFC 3339 (e.g., 2026-03-01T00:00:00Z). An unparseable value is ignored.
string
End of the window, RFC 3339.

Calculation Methodology

Minimum role: viewer. Covers every namespace. RemediationPlans created in the window are grouped by their parent Issue, and success is judged by the Issue’s current state, not by each plan:
  • Successful: the parent Issue is Resolved
  • Failed: the parent Issue is in any other state (including Issues still being remediated)
So an Issue whose first two plans failed and third plan resolved it counts as one success. Each Issue counts once per strategy it used. The strategy label (action) is:
  • in agentic mode, the plan’s strategy field (the operator sets Agentic AI-driven remediation), or else the first action type in its history, or else Agentic;
  • otherwise, the type of the plan’s first action, or Unknown when it has none.
successRate is a ratio from 0 to 1. avgDuration is in seconds, averaged over plans that have both startedAt and completedAt. Items are sorted by total, highest first.
Plans whose parent Issue no longer exists are excluded. Plans still in progress are counted: their Issue is not Resolved yet, so they count as failures until it is.

Authorizations

X-API-Key
string
header
required

API key sent in the X-API-Key header. Keys are read from the Secret chatcli-operator-secrets, key api-keys (fallback: ConfigMap chatcli-operator-config, key api-keys) in the operator namespace, as a YAML list of {key, role, name, description} (name is the identity recorded on approval decisions); the operator chart creates it only with apiKeys.create: true. Roles: viewer < operator < admin — any other role string is denied everywhere. Changes are picked up within about 30 seconds; deleting both the Secret and the ConfigMap revokes every key. With no keys configured every /api/ call returns 401, unless CHATCLI_OPERATOR_DEV_MODE=true, which grants admin without a key (development only).

Query Parameters

from
string<date-time>

Start of the time range (RFC3339). Unparseable values are ignored.

Example:

"2026-03-01T00:00:00Z"

to
string<date-time>

End of the time range (RFC3339). Unparseable values are ignored.

Example:

"2026-03-19T23:59:59Z"

Response

Remediation stats

apiVersion
string
Example:

"v1"

kind
string
Example:

"RemediationStats"

metadata
object
items
object[]