Portal Community

Root vs. Dependency Artifacts

When creating a package, you only need to specify the root artifacts — the top-level items you want the package consumer to receive. The DependencyResolver automatically discovers and includes all artifacts that those roots depend on.

CategoryTypically a RootTypically a Dependency
Process DefinitionYesRarely — only if a package contains only a sub-workflow
Thread DefinitionNoYes — pulled in from its parent process
Atlas FormSometimes — for form-only packagesYes — pulled from workflows
Rule SetRarelyYes — pulled from forms and workflows
Entity SchemaNoYes — pulled from entity-type nodes
App DefinitionYes — for app packagesRarely

Finding Artifact IDs

Via the API

// List all process definitions in a tenant
GET /api/processes?tenantId={tenantId}&pageSize=100
Authorization: Bearer {token}

// List all Atlas Forms
GET /api/forms?tenantId={tenantId}&pageSize=100
Authorization: Bearer {token}

// List all App Studio apps
GET /api/apps?tenantId={tenantId}&pageSize=100
Authorization: Bearer {token}

Via Flow Studio

In Flow Studio, open the workflow you want to export. The artifact ID is shown in the browser URL and in the workflow's Properties panel (bottom right). Copy the processId value.

Via Atlas Forms Studio

In the Atlas Forms Studio, open the form and look at the URL or the form's settings panel for the formId. This is the ID to pass to the export API.

Single-Artifact Export

Export a single workflow — all its dependencies are automatically included:

POST /api/installhub/packages/export
{
  "packageName": "Leave Approval",
  "packageType": "workflow-package",
  "version":     "1.0.0",
  "artifactIds": ["proc-1002"]
}

// DependencyResolver will include:
// - proc-1002 (root)
// - any ThreadDefinitions referenced by proc-1002
// - any AtlasForms used by form-display nodes in proc-1002
// - any RuleSets evaluated by rule nodes in proc-1002

Multi-Artifact Export

Export multiple root artifacts in a single package — useful for a suite of related workflows:

POST /api/installhub/packages/export
{
  "packageName": "HR Automation Suite",
  "packageType": "workflow-package",
  "version":     "3.0.0",
  "description": "Complete HR workflow suite — onboarding, leave, and payroll",
  "artifactIds": [
    "proc-1001",
    "proc-1002",
    "proc-1003"
  ]
}

The resolver merges the dependency graphs of all root artifacts, deduplicating shared dependencies (e.g., if two workflows use the same form, that form appears only once in the bundle).

Form-Only Package

Export a collection of Atlas Forms without any workflows:

POST /api/installhub/packages/export
{
  "packageName": "Employee Form Library",
  "packageType": "form-package",
  "version":     "2.0.0",
  "artifactIds": [
    "form-2005",
    "form-2006",
    "form-2007"
  ]
}

Previewing What Will Be Exported

Before committing to an export, you can preview the full dependency graph using the dependency preview endpoint:

POST /api/installhub/packages/preview
{
  "tenantId":    "{tenantId}",
  "artifactIds": ["proc-1001"]
}

// Response:
{
  "rootArtifacts":       [{ "type": "ProcessDefinition", "id": "proc-1001", "name": "EmployeeOnboarding" }],
  "resolvedDependencies": [
    { "type": "ThreadDefinition", "id": "thread-2002", "name": "ApprovalSubflow",  "resolvedFrom": "proc-1001" },
    { "type": "AtlasForm",        "id": "form-2005",   "name": "EmployeeForm",     "resolvedFrom": "proc-1001" },
    { "type": "RuleSet",          "id": "rule-305",    "name": "ApprovalRules",    "resolvedFrom": "proc-1001" },
    { "type": "EntitySchema",     "id": "ent-44",      "name": "EmployeeSchema",   "resolvedFrom": "proc-1001" }
  ],
  "totalArtifacts": 5
}
Preview is Non-Destructive The preview endpoint runs the full dependency resolution but does not create a bundle. Use it to confirm what will be included before running the export.

Artifact ID Format

InstallHub artifact IDs follow the convention {type-prefix}-{numeric-id}:

PrefixArtifact TypeExample
proc-ProcessDefinitionproc-1001
thread-ThreadDefinitionthread-2002
form-AtlasFormform-2005
rule-RuleSetrule-305
ent-EntitySchemaent-44
app-AppDefinitionapp-88