Pikbase Docs
Open console (opens the console)
Esc

Type to search.

API reference

installResourcePack() — Application Service

Summary for 'installResourcePack' not found. Available operations: getById, getCopy, query, queryMapped, save, saveMulti, delete, deleteQuery, saveMappe…

Contract sourcePikbase verified platform contract

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.

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.