Technicians
Workforce profiles Dispatch assigns and Field authenticates. This is not Organization → Members (logins) and not a customer contact.
Workforce → Technicians · /app/w/{workspace}/technicians · technicians.view / create / update
A CMS user can log in. A technician profile is what appears on Dispatch lanes, Find candidates, Auto-Assign, and Field. Skills, home base, and Availability decide whether someone looks feasible. Members admin is a separate page.
Command palette: New technician. Availability mutations: technician_availability.manage. Skills / certifications catalogs: Settings → Skills / Certifications, capability qualifications.
When to use it
Section titled “When to use it”- Before first Field login — Active profile plus
field.workspace.view. - When Find candidates or Auto-Assign returns nobody — check status, Weekly hours, exceptions, and time off.
- Office-only staff — invite them as Members; do not create a technician profile.
Create a technician
Section titled “Create a technician”- Create or invite the staff User under Organization → Members if they have no login yet — or from this screen choose an account mode.
- Workforce → Technicians → New technician. Account mode: Existing member, New account with password, or New account with set-password link. Every technician must be linked to a workspace member (Select a workspace member.). Linking attaches the system role Technician.
- Home base — used as a travel / map warning (different home base is not a hard block). Operational bases live under Settings.
- Status must be Active for Dispatch candidates and Field. Inactive profiles are skipped even if the permission remains. Inactive technicians cannot be overridden onto a slot.
- Assign skills and certifications on the profile when qualifications are on. Field Account shows them read-only.
- Grant a role that includes
field.workspace.viewif they will open Field (command palette → Field).
Availability (what Dispatch uses)
Section titled “Availability (what Dispatch uses)”Technician show → Availability · /app/w/{workspace}/technicians/{id}/availability
Office changes here apply immediately. They skip the Time-off requests queue. Tabs: Weekly hours, Exceptions, Time off.
| Piece | Effect on a local date |
|---|---|
| Unavailable exception | Zeros the day (blocks the whole day). |
| Custom hours | Replace Regular hours for that date (they do not add). |
| Regular hours | Weekly template when there is no custom exception. |
| Time off | Subtracts from the windows above (all-day or partial). |
On-call hours and blocked time are not counted as Available capacity. A technician with no Regular hours and no custom hours that day is not “always available” — Find candidates will treat them as outside hours.
What-if
Section titled “What-if”If they are not on Dispatch lanes: Inactive, filtered by Operational base, or no overlapping assigned visit.
If they are never recommended: no hours that day, time off, unavailable exception, or missing required skills.
If you cannot edit Availability: missing technician_availability.manage.
If you edited Members and expected Dispatch to show them: create the technician profile.
If you opened /technicians/time-off-requests: that URL is Time-off requests, not the technician list.
You still assign technician profiles, not crew records. Concept: Technician.