Events API

The events backend exposes a JSON HTTP API consumed by the UI extension via ArgoCD’s proxy at /extensions/events/.

Authorization

Every data endpoint requires the Argocd-Application-Name header (namespace:name format, set automatically by ArgoCD’s proxy). The backend returns 403 if the header is missing or if the requested namespace is not managed by that Application (its destination namespace plus namespaces in status.resources). The backend needs get on applications.argoproj.io for this lookup; the Helm chart grants it by default.

Endpoints

List events

GET /api/v1/events?namespace={ns}&kind={kind}&name={name}&type={type}&since={since}

List Kubernetes events with optional filters.

Parameters:

NameTypeRequiredDefaultDescription
namespacestringYes-Kubernetes namespace
kindstringNo-Filter by involved object kind (Pod, Deployment, etc.)
namestringNo-Filter by involved object name
typestringNo-Event type: Warning or Normal
sincestringNo1hTime window: 1h, 6h, 24h, 7d, or any Go duration

Response:

{
  "events": [
    {
      "type": "Warning",
      "reason": "BackOff",
      "message": "Back-off restarting failed container app in pod app-abc123",
      "involvedObject": {
        "kind": "Pod",
        "name": "app-abc123",
        "namespace": "default"
      },
      "count": 5,
      "firstTimestamp": "2026-03-30T08:00:00Z",
      "lastTimestamp": "2026-03-30T08:15:00Z",
      "source": {
        "component": "kubelet",
        "host": "node-1"
      }
    }
  ],
  "summary": {
    "total": 12,
    "warnings": 3,
    "normal": 9
  }
}

Health check

GET /healthz

Returns 200 OK when the service is running.

Error responses

{
  "error": "namespace is required"
}
StatusDescription
400Missing or invalid parameter (namespace required, invalid since format)
403Namespace authorization failed (missing Argocd-Application-Name header or namespace not managed by the Application)
500Kubernetes API query failed