Skip to main content
Version: 2.4

User Groups

This document describes User Groups in tSM — organizational or functional groupings of users that simplify task assignment, access control, and team management.


Overview​

User Groups provide a way to organize users into logical collections based on:

  • Organizational structure (departments, teams, offices)
  • Functional roles (helpdesk, engineering, sales)
  • Project teams (temporary or permanent)

A user can belong to multiple groups simultaneously, enabling flexible organizational models.


Key Benefits​

BenefitDescription
Simplified AssignmentAssign tasks to a group instead of individual users
Team VisibilityAll group members see tasks assigned to their group
Dynamic MembershipAdd/remove users without changing task assignments
ReportingGenerate reports by team or department
Workload DistributionBalance work across team members

1. Group Types​

1.1 Functional Groups​

Based on job function or role within the organization.

Examples:

  • Helpdesk_L1 — First-level support team
  • Helpdesk_L2 — Second-level support team
  • Engineering — Development team
  • Sales_Team — Sales representatives
  • Quality_Assurance — QA team

Use Case: Assign tickets to appropriate support tier based on complexity.


1.2 Organizational Groups​

Based on company organizational structure.

Examples:

  • Department_IT — IT Department
  • Department_Sales — Sales Department
  • Office_Prague — Prague office employees
  • Region_EMEA — EMEA region staff

Use Case: Filter data by department or region in reports and access rules.


1.3 Project Groups​

Temporary groups for specific projects or initiatives.

Examples:

  • Project_Migration — System migration project team
  • Project_CRM_Rollout — CRM implementation team
  • Initiative_2025_Q1 — Q1 strategic initiatives

Use Case: Collaborate on project-specific tasks with automatic disbanding when project ends.


2. Group Attributes​

Core Attributes​

FieldTypeRequiredDescription
idUUID–Unique identifier / primary key in UUID format (auto-generated or UUIDv4). Not displayed to end users.
codeStringYesUser group unique identifier.
typeStringYesUser group type unique identifier (FK to umt_user_group_type.code).
nameStringYesDisplay name.
descriptionString–Description for user group.
parentUserGroupIdUUID–Identifier of parent user group (FK to self.id) for hierarchical structure.
ldapMemberOfString–If user group is in LDAP/AD, the location in the directory. This field can be utlizied for other synchronization methods as well

Contact Attributes​

FieldTypeDescription
emailStringUser group email address.
phoneNumberStringUser group phone number.

Configuration Attributes​

FieldTypeDescription
dataTagsList<String>Additional data tags (aka labels) for categorization.
charsTsmCharsCustom characteristics/attributes map.
associatedUserRoleIdUUIDIf a user has this group, they automatically receive the selected role upon logging in (FK to umt_role.id).
notificationConfigUserGroupNotificationConfigNotification configuration for the group.

System/Audit Fields​

FieldTypeRead-onlyDescription
validityFromDate–Start of the validity of the value (preferred).
validityToDate–End of the validity of the value (preferred).
auditInfoAuditInfoYesStandard audit fields (createdBy, createdAt, updatedBy, updatedAt).

Nested Objects​

UserGroupNotificationConfig​

FieldTypeDescription
notificationsList<NotificationUserGroupNotificationConfigModel>Notification settings per notification type.
othersEnumOther notification settings: disabled, enabled.
notificationConfigOverrideUserGroupRecipientsList<NotificationConfigOverrideRecipientsDeliveryType>Override recipients for delivery types.

NotificationUserGroupNotificationConfigModel​

FieldTypeDescription
codeStringNotification template code.
enabledBooleanWhether this notification is enabled.
lockedBooleanWhether this notification setting is locked (cannot be changed by user).
overrideEmailRecipientsForUserGroupEnumDeprecated — moved to notificationConfigOverrideUserGroupRecipients.
overrideSmsRecipientsForUserGroupEnumDeprecated — moved to notificationConfigOverrideUserGroupRecipients.
overrideApplicationRecipientsForUserGroupEnumDeprecated — moved to notificationConfigOverrideUserGroupRecipients.

UserGroupRegion​

FieldTypeRequiredRead-onlyDescription
idUUID––Unique identifier (auto-generated or UUIDv4).
regionIdUUIDYesYesRegion ID reference.
userGroupUserGroupPublic–YesUser Group (ManyToOne relationship).
dataMap––Custom data.
auditInfoAuditInfo–YesStandard audit fields.

Calendar access through group membership​

Calendar access can depend on a user's role in a particular group membership. Membership roles are separate from system roles assigned directly to a user or through associatedUserRoleId.

Role on the group membershipCalendar effect
MANAGERAdds calendars assigned to members of the same group to the viewing and write selections.
CALENDAR_ADMINAdds calendars assigned to members of the same group to the viewing and write selections.
Neither roleGroup membership alone does not trigger this automatic calendar access rule.

These roles are stored on the user-to-group membership (role_in_group). A system role named MANAGER or CALENDAR_ADMIN does not by itself satisfy the membership-role condition. Individual calendar actions can still be limited by application privileges, calendar type, and event configuration.

Explicitly sharing a calendar with a group is another source of access. Subscribing to a group's calendars only changes the user's calendar view; it does not grant a membership role or create a sharing rule. Removing an explicit share does not remove access obtained through MANAGER, CALENDAR_ADMIN, or a direct-supervisor relationship.

See Calendar for the user workflow and Automatic calendar access for the combined access rules.