Skip to content

API reference

The control plane is a REST API at https://api.getkaizen.io. The SDKs wrap it, but you can call it directly.

Authentication

Send a bearer token in the Authorization header.

  • Agent traffic uses an API key that starts with kz_live_, created on the API keys page.
  • Console and management calls use the signed-in user's token.
Authorization: Bearer kz_live_...

The action and verdict shape

You report an action; Kaizen returns a verdict.

// action
{
  "kind": "tool_call",          // tool_call | connect | http | file | ...
  "tool": "issue_refund",
  "target": "api.stripe.com:443",
  "publisher": "stripe",
  "metadata": { "source": "egress" }   // how it was observed
}
// verdict
{
  "decision": "allow",          // allow | block
  "reason": "ok",
  "evidence": [],
  "confidence": null            // set when the reasoning check weighed in
}

Endpoints

Report and read verdicts

Method Path Purpose
POST /v1/verdicts Report an action; record the verdict
GET /v1/verdicts List verdicts. Query: agent, status, decision, source, q, since, limit, offset
POST /v1/verdicts/{id}/status Triage: { "status": "acknowledged \| resolved \| false_positive" }
POST /v1/verdicts/{id}/learn Fold the action into the agent's baseline and declaration

Agents

Method Path Purpose
GET /v1/agents/profiles Every agent: activity, observation depth, declaration
POST /v1/agents/{agent}/manifest Declare expected behaviour: { "tools": [], "destinations": [] }
POST /v1/agents/{agent}/settings { "paused": false, "judge_enabled": true }
POST /v1/agents/{agent}/reset Forget the learned baseline

Policy, model, and metrics

Method Path Purpose
GET / POST /v1/org-policy Org-wide blocklist / allowlist
GET / POST /v1/llm-config Reasoning model (BYO key), budget, confidence threshold
GET /v1/judge/usage Reasoning-check usage today and this week
GET /v1/metrics/timeseries Daily actions, anomalies, reviews

Keys, exports, and team

Method Path Purpose
GET / POST /v1/keys List and create API keys
GET / POST / DELETE /v1/webhooks Export destinations (webhook, Slack, Datadog, Splunk, PagerDuty)
GET /v1/members, /v1/audit Team and audit log
POST /v1/members/invite, /v1/members/role Invite and set roles (owner/admin only)

Errors

Standard HTTP status codes. 401 for a missing or invalid token, 403 when a viewer attempts a change, 404 for an unknown id, 400 for a malformed body.