--- title: Endpoint index description: Every HTTP endpoint ClawMetry serves, grouped by feature, with methods — the query API, the dashboard feature APIs, the ingest surfaces and the controls. keywords: clawmetry API endpoints, agent observability REST API, clawmetry endpoint list eyebrow: HTTP API --- # Endpoint index Every endpoint the dashboard serves. The `/api/local/*` group is the [versioned query contract](/docs/data/query-api/) and is the one to build on; the rest back dashboard pages and can change with the UI. Base URL is `http://localhost:8900` unless you moved it. Where a token is required, pass `Authorization: Bearer ` — see [Authentication](/docs/api/auth/). ## Query API | Method | Path | |---|---| | `GET` | `/api/local/health` | | `GET` | `/api/local/events` | | `GET` | `/api/local/sessions` | | `GET` | `/api/local/aggregates` | | `GET` | `/api/local/transcript/` | | `GET` | `/api/local/spans/` | | `GET` | `/api/local/spans` | | `GET` | `/api/local/traces` | | `GET` | `/api/local/external-calls` | | `GET` | `/api/local/search` | | `GET` | `/api/local/agent-graph` | | `GET` | `/api/local/sandbox-logs/` | | `POST` | `/api/local/query` | | `POST` | `/__local_query__/` | ## Overview | Method | Path | |---|---| | `POST` | `/api/channels` | | `GET, POST, PUT, PATCH, DELETE` | `/api/cloud-proxy/` | | `POST` | `/api/cloud-cta/oauth-start` | | `POST` | `/api/cloud-cta/oauth-status` | | `POST` | `/api/cloud-cta/verify-otp` | | `GET` | `/api/device/summary` | ## Agents | Method | Path | |---|---| | `GET` | `/api/agents` | | `GET` | `/api/agents/` | | `GET` | `/api/agents//sessions` | | `POST` | `/api/inventory` | ## Sessions and transcripts | Method | Path | |---|---| | `POST` | `/api/sessions` | | `POST` | `/api/agents//pause` | | `POST` | `/api/agents//resume` | | `POST` | `/api/agents//stop` | | `POST` | `/api/agents/audit` | | `DELETE` | `/api/error-triage/resolve` | | `GET` | `/api/error-triage/resolved` | ## Activity | Method | Path | |---|---| | `GET` | `/api/brain-history` | | `GET` | `/api/llm-call-timeline/` | | `GET` | `/api/brain-event/` | | `GET` | `/api/brain-stream` | | `GET` | `/api/brain/clusters` | | `GET` | `/api/brain/why//` | ## Usage and cost | Method | Path | |---|---| | `POST` | `/api/usage` | | `GET` | `/api/usage/by-plugin` | | `POST` | `/api/usage/team-mappings` | | `DELETE` | `/api/usage/team-mappings//` | | `GET` | `/api/token-velocity` | | `GET` | `/api/forward-progress` | | `GET` | `/api/usage/cache-trends` | | `GET` | `/api/usage/cache-risk` | | `GET` | `/api/skills/fidelity` | | `GET` | `/api/token-attribution` | | `GET` | `/api/nemo-cap-status` | | `GET` | `/api/usage/optimization-recommendations` | | `GET` | `/api/efficiency` | | `GET` | `/api/efficiency/cache-hit-rate` | | `GET` | `/api/efficiency/routing-advisor` | | `GET` | `/api/usage/compression` | ## Tracing | Method | Path | |---|---| | `GET` | `/api/traces` | | `GET` | `/api/trace/` | ## Turn anatomy | Method | Path | |---|---| | `GET` | `/api/turn-anatomy` | | `GET` | `/api/turn-anatomy/stalled` | ## Context usage | Method | Path | |---|---| | `GET` | `/api/context-economics` | ## Tools and MCP | Method | Path | |---|---| | `GET` | `/api/tool-catalog` | | `GET` | `/api/tool-catalog//calls` | | `GET` | `/api/mcp-servers` | ## Flow components | Method | Path | |---|---| | `GET` | `/api/component/tool/` | | `GET` | `/api/component/runtime` | | `GET` | `/api/component/machine` | | `GET` | `/api/component/storage` | | `GET` | `/api/component/network` | | `GET` | `/api/component/gateway` | | `GET` | `/api/component/brain` | | `GET` | `/api/component/mcp` | ## Guard | Method | Path | |---|---| | `POST` | `/api/guard/sessions` | | `GET, POST` | `/api/guard/policies` | | `DELETE` | `/api/guard/policies/` | | `GET` | `/api/guard/baselines` | | `GET` | `/api/guard/actions` | ## Tool permissions | Method | Path | |---|---| | `POST` | `/api/tool-policy` | | `POST` | `/api/approvals//decide` | ## Approvals | Method | Path | |---|---| | `POST` | `/api/hitl/flag` | | `GET` | `/api/hitl/pending` | | `POST` | `/api/hitl/decide` | | `GET` | `/api/hitl/status/` | ## Alerts and budgets | Method | Path | |---|---| | `GET, POST` | `/api/alerts/defaults` | | `POST` | `/api/budget/status` | | `POST` | `/api/budget/pause` | | `POST` | `/api/budget/resume` | | `POST` | `/api/budget/pause-gateway` | | `POST` | `/api/budget/resume-gateway` | | `GET` | `/api/emergency-stop/status` | | `POST` | `/api/emergency-stop` | | `POST` | `/api/emergency-stop/clear` | | `GET` | `/api/budget/is-over-cap` | | `GET` | `/api/agents//budget` | | `PUT` | `/api/agents//budget` | | `DELETE` | `/api/agents//budget` | | `POST` | `/api/budget/test-telegram` | | `GET, POST` | `/api/alerts/rules` | | `PUT, DELETE` | `/api/alerts/rules/` | | `POST` | `/api/alerts/history` | | `GET, POST` | `/api/alerts/active` | | `POST` | `/api/alerts/webhook/test` | | `GET, POST` | `/api/alerts/velocity` | | `POST` | `/api/alert-channels/test` | | `POST` | `/api/_harness/inject-cost` | ## Schedules | Method | Path | |---|---| | `POST` | `/api/crons` | | `POST` | `/api/cron/run` | | `POST` | `/api/cron/toggle` | | `POST` | `/api/cron/delete` | | `POST` | `/api/cron/update` | | `POST` | `/api/cron/create` | | `POST` | `/api/cron//runs` | | `POST` | `/api/cron-run-log` | | `GET` | `/api/agent-intentions` | | `GET` | `/api/cron-health` | ## Chat channels | Method | Path | |---|---| | `GET` | `/api/channels//status` | | `GET` | `/api/channels/status` | | `GET` | `/api/channels//messages` | | `GET` | `/api/channels//threads` | | `GET` | `/api/channels/summary` | | `GET` | `/api/channel-delivery-health` | | `GET` | `/api/channel/telegram` | | `GET` | `/api/channel/imessage` | | `GET` | `/api/channel/whatsapp` | | `GET` | `/api/channel/signal` | | `GET` | `/api/channel/discord` | | `GET` | `/api/channel/slack` | | `GET` | `/api/channel/irc` | | `GET` | `/api/channel/webchat` | | `GET` | `/api/channel/googlechat` | | `GET` | `/api/channel/bluebubbles` | | `GET` | `/api/channel/msteams` | | `GET` | `/api/channel/tui` | | `GET` | `/api/channel/matrix` | | `GET` | `/api/channel/mattermost` | | `GET` | `/api/channel/line` | | `GET` | `/api/channel/nostr` | | `GET` | `/api/channel/twitch` | | `GET` | `/api/channel/feishu` | | `GET` | `/api/channel/zalo` | | `GET` | `/api/channel/tlon` | | `GET` | `/api/channel/synology-chat` | | `GET` | `/api/channel/nextcloud-talk` | | `GET` | `/api/channel/clickclack` | ## Health and diagnostics | Method | Path | |---|---| | `POST` | `/healthz` | | `GET` | `/api/agent-presence` | | `GET` | `/api/rate-limits` | | `GET` | `/api/health-stream` | | `GET` | `/api/sandbox-status` | | `GET` | `/api/loop-detection` | | `GET` | `/api/loop-signals` | | `GET` | `/api/backups` | | `GET` | `/api/mcp-stats` | | `GET` | `/api/handler-latency` | | `GET` | `/api/version-health` | | `GET` | `/api/authority-violations` | | `GET` | `/api/security-threats` | | `GET` | `/api/doctor-findings` | ## Logs, memory and security | Method | Path | |---|---| | `GET` | `/api/logs` | | `POST, PUT` | `/api/file` | | `GET` | `/api/memory-analytics` | | `GET` | `/api/memory-rag` | | `GET` | `/api/memory-rag/search` | | `GET` | `/api/memory-access` | | `GET` | `/api/security/threats` | | `GET` | `/api/security/signatures` | | `GET` | `/api/security/posture` | | `GET` | `/api/security/policy-events` | | `GET` | `/api/security/integrity` | | `GET` | `/api/security/audit` | | `GET` | `/api/security/credential-scan` | | `GET` | `/api/llmfit` | | `GET` | `/api/cost-optimizer` | | `GET` | `/api/cost-optimization` | | `GET` | `/api/automation-analysis` | | `GET` | `/api/context-anatomy` | ## Memory | Method | Path | |---|---| | `GET` | `/api/runtimes/memory-catalog` | | `GET` | `/api/runtimes//files` | | `GET` | `/api/runtimes//file` | ## Skills | Method | Path | |---|---| | `GET` | `/api/skills/workshop` | | `GET` | `/api/skills` | | `GET` | `/api/skills/` | | `GET` | `/api/skills//file` | ## Evals | Method | Path | |---|---| | `GET` | `/api/evaluators` | | `GET` | `/api/evals/recent` | | `GET` | `/api/evals/summary` | | `POST` | `/api/evals/rescore/` | | `GET` | `/api/evals/rubric` | | `GET` | `/api/evals/regression-summary` | | `GET` | `/api/evals/key` | | `POST` | `/api/evals/key` | | `POST` | `/api/evals/rubric` | ## Review | Method | Path | |---|---| | `GET` | `/api/review/queue` | | `POST` | `/api/review/` | | `GET` | `/api/review/accuracy` | | `POST` | `/api/review/sample` | ## Reports | Method | Path | |---|---| | `GET` | `/api/reports` | | `GET` | `/reports/` | | `GET` | `/reports/` | | `GET` | `/reports//export.csv` | ## Ask | Method | Path | |---|---| | `POST` | `/api/advisor/ask` | | `GET` | `/api/advisor/status` | | `POST` | `/api/dives/history` | | `POST` | `/api/dives/save` | | `DELETE` | `/api/dives` | ## Insights | Method | Path | |---|---| | `GET` | `/api/insights/preview` | | `GET` | `/api/insights/history` | | `POST` | `/api/insights/send-now` | | `GET, POST` | `/api/insights/config` | | `GET` | `/insights` | ## Self-Evolve | Method | Path | |---|---| | `POST` | `/api/selfevolve/status` | | `POST` | `/api/selfevolve/fix` | | `POST` | `/api/selfevolve/fix/status` | ## Runtime extras | Method | Path | |---|---| | `GET` | `/api/harness/templates` | | `GET` | `/api/harness/data` | ## Custom runtime ingest | Method | Path | |---|---| | `GET` | `/api/v1/runtimes` | | `POST` | `/api/v1/runs` | | `POST` | `/api/v1/runs//events` | | `POST` | `/api/v1/runs//end` | | `GET` | `/api/v1/runs/` | | `GET, POST, PUT, PATCH, DELETE` | `/api/v1/engines` | | `GET, POST, PUT, PATCH, DELETE` | `/api/v1/engines/` | ## Meta, gateway and OTLP | Method | Path | |---|---| | `GET` | `/api/export/traces` | | `POST` | `/api/version` | | `GET, POST` | `/api/install-age` | | `POST` | `/api/gw/invoke` | | `POST` | `/api/gw/rpc` | | `POST` | `/api/auth/check` | | `POST` | `/auth` | | `POST` | `/v1/traces` | | `POST` | `/v1/logs` | | `POST` | `/api/otel-status` | ## OTel export | Method | Path | |---|---| | `GET` | `/api/otel/export` | ## Entitlement | Method | Path | |---|---| | `POST` | `/api/entitlement` | | `POST` | `/api/entitlement/upgrade-diff` | | `POST` | `/api/paywall/events/summary` | | `POST` | `/api/license/verify` | | `POST` | `/api/license/deactivate` | | `POST` | `/api/entitlement/next-tier-unlocks-at` | | `POST` | `/api/entitlement/feature-catalog-path-batch` | | `POST` | `/api/entitlement/feature-spec-at-path` | | `POST` | `/api/entitlement/min-tier-for-runtimes-batch` | | `POST` | `/api/entitlement/required-tier-bundle-batch` | | `POST` | `/api/entitlement/required-tier-bundle-batch-at` | | `POST` | `/api/entitlement/tiers-for-features-batch` | | `POST` | `/api/entitlement/tiers-for-runtimes-batch` | | `POST` | `/api/entitlement/min-tier-for-features-at-batch` | | `POST` | `/api/entitlement/min-tier-for-runtimes-at-batch` | | `POST` | `/api/entitlement/tiers-for-features-at-batch` | | `POST` | `/api/entitlement/tiers-for-runtimes-at-batch` | | `GET` | `/api/entitlement/runtime-detection` | ## Trial | Method | Path | |---|---| | `GET` | `/api/trial/status` | | `POST` | `/api/trial/refresh-license` | | `POST` | `/api/trial/continue-free` | | `POST` | `/api/trial/exit-free` | | `POST` | `/api/trial/mark-warned` | ## Updates | Method | Path | |---|---| | `GET` | `/api/update-check/config` | | `POST` | `/api/update-check/config` | | `GET` | `/api/update-check/status` | | `POST` | `/api/update-check/check-now` | | `POST` | `/api/update-check/dismiss` | | `GET` | `/api/update-check/history` | ## Extensions | Method | Path | |---|---| | `GET` | `/api/extensions` | ## Plugins | Method | Path | |---|---| | `GET` | `/api/plugins` | ## Fleet and history | Method | Path | |---|---| | `POST` | `/fleet` | | `POST` | `/api/nodes//metrics` | | `GET` | `/api/nodes` | | `GET` | `/api/nodes/` | ## Heartbeat | Method | Path | |---|---| | `GET` | `/api/heartbeat` | | `GET` | `/api/heartbeat-loops` | ## Device | Method | Path | |---|---| | `GET` | `/api/device/snapshot` | | `GET` | `/device-preview` | ## Cloud and sync status | Method | Path | |---|---| | `GET, POST` | `/api/cloud/approvals` | | `GET, POST` | `/api/cloud/integrations` | | `GET` | `/api/sync-progress` | | `GET` | `/api/cloud-status` | ## Self-hosted ingest | Method | Path | |---|---| | `POST` | `/auth` | | `POST` | `/api/register` | | `POST` | `/ingest/heartbeat` | | `POST` | `/ingest/events` | | `POST` | `/api/ingest` | | `POST` | `/ingest/sessions` | | `POST` | `/ingest/logs` | | `POST` | `/ingest/memory` | | `POST` | `/ingest/system-snapshot` | | `POST` | `/ingest/stream` | | `POST` | `/ingest/autonomy` | | `POST` | `/ingest/cache` | | `POST` | `/api/selfhosted/subscribe` | | `GET` | `/api/cloud/cache/` | | `GET` | `/api/cloud/brain` | | `GET` | `/api/cloud/policies` | | `POST` | `/api/cloud/alerts/dispatch` | | `POST` | `/api/approvals/request` | | `GET` | `/api/approvals/` | | `POST` | `/api/selfhosted/approvals//decision` | | `GET` | `/api/export/events` | | `GET` | `/api/selfhosted/nodes` | | `GET` | `/api/selfhosted/status` | ## NemoClaw governance | Method | Path | |---|---| | `POST` | `/api/nemoclaw/governance` | | `POST` | `/api/nemoclaw/status` | | `POST` | `/api/nemoclaw/reject` | | `GET` | `/api/nemoclaw/pending-approvals` | | `POST` | `/api/nemoclaw/rules` | | `DELETE` | `/api/nemoclaw/rules/` | ## Compliance | Method | Path | |---|---| | `GET` | `/api/compliance/status` | | `GET` | `/api/compliance/article50/preview` | | `GET` | `/api/compliance/article50/rollup` | | `GET` | `/api/compliance/evidence-pack` | ## Audit | Method | Path | |---|---| | `GET` | `/api/audit-log` | ## Asset registry | Method | Path | |---|---| | `GET` | `/api/assets` | | `GET` | `/api/assets/` | | `POST` | `/api/assets` | | `POST` | `/api/assets//review` | ## SLA | Method | Path | |---|---| | `GET, POST` | `/api/sla/policies` | | `DELETE` | `/api/sla/policies/` | | `GET` | `/api/sla/status` | ## Run ledger | Method | Path | |---|---| | `GET` | `/api/run-ledger` | | `GET` | `/api/run-ledger/tree` | ## Reasoning | Method | Path | |---|---| | `GET` | `/api/reasoning` | ## Autonomy | Method | Path | |---|---| | `GET` | `/api/autonomy` | ## Bootstrap | Method | Path | |---|---| | `GET` | `/api/bootstrap` | | `GET` | `/api/bootstrap/` | ## Workspaces | Method | Path | |---|---| | `POST` | `/api/workspaces` | ## Self-config | Method | Path | |---|---| | `POST, PUT` | `/api/selfconfig` | | `GET` | `/api/selfconfig//content` | ## Not listed here Static assets, the dashboard HTML itself, and admin surfaces. Anything under `/api/v1/*` is the [custom runtime ingest API](/docs/runtimes/custom-ingest/) and has its own page; `/v1/traces`, `/v1/metrics` and `/v1/logs` are the [OTLP receivers](/docs/runtimes/opentelemetry/). ## Discovering shapes at runtime ```bash curl -s localhost:8900/api/local/query -X POST \ -H 'content-type: application/json' -d '{"shape":"?"}' | jq '.allowed_shapes' ```