Pikbase Docs
Open console (opens the console)
Esc

Type to search.

API reference

installResourcePack() — Application Service

Install an authorized resource pack into a target tenant and track its job.

Installs a built resource pack into an authorized target tenant. The verified transport is POST /api/app/installResourcePack; the request is asynchronous when runAsync is true.

Request

{
  "skipUserModified": true,
  "sourceTenant": "dev1",
  "templateName": "erp",
  "runAsync": true,
  "tenantCode": "customer-workspace"
}
Field Type Description
skipUserModified boolean Preserves supported user-modified assets when true. The action sets this to the inverse of Overwrite My Changes.
sourceTenant string Authorized tenant that owns the built pack.
packId string Optional exact built GsbResourcePack id.
templateId string Optional GsbResourcePackTmpl id used for latest-pack resolution.
templateName string Optional GsbResourcePackTmpl.name used for latest-pack resolution.
runAsync boolean Returns a job id instead of waiting for installation.
tenantCode string Authorized installation target.

Select one source artifact. packId pins an exact built pack. When packId is absent, templateId or templateName resolves the latest pack built from that template. Do not send both template selectors. Use packId whenever reproducibility requires an exact artifact rather than the latest build.

Preserve or overwrite target edits

Choose skipUserModified: true to preserve resources the installer recognizes as user-modified, or false to allow packaged changes to overwrite target customizations. Overwrite My Changes is the inverse of this flag. This is an installation-level choice, not a per-column policy map. Schema and column/property preservation must be checked against the backend's supported behavior with isolated edited-resource fixtures. Overwrite does not imply deletion of resources absent from the pack, atomic replacement, or automatic rollback.

Preservation can leave the target different from the artifact. Review skipped resources and verify dependencies; do not silently retry with overwrite. See CI/CD, deployment, and seeds for approval, selective data, and post-install checks.

Response and status

An accepted asynchronous request returns a jobId. Poll getJobStatus until the task reaches a terminal state. Treat installation as a privileged mutation: the server must authorize the source and target tenants; a browser-supplied tenant code is never authority.

Entity actions

The live GsbResourcePack.actionsStr decodes to Install Pack, which opens widget 07dc76f9-cd99-4b2b-9f87-13ff51d9f3c8. Its nested Start Install action defines apiEndPoint: "/app/installResourcePack", sends the request above, then polls /api/task/getJobStatus every five seconds until Succeeded, Failed, or Deleted.

Contract sourcePikbase verified platform contract