FieldCamp
Calendar & Scheduling

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 scheduled status.
  • 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 visitStartDateTime has already passed but are still in the scheduled state 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:

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.

On this page