Skip to main content
GET
List Approvals
string
Filter by state (exact match): Pending, Approved, Rejected, Expired
string
Filter by namespace (omit for all namespaces)
integer
default:"1"
Page number
integer
default:"20"
Items per page (maximum 100)
Each item is an ApprovalRequest custom resource projected into a flat shape: The AI evidence and timeout are not part of this projection; read them from the resource with kubectl get approvalrequest <name> -o yaml.

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

namespace
string

Kubernetes namespace. Empty means all namespaces.

state
enum<string>

Exact match on the reported state.

Available options:
Pending,
Approved,
Rejected,
Expired
page
integer
default:1

Page number (1-based). Invalid values fall back to 1.

Required range: x >= 1
pageSize
integer
default:20

Items per page. Values above 100 are capped at 100.

Required range: 1 <= x <= 100

Response

Paginated list of approval requests

apiVersion
string
Example:

"v1"

kind
string
Example:

"ApprovalRequestList"

metadata
object
items
object[]