Mizo Named Runner-Up in ConnectWise IT Nation PitchIT Competition 2025 Read the full press release

Schedule

Ask AI about this doc

Pick an assistant and ask your question — we'll send it along with a link to this article.

Schedule is the final step of Mizo’s dispatch workflow, and it only ever runs once a technician has already been picked for the ticket — it doesn’t run as a standalone step and it can’t pick a technician on its own. Once a technician is dispatched, Mizo re-syncs that technician’s real PSA calendar and either books or proposes the next appointment that fits both their actual availability and the ticket’s urgency — turning “who should work this ticket” into “when will they actually start,” without a dispatcher hunting through calendars by hand.

Why It Matters for MSPs

  • Faster response commitments. Appointments land on a technician’s calendar automatically, based on real availability and the ticket’s urgency window — not whenever someone gets around to booking it.
  • Consistent SLA handling. Mizo applies the same urgency-based window every time: roughly the next 4 hours for high urgency, 3 days for medium, 7 days for low. A company-wide-impact ticket is treated like high urgency; a multiple-users-impact ticket like medium.
  • Less manual calendar juggling. Dispatchers don’t need to cross-reference technician schedules by hand for every ticket that comes in.

How It Works

  1. Technician assignment comes first. Schedule only runs once a technician has been dispatched to the ticket (Assign at Recommendation or Automation) — it has nothing to attach a time to otherwise.
  2. Mizo checks availability. It re-syncs the technician’s PSA calendar immediately beforehand, then looks for the next slot that fits:
    • The technician’s actual working hours from their PSA schedule. If the PSA has no schedule configured for that technician at all, Mizo falls back to a generic Monday–Friday, 9am–5pm default rather than refusing to schedule.
    • Any appointments or time off already on their calendar.
    • The ticket’s urgency window (4 hours high, 3 days medium, 7 days low).
    • The appointment length configured for the tenant (30 minutes by default).
  3. Optional Scheduling Rules refine the result. If you’ve written natural-language Scheduling Rules, Mizo runs an extra check against them before booking. Rules can shorten or lengthen the appointment, restrict which hours are eligible, force a specific service location (onsite vs. remote), reassign to a different technician than the one dispatch picked, or skip scheduling entirely for that ticket. Without any Scheduling Rules configured, Mizo just books the next open slot at the default duration, with no travel-time consideration. Location is the one exception, and it’s platform-specific — see Per-PSA Differences below.
  4. Mizo books or proposes. Depending on your automation level, it either books the slot immediately on the PSA calendar, or proposes it and waits for a person to confirm (optionally letting them pick a different available time first). Immediately before actually booking, Mizo re-checks the calendar one more time to catch a race against another booking, and refuses the slot if it was taken in the meantime.
  5. If no slot fits inside the ticket’s urgency window, nothing happens at all. No appointment, no proposal, no note on the ticket, and no visible error — it’s a silent no-op, with only an internal log recording that no slot was found.

How to Use It (Step-by-Step)

  1. Make sure technician dispatch (Assign) is turned on — Schedule depends on it entirely and cannot run while Assign is Off, regardless of Schedule’s own setting.
  2. In Workflow, turn on Schedule tickets and choose Recommendation or Automation.
  3. Under Fine-tuning, optionally set the default appointment duration, weekly booking-hour windows, and natural-language Scheduling Rules. These are configured independently of the automation level and apply the same way at both Recommendation and Automation.
  4. At Recommendation, review the proposed appointment on the ticket, optionally swap to a different available slot from the live list, and confirm — this can be done on its own or together with confirming the technician assignment in one action.

Best Practices

  • Don’t run Schedule at Automation while Assign is only at Recommendation. In that combination, Mizo books real time on a technician’s calendar before any human has approved that they’re the right technician — and a later change to the ticket can add a second appointment at a different time, since the only protection against double-booking is blocking a re-book of the exact same slot. Either move Assign to Automation as well, or keep Schedule at Recommendation.
  • Turn on Assign before Schedule. Schedule has nothing to attach a time to if no technician has been dispatched.
  • Start at Recommendation so a dispatcher can sanity-check proposed times before they land on a calendar, then move to Automation once SLA windows and technician calendars are trusted.
  • Set the appointment duration and, if needed, scheduling time windows (e.g. onsite visits only 9–11am) — otherwise Mizo books anywhere across the technician’s full working day.
  • Keep technician PSA schedules current. Without one, Mizo falls back to a generic Monday–Friday, 9am–5pm default, which may not reflect a technician’s real hours. If a customer reports a double-booking or a mis-timed appointment, check first whether the technician’s PSA calendar is actually populated and synced.
  • On Autotask, note that booked appointments aren’t tied to a specific technician’s personal calendar, so avoid promising per-technician calendar visibility there.

Configurable Parameters

Setting: Workflow → Schedule tickets

SettingWhat happens
OffScheduling doesn’t run at all. No slot is calculated, nothing is proposed or booked, and no cost is incurred for this step.
RecommendationMizo calculates a proposed appointment time and adds a “Schedule appointment” step to the ticket for a person to review, optionally pick a different available time, and confirm before anything is booked in the PSA.
AutomationMizo books the appointment on the PSA calendar immediately — no review step, nothing for a human to confirm.

Separately, under Fine-tuning: the default appointment duration, optional weekly booking-hour windows, and the natural-language Scheduling Rules are all configured independently of the automation level above, and apply the same way at both Recommendation and Automation. Appointment duration and booking-hour windows can also be overridden per client location.

Roles and Permissions

  • Turning Schedule on/off (the automation level) requires the Agent configuration page at full access; viewers with readonly access can see the setting but not change it.
  • Configuring appointment duration, booking-hour windows, and Scheduling Rules requires the Fine-tuning page at full access.
  • Confirming a proposed appointment at the Recommendation level happens inside the PSA ticket itself, not in the Mizo backoffice. This confirmation isn’t gated by any Mizo backoffice permission level — it only requires the person to have that ticket open in the PSA. Anyone with PSA access to the ticket can confirm and book the appointment, even someone with no Mizo backoffice access at all.

Troubleshooting / Possible Error Messages

When a person is confirming a proposed appointment (Recommendation level), they can see:

  • “No available time slots found.” — the slot Mizo originally proposed is no longer open by the time someone reviews it.
  • “Failed to load available time slots.” — the live calendar lookup failed.
  • “Please select a time slot.” — trying to confirm without picking one.
  • “Failed to schedule the ticket. Please try again.” — the booking call to the PSA failed.
  • “The selected time slot is no longer available. Please select a different slot.” — Mizo re-checks the calendar immediately before booking to catch a race against another booking, and refuses if the slot was taken in the meantime.

The far more common failure is silent. When Mizo simply can’t find any open slot for the technician within the ticket’s SLA window, nothing appears anywhere on the ticket — no proposal, no note, no error. This is the most common reason support hears “why didn’t Mizo schedule this ticket?”

Concrete Usage Examples

High-urgency outage, Assign and Schedule both on Automation. Mizo dispatches the on-call technician and immediately books a 30-minute appointment on their PSA calendar within the next 4 hours — fully hands-off, nothing for a person to approve.

Assign on Automation, Schedule on Recommendation. The technician gets auto-assigned; the ticket gets a “Schedule appointment” step showing a proposed time. A dispatcher opens it, optionally swaps to a different available slot from the live list, and confirms — only then does the appointment get created in the PSA.

Assign is Off. Regardless of what Schedule is set to, nothing happens — no technician is ever picked for the ticket, so there’s nothing for Schedule to attach a time to.

Common questions:

  • “Why didn’t Mizo schedule this ticket?” — First check that Assign actually ran, since Schedule depends on it entirely. If it did, the most likely cause is that no slot was open for that technician within the ticket’s urgency window — this fails silently, with nothing showing on the ticket. Also check that the technician actually has a working schedule set up in the PSA; an empty one falls back to a generic 9-to-5 that may not reflect reality.
  • “Does this need Microsoft 365 connected?” — No. Scheduling works entirely off the PSA’s own calendar data. A separate feature, Microsoft Bookings, does need a Microsoft 365/Bookings connection — that one generates a self-serve link for the customer to book their own time with the assigned technician, and it’s independent of this setting.
  • “Can we turn this off for one client?” — The appointment duration and booking-hour windows can be overridden per client location. The Schedule automation level itself follows the tenant’s automation settings, which also support per-location overrides.

Good to Know

  • Scheduling works entirely off your PSA’s own calendar data and doesn’t require a Microsoft 365 connection. Microsoft Bookings — a separate feature that lets customers self-book a time with the assigned technician — has its own, independent setup.
  • Anyone with access to the ticket in your PSA can confirm a proposed appointment — no separate Mizo backoffice login is required.

Per-PSA Differences

  • ConnectWise creates a Schedule Entry tied to the ticket and the assigned member; it appears on their calendar. The appointment’s service location comes from the ticket’s existing service location unless a Scheduling Rule specifies one.
  • HaloPSA creates an Appointment tied to the ticket and the assigned agent; it appears on their calendar. By default, appointments are created as on-site unless a Scheduling Rule specifies otherwise — worth checking during onboarding for mostly-remote teams.
  • Autotask creates a Service Call tied to the ticket, but it isn’t tied to a specific technician, so it won’t show up as a personal calendar entry — and it records no service location at all.