---
title: "GET /experimental/orgs/{orgId}/home-summary"
method: GET
path: "/experimental/orgs/{orgId}/home-summary"
tags: ["Orgs"]
---

# GET /experimental/orgs/{orgId}/home-summary

`GET /experimental/orgs/{orgId}/home-summary`

Headline counts, quality distribution, security-review coverage, and trailing-window activity for the org Home dashboard, aggregated across every workspace in the org the caller can see, plus org-owned inventories that belong to no workspace. `connected` drives the blank-slate vs connected state; the quality bar and the context-health bands use a fixed 70/90 threshold in v1. `connected` is org-wide (any SCM integration or any inventory on the org) independent of workspace visibility, so it can be true even when every count below is zero because the caller cannot see the org workspaces. Scan status and all counts include org-owned inventories.

## Path parameters

- `orgId` string, uuid, required

## Headers

- `Authorization` string

## Response `200`

Default Response

- object
  - `connected` boolean, required — Whether the org has any SCM integration or any inventory. When false, the counts below are all zero / null.
  - `repoCount` number, required
  - `skillCount` number, required
  - `avgQuality` number, nullable, required — Mean quality (0–100) over skills with a resolvable quality score, or null when none are scored.
  - `belowBarCount` number, required — Scored skills under `qualityBar`.
  - `qualityBar` number, required
  - `securityFindingsCount` number, required — Skills whose latest security review flagged HIGH/CRITICAL risk.
  - `securityNeedsReviewCount` number, required — Skills with no usable security review verdict — never reviewed or the latest review failed.
  - `reviewedCount` number, required — Skills with a completed security review.
  - `reviewInProgressCount` number, required — Skills with a security review still pending.
  - `openFindingsCount` number, required — Active inventory Findings across the org, matching the org Findings feed the Home card links to.
  - `criticalFindingsCount` number, required — Active Findings at critical priority.
  - `window` object, required — The trailing window the activity figures below are measured over, and which their `previous` counts compare against. `installs` is the exception: it is measured over the same number of days but ends on `installsThrough`, because installs are read from a nightly snapshot that never covers today.
    - `days` integer, required
    - `since` string, date, required
    - `installsThrough` string, date, nullable, required
  - `activeUsers` object, required — Org members who signed in during the window, and during the equally long window before it.
    - `current` integer, required
    - `previous` integer, required
  - `publishes` object, required — Registry versions published from this org over the window. Counts plugins, not the skills inside them. `series` carries one point per day with zeros included.
    - `total` integer, required
    - `delta` object, required
      - `current` integer, required
      - `previous` integer, required
    - `series` object[], required
      - `day` string, required
      - `count` integer, required
  - `installs` object, nullable, required — Installs of plugins this org published, from the nightly PostHog snapshot, over the window ending `window.installsThrough`. Counts deliberate installs only — a CLI auto-sync re-install is not one — so this will not agree with `mostInstalled` below, which counts registry downloads. Scoped to the workspaces the caller can see, like `publishes`. Null means the snapshot has never completed a run (a fresh deployment, or a worker with no PostHog credentials); it is never a request-time failure, since this endpoint makes no PostHog call. Zero would be the wrong answer there, because it would assert nobody installed anything.
    - `total` integer, required
    - `delta` object, required
      - `current` integer, required
      - `previous` integer, required
    - `series` object[], required
      - `day` string, required
      - `count` integer, required
  - `contextHealth` object, required — The org Context collection bucketed by review quality. Read from the same context model the org Context page and the Total context figure use, over the same source scope (visible workspaces plus org-owned inventories) and the same family de-duplication, so the four bands partition that collection and `total` equals the org Context page's `meta.total` for the same caller. The bands are that page's `filter[score]` bands, so each one addresses exactly the rows the page lists when filtered to it. These totals are still scoped differently to `avgQuality` and `belowBarCount` above, which come from the per-workspace inventory summaries.
    - `unscored` integer, required
    - `belowSeventy` integer, required
    - `seventyToEightyNine` integer, required
    - `ninetyPlus` integer, required
    - `total` integer, required
  - `mostInstalled` object[], required — The org's most-downloaded plugins, ranked. `downloads` is the registry download counter, bumped when a plugin is fetched for installation, so it is the server-side record of installs. Scoped to the workspaces the caller can see; plugins with no downloads are omitted rather than ranked at zero.
    - `name` string, required
    - `workspaceName` string, required
    - `downloads` integer, required
  - `lastScannedAt` string, date-time, nullable, required — Most recent completed scan across the org's inventories, or null.
  - `scanStatus` union, required — Scan state across the caller's visible workspaces, so org Home can distinguish a failed or in-flight estate from a clean empty one. This is the highest-precedence status across those workspaces, in order: `failed` (any workspace has a failed scan), `running` (a scan is in flight), `ok` (at least one scan succeeded), `none` (no scans at all).
    - 'none'
    - 'running'
    - 'failed'
    - 'ok'

## Other responses

- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `500` — Internal Server Error

---

[API](https://skmtc.net/tessl/apis/tessl-api.md) · [All operations](https://skmtc.net/tessl/apis/tessl-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/tessl/tessl-api/revisions/b3462f8c3bc7/schema)
