Plugin Index Data API
One request returns a lightweight summary of every collected plugin — verification level, security status, risk level, and counts. Built for agents and tooling (dsh-plugin-finder and friends).
| URL | Description | Update |
|---|---|---|
/plugins-index.json | Registry summary — every plugin's status / risk level / counts (no per-finding detail). Single request, whole registry. | rebuilt on each deploy (the registry index is rebuilt with the site) |
JSON endpoints allow cross-origin reads: Access-Control-Allow-Origin: *. No API key or registration is required.
| Field | Type | Semantics |
|---|---|---|
generated | string (YYYY-MM-DD) | Build date of this index |
generatedAt | string (ISO) | Build timestamp — preserve it alongside any cached copy |
source | string | The registry page this index is derived from |
count | number | Number of plugin entries |
plugins[] | array | One entry per collected plugin (fields below) |
plugins[].id | string | Plugin id (matches plugins.json ids and artifact slugs) |
plugins[].name | string | Display name |
plugins[].description | string | Repository description, truncated to 300 characters |
plugins[].stars | number | GitHub star count (0 when unknown) |
plugins[].topics | string[] | Matched use-case / capability topic tags |
plugins[].install | string | Install command (registry spec, or the profile-web default) |
plugins[].url | string | Absolute plugin detail page URL |
plugins[].verification | object | level (1–5), label (human-readable), lastVerifiedAt — derived by the same shared artifact layer as the registry UI, so the index always matches what the site shows |
plugins[].security | object | status, riskLevel, scannedAt, plus counts and filesScanned when present. No findings detail — use /artifact/<id>.json for the full scan record |
plugins[].repoHealth | object (optional) | Repository health markers: status (renamed / deleted / topic-removed) and renamedTo when applicable — so machine consumers can react to moved plugins |
license | object | Provenance and reuse terms — aggregated from public sources, attribution required |
Honesty rule: verification and security values are computed by the same shared derivation layer as the registry UI (src/data/artifacts.ts) — the index can never disagree with the site. Entries the UI hides (repoHealth-flagged) stay in the index with their marker attached.
Fetch the whole index (or open /plugins-index.json in a browser):
Consumers: filter by verification.level, sort by stars, watch security.riskLevel, and honor repoHealth.renamedTo redirects.
The index is rebuilt on every deploy from the append-only verification records and public registry data. Fields are add-only: existing fields will not be removed or renamed. Free to reference with attribution to dsh.so; new fields are announced in the changelog.