Skip to content
CompozyOS RuntimeAPI Reference

Observe

Compozy Observe HTTP endpoints.

Audience
Operators running durable agent work
Focus
API Reference guidance shaped for scanability, day-two clarity, and operator context.
GET/api/observe/overview

Query Parameters

workspace?string

Scope aggregates to one workspace; empty selects the global home scope

usage_window?string

Usage window in days (default 30)

Value in

  • "7"
  • "30"
  • "90"

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/api/observe/overview"
{  "overview": {    "attention": {      "by_kind": {        "property1": 0,        "property2": 0      },      "items": [        {          "actions": [            "string"          ],          "detail": "string",          "kind": "string",          "occurred_at": "2019-08-24T14:15:22Z",          "run_id": "string",          "session_id": "string",          "task_id": "string",          "title": "string"        }      ],      "total": 0    },    "freshness": {      "age_ms": 0,      "has_live_work": true,      "latest_activity_at": "2019-08-24T14:15:22Z",      "observed_at": "2019-08-24T14:15:22Z",      "stale": true,      "stale_after_ms": 0,      "status": "string"    },    "generated_at": "2019-08-24T14:15:22Z",    "network": {      "messages_today": 0    },    "outcomes": {      "canceled": 0,      "completed": 0,      "days": [        {          "canceled": 0,          "completed": 0,          "date": "string",          "failed": 0        }      ],      "failed": 0,      "success_pct": 0.1,      "window_days": 0    },    "pulse": {      "buckets": [        {          "events": 0,          "hour": 0,          "weekday": 0        }      ],      "busiest": {        "events": 0,        "hour": 0,        "weekday": 0      },      "longest_session": {        "agent_name": "string",        "date": "string",        "duration_seconds": 0,        "session_id": "string"      },      "window_days": 0    },    "schema_version": "string",    "system": {      "hook_failures_today": 0,      "hook_runs_today": 0,      "retention_days": 0    },    "today": {      "runs_completed": 0,      "runs_failed": 0,      "tasks_closed": 0    },    "usage": {      "agent_share": [        {          "agent_name": "string",          "fraction": 0.1,          "tokens": 0        }      ],      "cost_currency": "string",      "cost_status": "string",      "days": [        {          "date": "string",          "tokens": 0        }      ],      "estimated_cost": 0,      "retention_days": 0,      "total_tokens": 0,      "truncated": true,      "window_days": 0    }  }}
GET/api/observe/tasks/dashboard

Query Parameters

scope?string

Filter by task scope

Value in

  • "global"
  • "workspace"
workspace?string

Filter by workspace path, name, or ID

owner_kind?string

Filter by owner kind

Value in

  • "human"
  • "agent_session"
  • "automation"
  • "extension"
  • "network_peer"
  • "pool"
owner_ref?string

Filter by owner reference

participation_channel?string

Filter by resolved participation channel

origin_kind?string

Filter by task origin kind

Value in

  • "cli"
  • "web"
  • "uds"
  • "http"
  • "automation"
  • "extension"
  • "network"
  • "agent_session"
  • "daemon"

Response Body

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/api/observe/tasks/dashboard"
{  "dashboard": {    "active_runs": {      "claimed": 0,      "items": [        {          "age_ms": 0,          "attempt": 0,          "error": "string",          "health_status": "string",          "last_activity_at": "2019-08-24T14:15:22Z",          "latest_event_seq": 0,          "max_attempts": 0,          "resolved_network_participation": {            "mode": "local",            "source": "explicit_request",            "version": "network-participation/v1"          },          "run_id": "string",          "run_status": "queued",          "scope": "global",          "session_id": "string",          "stuck": true,          "task_id": "string",          "task_identifier": "string",          "task_owner": {            "kind": "human",            "ref": "string"          },          "task_priority": "low",          "task_status": "draft",          "task_title": "string",          "workspace_id": "string"        }      ],      "queued": 0,      "running": 0,      "starting": 0,      "total": 0    },    "cards": {      "blocked": {        "awaiting_approval": 0,        "awaiting_dependencies": 0,        "health_status": "string",        "tasks": 0      },      "failed": {        "failed_runs": 0,        "forced_stops": 0,        "health_status": "string",        "tasks": 0      },      "in_progress": {        "active_runs": 0,        "claimed_runs": 0,        "health_status": "string",        "queued_runs": 0,        "running_runs": 0,        "starting_runs": 0,        "tasks": 0      },      "latency": {        "claim_latency_ms": {          "average_ms": 0,          "maximum_ms": 0,          "samples": 0        },        "start_latency_ms": {          "average_ms": 0,          "maximum_ms": 0,          "samples": 0        }      }    },    "freshness": {      "age_ms": 0,      "has_live_work": true,      "latest_activity_at": "2019-08-24T14:15:22Z",      "observed_at": "2019-08-24T14:15:22Z",      "stale": true,      "stale_after_ms": 0,      "status": "string"    },    "health": {      "active_orphan_runs": 0,      "queue_backlog": true,      "status": "string",      "stuck_runs": 0    },    "queue": {      "backlog_status": "string",      "backlog_threshold_ms": 0,      "backlog_warning": true,      "depth": [        {          "channel_id": "string",          "count": 0,          "oldest_queue_age_ms": 0,          "oldest_queued_at": "2019-08-24T14:15:22Z"        }      ],      "oldest_queue_age_ms": 0,      "oldest_queued_at": "2019-08-24T14:15:22Z",      "total": 0    },    "status_breakdown": [      {        "count": 0,        "share_percent": 0,        "status": "draft"      }    ],    "totals": {      "active_runs": 0,      "awaiting_approval_tasks": 0,      "blocked_tasks": 0,      "canceled_runs": 0,      "canceled_tasks": 0,      "claimed_runs": 0,      "completed_runs": 0,      "completed_tasks": 0,      "dependency_blocked_tasks": 0,      "draft_tasks": 0,      "failed_runs": 0,      "failed_tasks": 0,      "in_progress_tasks": 0,      "pending_tasks": 0,      "queued_runs": 0,      "ready_tasks": 0,      "running_runs": 0,      "runs_total": 0,      "starting_runs": 0,      "tasks_total": 0    }  }}
GET/api/observe/tasks/inbox

Query Parameters

scope?string

Filter by task scope

Value in

  • "global"
  • "workspace"
workspace?string

Filter by workspace path, name, or ID

owner_kind?string

Filter by owner kind

Value in

  • "human"
  • "agent_session"
  • "automation"
  • "extension"
  • "network_peer"
  • "pool"
owner_ref?string

Filter by owner reference

lane?string

Filter by inbox lane

Value in

  • "my_work"
  • "approvals"
  • "failed_runs"
  • "blocked"
  • "archived"
status?string

Filter by canonical task status

Value in

  • "draft"
  • "pending"
  • "blocked"
  • "needs_attention"
  • "ready"
  • "in_progress"
  • "completed"
  • "failed"
  • "canceled"
priority?string

Filter by task priority

Value in

  • "low"
  • "medium"
  • "high"
  • "urgent"
unread?boolean

Filter by unread state; false selects read items

query?string

Filter by task title or identifier

cursor?string

Opaque actor- and query-bound continuation cursor

limit?integer

Page size from 1 to 200 (default 50)

Formatint32

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://example.com/api/observe/tasks/inbox"
{  "inbox": {    "archived_total": 0,    "facets": {      "priorities": [        {          "count": 0,          "priority": "low"        }      ],      "statuses": [        {          "count": 0,          "status": "draft"        }      ]    },    "groups": [      {        "count": 0,        "items": [          {            "approval_policy": "none",            "approval_state": "not_required",            "blocking_reason": "string",            "lane": "my_work",            "latest_activity_at": "2019-08-24T14:15:22Z",            "run": {              "attempt": 0,              "claimed_at": "2019-08-24T14:15:22Z",              "claimed_by": {                "kind": "human",                "ref": "string"              },              "ended_at": "2019-08-24T14:15:22Z",              "error": "string",              "failure_kind": "string",              "heartbeat_at": "2019-08-24T14:15:22Z",              "id": "string",              "lease_until": "2019-08-24T14:15:22Z",              "max_attempts": 0,              "previous_run_id": "string",              "queued_at": "2019-08-24T14:15:22Z",              "recovery_count": 0,              "resolved_network_participation": {                "mode": "local",                "source": "explicit_request",                "version": "network-participation/v1"              },              "session_id": "string",              "started_at": "2019-08-24T14:15:22Z",              "status": "queued",              "task_id": "string"            },            "task": {              "id": "string",              "identifier": "string",              "latest_event_seq": 0,              "owner": {                "kind": "human",                "ref": "string"              },              "priority": "low",              "scope": "global",              "status": "draft",              "title": "string",              "workspace_id": "string"            },            "triage": {              "actor": {                "kind": "human",                "ref": "string"              },              "archived": true,              "dismissed": true,              "last_seen_activity_at": "2019-08-24T14:15:22Z",              "read": true,              "task_id": "string",              "updated_at": "2019-08-24T14:15:22Z"            }          }        ],        "lane": "my_work",        "unread_count": 0      }    ],    "page": {      "has_more": true,      "limit": 0,      "next_cursor": "string",      "total": 0    },    "unread_total": 0  }}