Overview
Note while this example uses ConnectWise APIs, the structure is modular and can be adapted to any PSA. This guide shows you how to connect Microsoft Bookings with your PSA platform to streamline and automate technician scheduling. By integrating these systems, you create a seamless workflow that connects end-user appointment bookings to internal service operations. Specifically, this setup enables you to:- Extract ticket context directly from booking form responses.
- Enrich calendar events with structured ticket details in the subject line.
- Update PSA tickets in real time to reflect a scheduled appointment.
- Trigger meeting recap tools like Fireflies or other AI notetakers by embedding ticket identifiers into meeting titles.
What this Power Automate flow does
This solution is built entirely within Power Automate and acts as a smart bridge between Microsoft Bookings and your PSA platform (e.g. ConnectWise, Autotask, Halo). When a customer schedules an appointment using your Microsoft Bookings page, the Power Automate flow is triggered and performs the following steps:- Extracts the ticket number from the customer’s booking form response.
- Calls your PSA’s API to fetch ticket details like summary and owner.
- Updates the calendar event title with the ticket number and summary (e.g.,
[12345] - Printer not working). - Updates the ticket status to “Scheduled” in your PSA system.
- Adds a scheduled resource/technician to the ticket based on the booking info.
- Triggers AI Notetakers (e.g. Fireflies AI) by embedding ticket metadata in the event title.
Why this matters
Business value
- Reduces technician coordination overhead: No need to manually update calendars or ticket statuses.
- Improves recap accuracy: Fireflies or Copilot recap tools can pick up the ticket number from meeting titles.
- Syncs calendars: Automatically connects Bookings and O365 calendars with CW schedules.
- Protects SLA compliance: Ensures that scheduled tickets are statused appropriately and assigned.
Best use cases
- MSPs with multiple engineers booking their own time.
- Partners using Fireflies AI or other AI notetakers for meeting recaps.
- Teams aiming to reduce manual triage and improve customer experience.
How to set it up
Build the flow in Power Automate using the structure and connections documented below.1. Shared booking page requirements
- You must include a shared booking page and custom form questions in Microsoft Bookings that collects the ticket number (e.g., “Enter your Thread ticket number”).
- Ensure staff members are mapped to the right Office 365 calendars.
2. Power Automate flow structure
- Trigger:
When an appointment is createdvia Microsoft Bookings. - Variable Init + Ticket Validation: Validates the ticket number format.
- API Call: Retrieves ticket data from ConnectWise.
- Switch Case: Maps engineer name → calendar → event update.
- PATCH Call: Updates the ticket status to “Scheduled”.
- POST Call: Creates a scheduled resource on the CW ticket.
- Update Event: Edits the Outlook calendar entry title.
3. Required connections
Ensure these connectors are active in Power Automate:Example booking flow
- Technicians use snippets in Thread Inbox to quickly share your team’s Microsoft Bookings link, making it easy for customers to book time with you.
- User Books a time via your public Microsoft Bookings page.
- Flow Triggered → Validates and extracts the ticket number.
- Calls CW API to pull ticket summary and owner.
- Updates Calendar Title →
[#12345] - Printer Jam on Floor 2 - Changes Ticket Status → “Scheduled”
- Adds Scheduled Resource in CW so SLA timers and escalations reflect reality.
FAQs
What if the ticket number is wrong?
What if the ticket number is wrong?
The flow includes a basic numeric validation step and will fail silently if a non-ticket value is entered.
Can I extend this to other boards or engineers?
Can I extend this to other boards or engineers?
Yes—just expand the
Switch block and calendar logic with the engineer’s name and calendar ID.