Unscheduled Visits & the Dispatch Queue in FieldCamp
Manage unscheduled visits in FieldCamp — park work with Schedule Later, dispatch from the Job Tray, and clear overdue Alerts.
Under the hood — see how Visits work in the FieldCamp data model: the fields they hold, how they connect to your other records, and how to customize them.
Unscheduled visits are a first-class state in FieldCamp. They let dispatchers park new work without committing to a date, hold flexible visits until a slot opens, and surface overdue items for the team to action. This guide explains how a visit becomes Unscheduled, how it differs from a Scheduled visit, and how to clear the queue from the Job Tray at the bottom of the Calendar.
What an unscheduled visit is
In FieldCamp, every visit has a visitStatus. When a visit is in the unscheduled state, it has no fixed start time on the calendar grid — even if a technician is assigned. Unscheduled visits typically arrive in three ways:
- Schedule Later is turned on when the job or visit is created, so no start time is set.
- A visit was created from a request or estimate but a date has not been picked yet.
- The visit is flexible (an Any Time visit) and is waiting to be slotted into a technician's day.
A Scheduled visit, by contrast, has visitStatus: scheduled plus a concrete visitStartDateTime. When you place an unscheduled visit on the calendar by dragging it from the tray, it moves out of the unscheduled state and onto the grid at the time you drop it.
Unscheduled is different from Unassigned. An unassigned visit has no technician on it but may already have a time; an unscheduled visit may have a technician but no time. The Job Tray treats them as separate tabs so you can act on each independently.
How a visit enters the Unscheduled bucket
There are a few entry points. The most common is the Schedule Later toggle when you create or edit a job.
Schedule Later on job creation
When creating a one-off job, turning on Schedule Later hides the date and time pickers entirely. The job is saved without a visit start time, so the resulting visit lands in the dispatch queue.
Schedule Later on an existing job
Open a one-off job's scheduling block and toggle Schedule Later on to push it back into the Unscheduled bucket. Once a visit in the job has started or completed, the Schedule Later checkbox is locked so you cannot accidentally flip a started job back to the queue.
Convert from a request
When you convert an accepted service request into a job, the resulting visit can land in the queue until a dispatcher places it on the calendar.
Any Time visits awaiting a slot
Visits marked Any Time stay flexible and can be dragged from the tray to any time on the grid, regardless of their underlying status.
Finding unscheduled visits in the Job Tray
The Job Tray sits at the bottom of the Calendar screen and is the primary place to work the dispatch queue. Toggle the tray to Jobs mode (the other mode is Requests) to see visits grouped by status.
The Visits side of the tray is powered by your visit pipeline configuration. When no custom pipeline is set, FieldCamp falls back to this default set of tabs:
- Unassigned — any visit with no technician on the team, regardless of
visitStatus. - Scheduled — visits that have a tech and a
scheduledstatus. - In Progress — visits currently being worked on.
- Completed — terminal "done" state.
- On Hold — paused visits and visits with Schedule Later turned on.
- Alerts — overdue: visits whose
visitStartDateTimehas already passed but are still in thescheduledstate with a tech assigned. - Cancelled — terminal cancelled state.
If your organization has customized the visit pipeline in settings, the tabs reflect those stages instead, with Unassigned and Alerts still appearing as virtual tabs at the start and end. See Pipeline stages and configuration for how stages are defined.
Visits that have been parked with Schedule Later show up in On Hold (the tab matches on either visitStatus: paused or scheduleLater: true). Brand-new visits with no tech show up in Unassigned.
Dispatching from the tray
The tray is designed for one-handed dispatch. A grip handle appears at the left of any row that can be dragged onto the calendar.
Switch to a swim-lane view
Use the Timeline or Resource view so every technician has their own row. This makes drag-and-drop targeting fast.
Open the tab with the work you want to dispatch
Make sure the tray is in Jobs mode and open the tab with the visit you want to schedule — most commonly Unassigned or On Hold.
Drag the row onto the grid
Grab the row by its grip handle and drop it onto a technician row at the start time you want. The visit picks up the dropped time and shows up on the grid.
Resolve any warning prompt
If the visit's status would normally block a drag, FieldCamp shows a warning toast instead of moving the event. Drag again from the tray after correcting the status, or edit the visit directly to reschedule.
Whether a row is draggable depends on the calendar's view mode. In the standard calendar view, only unscheduled visits and visits marked Any Time can be dragged from the tray. In Timeline and Resource (swim-lane) views, any visit can be dragged from the tray except those in scheduled, confirmed, dispatched, in_transit, arrived, in_progress, completed, or cancelled (Any Time visits remain draggable). Rows that are not draggable simply do not show a grip handle.
Assigning a tech without scheduling
You do not have to set a time to clear an item from the Unassigned queue. From any row in the Unassigned tab — or any row that has no team members yet — use the Assign button on the right of the row to attach a technician. The tray calls the per-visit quick-action endpoint and immediately reloads, so the assignment is reflected on the calendar and on the mobile app.
If a tech is already on the visit, the same control turns into a kebab menu that opens the quick-action menu, where Reassign Tech is available alongside other actions described below.
Resolving alerts and overdue visits
The Alerts tab is the dispatcher's safety net. It surfaces scheduled visits that have a tech assigned but whose visitStartDateTime has already passed. Two common causes:
- The technician forgot to update the visit's status when they arrived or started work.
- The visit was scheduled optimistically and now needs to be rescheduled or reassigned.
From the Alerts tab, open the quick-action menu on a row to take action. The available quick actions in this tab are:
- Reassign Tech
- Change Status (opens a submenu of valid next statuses for that visit)
- View Job Details
- View on Map
- Call Client and Text Client (only when Twilio Calls is connected)
- Put on Hold
For deeper edits — notes, forms, or full rescheduling — open the visit details directly from the row.
AI Dispatcher and the queue
If your organization has the AI Dispatcher add-on connected and activated, the tray exposes any AI Dispatcher-specific pipeline stages alongside your normal tabs (these are gated behind the add-on and hidden otherwise). See AI Dispatcher inside FieldCamp for how the add-on lights up in the calendar and tray. For the full submit-and-review workflow, see:
- Submitting a job for AI dispatch
- Accepting or rejecting AI dispatch suggestions
- When the AI dispatcher can't find a technician
Reference for every visit status, including unscheduled, scheduled, paused, and on hold.
Pick the view that shows your dispatch queue the way you need to act on it.
Troubleshooting
Why can't I drag a visit out of the tray?
Drag-and-drop from the tray is restricted by the visit's current status and the calendar view you are in. In the standard calendar view, only unscheduled visits and Any Time visits are draggable. In Timeline and Resource views, any status is draggable except scheduled, confirmed, dispatched, in_transit, arrived, in_progress, completed, and cancelled. If the row has no grip handle on the left, it cannot be dragged from the tray — open the visit and reschedule it from the details, or change the status using the quick-action menu first.
I turned on Schedule Later but the toggle is now disabled
Schedule Later is locked once any visit in the job has started or been completed. The lock prevents a job that already has field work on it from being pushed back into the queue. Cancel or revert the in-progress visit first if you really need to park the rest of the job.
An overdue visit shows in Alerts but the technician says it's done
The visit's status was never updated past scheduled. Open the quick-action menu and use Change Status to move it to Completed (or have the technician complete it from the mobile app). The Alerts tab is defined as scheduled visits with a tech whose start time has passed, so updating the status drops it off the tab.
Where do unscheduled requests live?
Requests have their own tabs in the Job Tray when you flip the tray from Jobs to Requests mode. The default fallback set includes a New Request, Unscheduled, Overdue, and other inspection-and-quote stages. See tracking requests for the full request lifecycle.
Related articles
- Calendar overview
- Calendar views explained
- Job Tray and dispatch
- Job and visit statuses in FieldCamp
- How to schedule jobs in FieldCamp
- Schedule Later and visit schedule links
- Understanding visits
- Schedule conflicts and resolution
- FieldCamp live team tracking
- Route optimization in FieldCamp
- Creating and tracking requests
- Pipeline stages and configuration
- AI Dispatcher inside FieldCamp
- What is AI Dispatcher
- Submitting a job for AI dispatch
- Accepting or rejecting AI dispatch suggestions
Route Optimization | FieldCamp
Optimize technician routes, lock routes per team member, preview and apply changes, and review AI dispatch decisions from FieldCamp's calendar.
Live Team Tracking | FieldCamp
Track your field team in real time with GPS on an interactive map. View live locations, movement history, daily analytics, and team status at a glance.