Settings — Managed Lists
The Settings ▸ Managed Lists page is where every dropdown in the HR-flavored parts of the portal gets its values. Hardware types, employment types, credential types, salary bands, matter types, practice areas — all configurable here so each tenant can model its own taxonomies.

Anatomy of the page
Section titled “Anatomy of the page”1. Page header
Section titled “1. Page header”PageHeader with the title Managed Lists and a one-line description.
2. List grid
Section titled “2. List grid”A vertical stack of cards, one per managed-list type. Each card contains:
- The list label (e.g., “Employment Types”)
- Every value as a row with reorder grip, label, slug, and row actions
- An inline + Add value button
3. Per-row actions
Section titled “3. Per-row actions”- Edit — opens an inline editor for the label
- Toggle active — archive without deleting
- Drag-handle — reorder values
There is no hard-delete on values; only archive.
List types
Section titled “List types”The platform ships with a fixed set of managed-list types. New list types require a release; new values within an existing type are configurable here.
| List type | Surface that consumes it |
|---|---|
hardware_type | Settings ▸ Assets ▸ Hardware |
software_name | Settings ▸ Assets ▸ Software (when shipped) |
credential_type | Account ▸ Credentials |
employment_type | Team profile Employment tab |
salary_band | Team profile Compensation tab |
matter_type | Matters list + matter detail |
practice_area | Matter detail metadata |
document_category | Document upload tagging |
Slug stability
Section titled “Slug stability”Each value has a label (display text) and a slug (stable identifier). Labels can be edited freely; slugs are immutable post-save. This design preserves referential integrity: existing records reference values by slug, so renaming a label doesn’t break them.
To change a slug, add a new value with the desired slug, archive the old, and (optionally) bulk-reassign existing records.
Archive semantics
Section titled “Archive semantics”| State | Behaviour |
|---|---|
| Active | Available in dropdown pickers |
| Archived | Hidden from new pickers, preserved on existing records |
The platform exposes no hard-delete on managed-list values. Archive is the safe default: it preserves audit history and lets admins re-activate without losing data.
Permissions and scope
Section titled “Permissions and scope”| Role | View | Manage |
|---|---|---|
| Owner / Admin | ✓ | ✓ |
| Member | Indirect (uses values in forms) | ✗ |
| Viewer | Indirect | ✗ |
Audit logging
Section titled “Audit logging”| Action | Event |
|---|---|
| Create value | managed_list.value_created |
| Update value | managed_list.value_updated |
| Reorder values | managed_list.values_reordered |
| Archive | managed_list.value_archived |
| Reactivate | managed_list.value_reactivated |
Events surface in Settings ▸ Audit Log.
Troubleshooting
Section titled “Troubleshooting”| Symptom | Most likely cause | Fix |
|---|---|---|
| Slug uneditable | Immutable post-save | Add new value with desired slug; archive old |
| New value missing from dropdown | Form cache stale | Refresh the form |
| Archived value still on existing record | Working as designed | Reassign record before archive if cleanup is required |
| Reorder doesn’t persist | Drag-and-drop dispatch missed | Re-drag; watch for the saved toast |
| List empty | Seed didn’t run | Contact support |
Related pages
Section titled “Related pages”- Settings ▸ Assets — consumes hardware/software types
- Account ▸ Credentials — consumes credential types
- Settings ▸ Team — consumes employment + salary band types
- Settings ▸ Audit Log —
managed_list.*events