Overview
Resources are categorized into Global Resources and Project Resources. Each type has unique characteristics that define its usage, dependencies, and promotion between environments. Understanding these distinctions ensures efficient project development, management, and deployment.Global resources
Global Resources are designed for reuse across multiple projects or business contexts.Key characteristics
- Reusable: Common design elements, themes, fonts, and other assets can be used in multiple projects.
- Independent: Global Resources exist outside individual projects, making them adaptable across different business cases.
- No Dependencies: These resources are not project-specific, making them versatile for broad use cases. Projects can reference libraries without requiring modifications to the core resources.
Examples
Design assets
- Themes: Standardized themes for consistent styling.
- Global Media Library: Shared images, icons, and other assets.
- Fonts: Reusable font families to maintain branding.
Plugins
- Languages: Language packs or configurations that support multilingual capabilities across projects.
- Templates: Notification and document templates managed at a global level.
- Out-of-Office Settings: Platform-wide absence management settings.
General settings
- Users: User accounts and profiles that can be accessed across multiple projects.
- Roles: Defined roles that determine user permissions and access levels.
- Groups: User groupings that facilitate collective management and permissions.
- Audit Log: Logs that track changes and activities within the platform for security and compliance purposes.
Libraries
Organized resource containers including enumerations, substitution tags, and CMS components for multi-project use.Promotion workflow
- Library Promotion: Global Resources within libraries are promoted separately from projects. They are typically imported into the Designer UI in target environments as part of their own libraries.
- Configuration Management: When libraries are promoted, existing configurations, such as generic parameters, are replaced by project-level configurations in the target environment.
Project resources
Project Resources are specific to a business use case. Unlike Global Resources, they belong to a single project, allowing for custom configurations and dependencies on libraries.Key characteristics
- Project-Specific: Tailored to a single projectβs needs.
- Library Dependencies: Can reference and extend Global Resources.
- Configurable: Parameters can be updated in upper environments through environment variables or overrides.
Examples
- Processes: BPMN workflows customized for the projectβs business logic.
- CMS Components: Project-specific enumerations, substitution tags, and media items.
- Task Management:
- Views: Configurable interfaces to display task-related data based on process definitions.
- Stages: Stages that allow task progression through different statuses.
- Allocation rules: Define how tasks are assigned to users or teams.
- Integration Designer:
- Systems: A system is a collection of resourcesβendpoints, authentication, and variablesβused to define and run integration workflows.
- Workflows: A workflow defines a series of tasks and processes to automate system integrations. Within the Integration Designer, workflows can be configured using different components to ensure efficient data exchange and process orchestration.
- Configuration Parameters: Project-specific rendering settings like
applicationUuid
,locale
,language
, andprocess parameters
. - Project Builds: Builds represent finalized versions of the project, including all associated metadata and linked library versions.
- Project Settings: Configure various aspects of a project like platform type, default theme, formatting, etc.
Promotion workflow
- Build-Based Promotion: Only builds (not commits) are promoted.
- Design Asset Handling: Referenced assets are created if missing but are not updated during import.
- Configuration Parameters Overrides: Environment variables replace default values in upper environments.
Resources usage tracking
Track where resources are used to prevent unintended changes and ensure stability.

- View Dependencies before making updates or deletions.
- Understand Resource Interactions across projects.
- Prevent Issues when modifying critical elements.
Process usage
- Access Usage Overview
- Click the Usage Overview icon in the Process List.
- Usage Modal Details
- Displays references by resource type (e.g., Process, UI Template, Workflow).
- Provides detailed context, including node configurations.
Deleting a process with references
- A confirmation modal warns users before deletion.
- The modal lists all affected references.
Enumeration usage
- Access Usage Overview
- Click the Usage Overview icon in the Enumeration List.
- Usage Modal Details
- Shows where the enumeration is referenced (e.g., UI Designer, Data Model, Workflow)
Media library usage
- Access Usage Overview
- Click the Usage Overview icon in the Media Library List.
- Usage Modal Details
- Displays where media files are used (e.g., UI Template, Process).
Managing dependencies & tracking changes
- Dynamic Updates: Reference lists update automatically as resources change.
- Dependency Checks: Users see affected resources before deletion.
- Bidirectional Tracking: The Usage Overview modal also shows resources referenced inside a process.
Copying resources
Use the Copy to Another Project feature to transfer resources while maintaining dependencies.Select a resource from the list

Choose a Destination Project or Library

Pick a branch (if applicable)

Review Dependencies before copying


Include Substitution Tags (optional)

Resolve Identifier Conflicts

- Keep Both: Create a duplicate.
- Replace: Overwrite existing resource.
- Use Destination: Keep existing resource without copying.
Supported resource types
The copy feature is available for the following resources:- Process definitions (including referenced resources)
- Systems
- Workflows
- Enumerations (including child enumerations)
- Media Library items
- Notification and Document templates
Duplicating resources
The Duplicate Resource feature allows users to quickly copy resources within the same project or library.Supported resource types
- Processes
- Enumerations
- Media files (including Global media library files)
- Notification templates
- Document templates
- Views
Steps
Open the Three-Dot Menu next to the resources

Select Duplicate

Resources overrides
Resource overrides enable localization and customization of core business applications across multiple regions while maintaining centralized updates from headquarters.Why use resource overrides?
Resource overrides are essential for organizations that need to:- Build and maintain a business application HQ that expands to multiple countries
- Customize the core application for each countryβs specific requirements
- Keep receiving updates from HQ without losing local customizations
Managing resource overrides
Resource overrides are configured through the Dependencies page in your projectβs main navigation. This interface provides comprehensive management capabilities for all your library resource customizations.Accessing resource overrides
Navigate to Dependencies
Select Resource Overrides tab
- Dependencies: Manages project library dependencies
- Resource Overrides: Configures and manages all resource overrides
Resource overrides interface
The Resource Overrides tab displays all configured overrides in a comprehensive table with the following columns:- Resource Type: The type of resource being overridden (Process, Workflow, Enumeration)
- Original Resource: The name of the library resource being overridden
- Original Library: The library containing the original resource
- Override Resource: The name of the resource used as the override
- Override Source: The source of the override resource (library name or βLocalβ for project resources)
- Actions: Edit and delete options for each override

Adding a new override
Create new override

Select resource type
- Process
- Workflow
- Enumeration
Choose original resource
- Search through all available resources of the selected type
- Resources are grouped by their source library
- Already overridden resources appear disabled with a tooltip: βAn override already exists for [resource name]β
Select override resource
- Available resources include both local project resources and library resources
- Resources are grouped by source (project or library)
- Must match the selected resource type
Save or cancel
- Save: Validates required fields and persists the override
- Cancel (X): Discards the new override without saving
Updating an existing override
Enter edit mode
Modify fields
Save changes
- Save: Applies your changes to the override
- Cancel (X): Reverts to the original configuration
Deleting an override
Initiate deletion
Confirm deletion
Complete deletion
Export and import with overrides
Resource overrides are automatically included when exporting and importing project versions or builds.Export behavior
When exporting a project version or build:- A JSON file containing all resource overrides is included in the export ZIP
- Override definitions include complete resource mapping information
- Both original and override resource metadata are preserved
Import behavior
When importing a project with resource overrides:- All override configurations are restored from the JSON file
- Dependencies on referenced libraries are validated
- Override mappings are reestablished in the target environment
Enumeration override behavior
Enumerations have special handling due to their usage patterns across the platform:Current enumeration resolution
- Enumerations are resolved by name at runtime
- If multiple enumerations exist with the same name in the dependency tree:
- The closest one to the project root is chosen
- If multiple exist at the same level, the one from the build with the most recent creation date is selected
Enumeration usage contexts
- UI Components: Radio buttons, dropdowns, and multi-select components reference enumerations by name
- Kafka Actions: Enumeration names are embedded in message request bodies
- Data Sources: Enumeration mapping in endpoint configurations for value transformation
- CMS Translation: Both Kafka and REST requests use enumeration names for translation services
Error handling and validation
The interface provides comprehensive error handling:Validation errors
- Required field missing: βThis field is requiredβ
- Duplicate override: βAn override already exists for [resource name]β
System errors
- Save error: βAn error occurred while saving resource override. Please try again later.β
- Update error: βAn error occurred while updating resource override. Please try again later.β
- Delete error: βAn error occurred while deleting resource override. Please try again later.β
Empty state
When no resource overrides are configured, the interface displays an empty state with guidance on how to create your first override.
Technical concepts
Understanding the technical implementation of resource overrides helps ensure successful customization while maintaining system integrity.How resource overrides work
Resource overrides replace library resources at runtime while preserving the original library structure and dependencies.Process overrides
When overriding processes from libraries:- Input/output mapping: Ensure processes properly map input and output data
- Node compatibility: The override process must maintain compatibility with the original process structure
- Data model validation: Overrides are validated against the data model and number of nodes
Complex process scenarios
For processes with multiple start nodes and end nodes:- Validation occurs on both data model structure and node count
- Each start/end node must have a corresponding match in the override
- Business logic can be customized while maintaining the process interface
Enumeration and workflow overrides
Unlike processes, enumerations and workflows offer more flexibility:- Can override any enumeration with any other enumeration
- Workflow overrides allow complete replacement of business logic
- Useful for country-specific value lists and decision trees
Override workflow
Identify library dependency
Select resource for override
Create override
Customize business logic
Test integration
Current limitations
- Runtime error detection: Some overrides with errors may only be discovered at runtime rather than design time
- Merge conflict visibility: When comparing JSON configurations, youβll see UUIDs instead of human-readable resource names
- Dynamic list updates: If library resources change significantly, they may not appear in the available override list
- Dependency validation: If a start node is deleted in a newer library version and doesnβt match your override dependency, the system will fail at runtime
Best practices
- Design with overrides in mind: When creating library processes, consider which elements might need localization
- Maintain interface compatibility: Ensure overrides preserve the original processβs input/output contract
- Test thoroughly: Validate overrides in a staging environment before production deployment
- Version management: Keep track of library versions and test override compatibility with updates
- Documentation: Document the specific business reasons for each override to help with maintenance
Use cases and examples
Resource overrides are particularly valuable in enterprise scenarios where centralized governance meets local customization needs.Multi-country application deployment
Consider a financial services company with headquarters developing a core onboarding application that needs to be deployed across different countries, each with unique requirements:Architecture overview
Master copy in library
- Core business logic
- Standard processes (e.g., client onboarding, overdraft management)
- Common UI components and workflows
- Base data models and enumerations
Country-specific projects
- Dependencies on the master library
- Country-specific overrides for local requirements
- Custom business rules and compliance logic
Process execution with call activities
- Reference the master processes from the library
- Apply local overrides where needed
- Handle country-specific data transformations
Localization examples
Different countries often require customized logic for:- Exchange rates calculation: Each country may use different formulas or data sources
- Privacy policy collection: Some countries have stricter data protection requirements
- Compliance workflows: Regulatory requirements vary by jurisdiction
- Authentication methods: Local preferences for OTP, biometric verification, etc.
Common override scenarios
- Regulatory compliance: Adapting processes to meet local legal requirements
- Language localization: Customizing enumerations and UI elements for different markets
- Business logic variations: Implementing region-specific calculation methods or validation rules
- Integration differences: Connecting to different local systems or service providers
- User experience adaptations: Modifying workflows to match local business practices