Skip to main content
Groups are organizational units. They’re primarily used for:
  • Grouping users in the roster
  • Filtering schedules by team
  • Reporting “how many hours did Operations log this month?”
Default groups seeded at install:
  • Operations
  • Admin-Technical
  • Training

Create a group

On /app/admin/groups, use the inline row at the bottom of the table:
  • Name — required, unique (e.g. “Tactical Dispatch”)
  • Description — optional short context
  • Color — hex color that can be used by admins in reports/badges
Click Add. The group appears immediately.

Delete a group

Click Delete in the row. Users previously in that group have their primary_group_id set to null — they remain in the system, just ungrouped. Reassign them in the Users edit form.

Primary group vs. multiple groups

Each user has a single primary_group_id (a 1:1 relationship). Behind the scenes there’s a user_groups join table that would support many-to-many, but the UI exposes only the primary for now — consistent with most 24/7 ops where people belong to one team.

Required permissions

  • groups.view — read
  • groups.manage — create/edit/delete
Supervisor has groups.view. Admin has both.