ObjectStackObjectStack

Package Api

Package Api protocol schemas

Package API Protocol

REST API endpoint schemas for package lifecycle management.

Base path: /api/v1/packages

@example Endpoints

POST /api/v1/packages/install — Install a package

POST /api/v1/packages/upgrade — Upgrade a package

POST /api/v1/packages/resolve-dependencies — Resolve dependencies

POST /api/v1/packages/upload — Upload an artifact

GET /api/v1/packages — List installed packages

GET /api/v1/packages/:packageId — Get package details

POST /api/v1/packages/:packageId/rollback — Rollback a package

DELETE /api/v1/packages/:packageId — Uninstall a package

Source: packages/spec/src/api/package-api.zod.ts

TypeScript Usage

import { GetInstalledPackageRequest, GetInstalledPackageResponse, ListInstalledPackagesRequest, ListInstalledPackagesResponse, PackageApiErrorCode, PackageInstallRequest, PackageInstallResponse, PackagePathParams, PackageRollbackRequest, PackageRollbackResponse, PackageUpgradeRequest, PackageUpgradeResponse, ResolveDependenciesRequest, ResolveDependenciesResponse, UninstallPackageApiRequest, UninstallPackageApiResponse, UploadArtifactRequest, UploadArtifactResponse } from '@objectstack/spec/api';
import type { GetInstalledPackageRequest, GetInstalledPackageResponse, ListInstalledPackagesRequest, ListInstalledPackagesResponse, PackageApiErrorCode, PackageInstallRequest, PackageInstallResponse, PackagePathParams, PackageRollbackRequest, PackageRollbackResponse, PackageUpgradeRequest, PackageUpgradeResponse, ResolveDependenciesRequest, ResolveDependenciesResponse, UninstallPackageApiRequest, UninstallPackageApiResponse, UploadArtifactRequest, UploadArtifactResponse } from '@objectstack/spec/api';

// Validate data
const result = GetInstalledPackageRequest.parse(data);

GetInstalledPackageRequest

Properties

PropertyTypeRequiredDescription
packageIdstringPackage identifier

GetInstalledPackageResponse

Get installed package response

Properties

PropertyTypeRequiredDescription
successbooleanOperation success status
errorObjectoptionalError details if success is false
metaObjectoptionalResponse metadata
dataObjectInstalled package details

ListInstalledPackagesRequest

List installed packages request

Properties

PropertyTypeRequiredDescription
statusEnum<'installed' | 'disabled' | 'installing' | 'upgrading' | 'uninstalling' | 'error'>optionalFilter by package status
enabledbooleanoptionalFilter by enabled state
limitintegerMaximum number of packages to return
cursorstringoptionalCursor for pagination

ListInstalledPackagesResponse

List installed packages response

Properties

PropertyTypeRequiredDescription
successbooleanOperation success status
errorObjectoptionalError details if success is false
metaObjectoptionalResponse metadata
dataObject

PackageApiErrorCode

Allowed Values

  • package_not_found
  • package_already_installed
  • version_not_found
  • dependency_conflict
  • namespace_conflict
  • platform_incompatible
  • artifact_invalid
  • checksum_mismatch
  • signature_invalid
  • upgrade_failed
  • rollback_failed
  • snapshot_not_found
  • upload_failed

PackageInstallRequest

Install package request

Properties

PropertyTypeRequiredDescription
manifestObjectPackage manifest to install
settingsRecord<string, any>optionalUser-provided settings at install time
enableOnInstallbooleanWhether to enable immediately after install
platformVersionstringoptionalCurrent platform version for compatibility verification
artifactRefObjectoptionalArtifact reference for marketplace installation

PackageInstallResponse

Install package response

Properties

PropertyTypeRequiredDescription
successbooleanOperation success status
errorObjectoptionalError details if success is false
metaObjectoptionalResponse metadata
dataObject

PackagePathParams

Properties

PropertyTypeRequiredDescription
packageIdstringPackage identifier

PackageRollbackRequest

Rollback package request

Properties

PropertyTypeRequiredDescription
packageIdstringPackage identifier
snapshotIdstringSnapshot ID to restore from
rollbackCustomizationsbooleanWhether to restore pre-upgrade customizations

PackageRollbackResponse

Rollback package response

Properties

PropertyTypeRequiredDescription
successbooleanOperation success status
errorObjectoptionalError details if success is false
metaObjectoptionalResponse metadata
dataObject

PackageUpgradeRequest

Upgrade package request

Properties

PropertyTypeRequiredDescription
packageIdstringPackage ID to upgrade
targetVersionstringoptionalTarget version (defaults to latest)
manifestObjectoptionalNew manifest for the target version
createSnapshotbooleanWhether to create a pre-upgrade backup snapshot
mergeStrategyEnum<'keep-custom' | 'accept-incoming' | 'three-way-merge'>How to handle customer customizations
dryRunbooleanPreview upgrade without making changes
skipValidationbooleanSkip pre-upgrade compatibility checks

PackageUpgradeResponse

Upgrade package response

Properties

PropertyTypeRequiredDescription
successbooleanOperation success status
errorObjectoptionalError details if success is false
metaObjectoptionalResponse metadata
dataObject

ResolveDependenciesRequest

Resolve dependencies request

Properties

PropertyTypeRequiredDescription
manifestObjectPackage manifest to resolve dependencies for
platformVersionstringoptionalCurrent platform version for compatibility filtering

ResolveDependenciesResponse

Resolve dependencies response

Properties

PropertyTypeRequiredDescription
successbooleanOperation success status
errorObjectoptionalError details if success is false
metaObjectoptionalResponse metadata
dataObjectDependency resolution result with topological sort

UninstallPackageApiRequest

Properties

PropertyTypeRequiredDescription
packageIdstringPackage identifier

UninstallPackageApiResponse

Uninstall package response

Properties

PropertyTypeRequiredDescription
successbooleanOperation success status
errorObjectoptionalError details if success is false
metaObjectoptionalResponse metadata
dataObject

UploadArtifactRequest

Upload artifact request

Properties

PropertyTypeRequiredDescription
artifactObjectPackage artifact metadata
sha256stringoptionalSHA256 checksum of the uploaded file
tokenstringoptionalPublisher authentication token
releaseNotesstringoptionalRelease notes for this version

UploadArtifactResponse

Upload artifact response

Properties

PropertyTypeRequiredDescription
successbooleanOperation success status
errorObjectoptionalError details if success is false
metaObjectoptionalResponse metadata
dataObject

On this page