Portal Community
Phase 3 — PENDING This feature is planned but not yet implemented.

Version History

GET /api/marketplace/packages/{packageId}/versions

{
  "packageId": "mkt-pkg-a1b2c3",
  "versions": [
    { "version": "3.0.0", "publishedAt": "2026-04-15", "isLatest": true,  "breakingChange": true,  "deprecated": false },
    { "version": "2.2.0", "publishedAt": "2026-01-10", "isLatest": false, "breakingChange": false, "deprecated": false },
    { "version": "2.1.0", "publishedAt": "2025-09-01", "isLatest": false, "breakingChange": false, "deprecated": true  },
    { "version": "2.0.0", "publishedAt": "2025-06-01", "isLatest": false, "breakingChange": true,  "deprecated": true  }
  ]
}

Pinning a Specific Version

To install a specific version instead of the latest:

POST /api/marketplace/packages/{packageId}/install
{
  "version":        "2.2.0",    // Pin to this version
  "targetTenantId": "tenant-abc123"
}

Update Notifications

Tenants that have installed a package receive in-app notifications when:

// Subscribe to version updates:
POST /api/marketplace/packages/{packageId}/subscribe
{ "tenantId": "tenant-abc123" }

// Get installed packages with update status:
GET /api/marketplace/installed?tenantId=tenant-abc123

{
  "items": [
    {
      "packageId":        "mkt-pkg-a1b2c3",
      "installedVersion": "2.2.0",
      "latestVersion":    "3.0.0",
      "updateAvailable":  true,
      "isBreakingChange": true,
      "installedAt":      "2026-01-15T10:00:00Z"
    }
  ]
}

Version Retention

The marketplace retains all published versions permanently. Publishers can deprecate old versions (which triggers warnings) but cannot delete them — existing installations must always be able to re-download the version they have installed.