Use staff configuration when an appointment requires a qualified person to be available.
• A position describes a qualification or function, such as Nurse, Sonographer, Counselor, or Advocate.
• Qualified people are the staff members or volunteers or volunteers assigned to that position. The assignment picker searches your Staff list and your Volunteers list together, so either can be assigned. The assignment picker searches your Staff list and your Volunteers list together, so either can be assigned.
• A work schedule describes when a specific person is available.
All three must align for a required position to produce bookable time.
Open Serve > Positions, where you can create positions and assign them to qualified team members.
Staff work schedules are managed from the staff scheduling and availability surfaces.
On a position's settings page, each name in the Qualified Team Members list links straight to that person's record in Serve, so you no longer have to search for them by hand.
• Volunteers link to their record in Serve > Volunteers.
• Staff-only people link to their record in Serve > Staff.
• A person who holds both roles links to the Volunteers record.
• A name renders as plain text, with no link, if the person has no volunteer or staff role, since there is no Serve record for it to open.
In addition to a person's regular weekly hours, you can mark specific dates as unavailable (for example, time off, surgery recovery, or a one-off schedule change) or give them different hours for a single day.
1. Open the staff member's work schedule and select the date you want to change (or click and drag to select several dates at once).
2. Choose Edit this date.
3. Select Unavailable to mark the selected date(s) off, or add a custom time range if the person is working different hours than usual. A staff date exception holds one time range; the calendar hides "Add another time" in this mode because only the first range would ever be saved.
4. Optionally enter a reason. Reasons are limited to 200 characters; longer text is rejected with a clear error instead of failing silently.
5. Select Apply to save.
A staff date exception on the calendar reads Unavailable, matching the wording used for that person's regular weekly hours. A person is not a building, so a day off no longer displays as "Closed"; that label is reserved for location and appointment-type schedules, which do close for the day.
To send a date back to the person's normal weekly pattern, open Edit this date on a date that already has an exception and select Remove exception. This deletes the override instead of writing a new one, so an accidental day off is easy to undo.
When you select several dates that are not next to each other on the calendar, each date is saved as its own override rather than being stretched into a single date range. This fixed an issue where saving unavailability across non-contiguous dates (or a two-week range) could fail with a "Failed to Save Override" error.
A staff date exception holds one time range only, so the date-specific dialog does not offer an Add another time option in staff mode the way the recurring weekly schedule does. Only the first range you enter is saved and used by the scheduling engine, so there is no way to add a second, separate window on the same date. If a day needs more than one working window, use two separate appointments or contact support about your scheduling pattern.
Calendar cells and labels for a staff member's day off read Unavailable, matching the wording used for their recurring weekly pattern. Locations and appointment-type schedules still read Closed for their date exceptions, since those represent a site or service being closed rather than a person being unavailable.
A date-specific override (time off or a custom time range) applies to that staff member at every location, not only the location where their weekly hours are set up. This matters most for named staff: if someone's regular weekly hours live at one center but they are also linked as named staff for an appointment type booked at a different location, a date override still counts there. Slot calculation checks the override at the booking location even when the person has no weekly row for that center, so a day off or a custom-hours day is honored everywhere the person can be booked, not just where their base schedule lives.
Each position has a Clinical Reviewer toggle on its settings page. Turn this on for any position whose qualified team members should be able to review and sign off on clinical documents, such as ultrasound or chart reviews (for example a Physician position, or a nurse or other staff position your organization has designated to approve reviews).
• Reviewer assignment now looks for a position flagged Clinical Reviewer first, then assigns the review to a qualified, active person holding that position, the same way any other required position works.
• You can name the position anything you want. Renaming it no longer breaks review routing, because routing is driven by the Clinical Reviewer flag, not by the position's name.
• If no position is flagged Clinical Reviewer yet, or the flagged position has no qualified active person assigned, review routing falls back to the legacy behavior of matching a position named something like "Physician" or "Doctor", or the individual user's legacy Physician setting.
• Administrators and consultants are exempt. Adding an administrator or consultant as a Qualified Team Member on a Clinical Reviewer position does not restrict their account to the reviewer queue, since they are not expected to work solely as a clinical reviewer.
Existing organizations that already had users marked as a physician were automatically given a "Physician" position flagged as Clinical Reviewer. Assign your reviewing staff to that position (or to any other position you flag as Clinical Reviewer) under Qualified Team Members so review routing no longer depends on the legacy setting.
The Staff tab on the Scheduler calendar shows appointments for the day grouped by team member or by position, so you can see who is booked and where the gaps are at a glance. Use the toggle at the top of the view to switch:
• By staff (default): one column per staff member.
• By position: one column per active position.
The Staff tab always shows every appointment for the centers you have selected; it ignores any resource, status, or staff filters left over from the Appointments tab so bookings cannot be hidden unexpectedly. If no positions are configured yet, use the Manage positions link to set them up.
Each staff column links to that person's record in Serve, following the same rule as the Qualified Team Members list above: volunteers open in Serve > Volunteers, staff-only people open in Serve > Staff, and someone who holds both roles opens their Volunteers record. If a person has neither role, the column still shows their appointments, just without a record link.
In the By staff view, use Manage visible staff in the toolbar above the calendar to control which staff columns always appear and in what order:
• Pin staff members so their column always shows on the board, even on days they have no appointments. Drag pinned staff up or down to reorder their columns.
• Staff who are not pinned still appear automatically on any day they have an appointment, so bookings are never hidden.
• Use the search box in the dialog to find someone quickly before pinning them.
• Your pinned staff and their order are saved to your account and remembered the next time you open the Staff tab.
The Unassigned column (appointments with no staff member assigned) always shows on the Staff tab. It, along with the hour labels, stays pinned to the left of the grid as you scroll horizontally through staff columns.
• Must have: at least one qualified person must be working or no slot is offered.
• Nice to have: useful for planning, but it does not block booking.
Do not mark a position required unless the appointment truly cannot happen without it.
A position can use fixed coverage hours or follow the schedules of the people who are working. When individual staff schedules are authoritative, missing work hours can remove all bookable slots.
A required position with no qualified active person also removes availability.
Use named staff when a client must meet with a specific person. Do not create a separate appointment type for every staff member. Make sure the named person has work hours at the correct location. A date-specific override you set on that person's schedule still applies wherever they are named staff, even at a location where they have no weekly hours of their own; see the override note above.
If a named person is missing work hours, the appointment type's settings page flags it and offers an Add Schedule link straight to that person's record. That link follows the same routing as the Qualified Team Members list: it opens Serve > Volunteers for a volunteer, Serve > Staff for a staff-only person, and the Volunteers record for someone who holds both roles. When the person has neither role on file, the flag still shows so you know work hours are missing, but there is no link to click since there is no Serve record to open.
Positions decide whether qualified staff coverage exists. They do not always prevent two different appointment types from using the same person or shared team capacity at the same time.
When several appointment types must not overlap because they draw from the same limited staff pool, also configure a shared resource or provider-capacity limit and link every affected appointment type.
A position's settings page shows a Delete action in the header when your user group grants delete permission for positions. You can delete a position once it has never been staffed on a scheduled appointment.
If a position has been staffed on an appointment, CoolFocus refuses the delete and tells you how many scheduled appointments still reference it, so you know to make the position inactive instead.
Deleting a position also clears its location assignments, its links to appointment types, and its assigned qualified team members. This is a soft delete: the position and its history stay intact behind the scenes, so it can be recovered if it was removed by mistake.
Positions connect to People records, not directly to login accounts. For how user accounts, People records, My Schedule, and Home → Today's Appointments fit together, see Your login, People record, positions, and schedule views.
• Position is active.
• Correct people are assigned and active.
• Required versus optional is intentional.
• Work schedules use the correct location and time zone.
• Shared capacity is configured when cross-type overlap must be prevented.
• The Clinical Reviewer flag is set on whichever position(s) should be able to approve clinical reviews.