SynapSynapDocs
Hub REST API

Packages

The Packages operations of the Hub REST API (1 operation).

For BuildersOpen-source podSynap CloudGenerated from Synap-core/backend@c31e261ab (main)
GET
/installed

Authorization

bearerAuth
headerAuthorizationBearer <API key>

Pod API key (Bearer) issued via /api/hub/setup/agent or pod admin tooling. Browser/web clients may use the X-Session-Token header instead. See GET /api/hub/auth/status to introspect the calling key.

Query Parameters

drift?string

Opt into the EXPENSIVE drift pass for view/skill/automation rows (one Control-Plane fetch per distinct package slug). Default false: drift is reported only where a local comparison can answer it.

Value in"true""false"
kind?string

Report only this kind.

Value in"workspace""capability""view""skill""automation""cell"

Response Body

Installed rows

application/json
  1. response
installed*array<>
driftComputed*boolean
counts*
Example Request
curl -X GET 'https://pod.example.com/api/hub/installed'
Example Response
{  "installed": [    {      "kind": "workspace",      "id": "string",      "name": "string",      "packageSlug": "string",      "templateKey": "string",      "installedVersion": "string",      "latestVersion": "string",      "drift": true,      "installedAt": "string",      "workspaceId": "string",      "provisioningStatus": "string",      "failedStep": "string",      "lifecycle": "current",      "replacedBy": "string",      "retiredReason": "string",      "lifecycleWarning": "string",      "overlays": [        {          "slug": "string",          "installedVersion": "string",          "latestVersion": "string",          "drifted": true,          "lifecycle": "current",          "replacedBy": "string",          "retiredReason": "string",          "lifecycleWarning": "string",          "replacementHere": true        }      ],      "templateState": {        "property1": null,        "property2": null      },      "note": "string"    }  ],  "driftComputed": true,  "counts": {    "property1": 0,    "property2": 0  }}