space creates the space that a data scope’s objects are placed into, and is mutually exclusive with spaceRef.

Tip

A package re-declares the spaces it owns in every version, so a version that only edits objects still carries its space. spaceRef is the alternative when the space already exists — the package places objects into it without claiming ownership.

A newly created space is bound to the scope’s dataInstall.targetApplicationKey application, using the declared workflowKey.

Minimal JSON

{
  "key": "",
  "spacePath": "",
  "name": "",
  "workflowKey": ""
}
{
  "key": "sales",
  "spacePath": "Sales",
  "name": "Sales",
  "iconKey": "core_folder",
  "isPublic": true,
  "shortDescription": "Sample data for the Sales application",
  "workflowKey": "core#default"
}

Nested properties

PropertyDescriptionValuesMandatory
keyUnique key of the asset. Used for referencing in the same package or other packages using packageKey#assetKey. Also identifies the scope, so it must be unique across the package’s scopes regardless of case.stringYes
spacePathPath of the space. Must be a single path segment (no /) and must equal name — declaring a space under a parent isn’t supported yet, and only root-level spaces can be created.stringYes
nameDisplay name of the space. Must match spacePath when the space is being created.stringYes
workflowKeyKey of the workflow used to bind the space to the scope’s dataInstall.targetApplicationKey application. Only applied when the space is newly created.stringYes
iconKeyKey of the icon shown on the space. Must exist on the target instance. Falls back to the default space icon when omitted or unresolvable.stringNo
isPublicWhether the space is public. Defaults to true.booleanNo
shortDescriptionShort description shown on the space.stringNo