a Sagan program · currently in private beta

Pm Booking Agent

The inbox shows parsed date requests from email, SMS, and voice IVR replies to ServiceTitan recurring service reminders, so the Maintenance Coordinator books customer-proposed dates instead of cold-calling 123 customers per month.
before

The Maintenance Coordinator manually calls 123 customers per month to book preventative maintenance appointments. Each call takes 5–7 minutes. She often has to call the same customer multiple times. Technicians sit with open capacity while she falls behind on outreach. She has no time left for the dispatch side of her job.

after

The agent sends email reminders ten days before month-start and SMS reminders five days out. Customers reply with their preferred date. The Coordinator checks the inbox twice a day, sees parsed date requests, and books the customer-proposed dates in ServiceTitan herself. She stops calling 123 customers per month and starts reviewing 15–25 inbox threads where the customer already requested a date.

equipment service / commercial refrigeration / food service / field services / lead intake / scheduling / follow-up / operations / ServiceTitan / Google Workspace / Twilio / OpenRouter /  equipment service / commercial refrigeration / food service / field services / lead intake / scheduling / follow-up / operations / ServiceTitan / Google Workspace / Twilio / OpenRouter / 
the problem

123 preventative maintenance bookings per month, all handled by phone calls that take 5–7 minutes each.

One Maintenance Coordinator manages 70+ preventative maintenance jobs per week across 10,000+ customer locations.

01
April 2026 volume

123 recurring service events open in a single month, against a target of 70 jobs per week.

02
Time per booking

5–7 minutes per phone call, often requiring multiple attempts per customer.

03
Operational impact

Technicians sit with open capacity while the Coordinator falls behind on outreach.

the math, if you want to look

Email and SMS handle 80% of bookings. The Coordinator only calls the 5–20% who don't respond.

proof 01
Async-first outreach

Email at T-10 days, SMS at T-5 days, voice IVR fallback at T-0 for landline-only contacts.

proof 02
Customer-proposed dates

Replies are parsed into proposed booking times and surfaced to the Coordinator for confirmation.

proof 03
Reduced phone time

The Coordinator stops cold-calling 123 customers per month and starts reviewing 15–25 inbox threads where the customer already requested a date.

The agent sends email reminders ten days before month-start, SMS reminders five days out (when A2P 10DLC clears), and a short voice IVR fallback at month-start for landline-only contacts. Customers reply with their preferred date. The Coordinator checks the inbox twice a day, sees parsed date requests, and books the customer-proposed dates in ServiceTitan herself. The 80%+ of bookings that can be done over async channels get handled automatically. She only spends phone time on the 5–20% of customers who don't respond through email or SMS.

how it works

How the PM Booking Agent works

The agent ingests upcoming preventative maintenance jobs from ServiceTitan each week, runs a staggered email-SMS-voice sequence, and surfaces only the warm handoffs that need a human to finish booking.

step 01
Ingest upcoming PMs from ServiceTitan

Every week, the agent pulls the list of preventative maintenance jobs due this month from ServiceTitan, including customer name, location, equipment, and contact details.

step 02
Send email reminder at T-10 days

The agent sends a personalized email to the customer's preferred contact, mentioning the equipment and asking for a preferred service date.

step 03
Send SMS reminder at T-5 days

For customers with mobile numbers, the agent sends an SMS reminder. Outbound SMS activates once A2P 10DLC registration clears; inbound SMS is live from day one.

step 04
Voice IVR fallback at T-0 for landlines

For landline-only contacts, the agent runs a 30-second voice call: 'Press 1 to request a date. Press 2 to have a booking link emailed to you.' Both branches surface to the Coordinator's inbox.

step 05
Capture replies into one inbox

Email replies, SMS replies, and IVR keypress responses all flow into a shared inbox. The agent parses each reply to extract the customer's proposed date.

step 06
Coordinator reviews and books

The Coordinator checks the inbox twice a day, sees parsed date requests with the full conversation thread, and books the customer-proposed dates in ServiceTitan herself.

ai agent · estimator console inputs transform outputs public preview
inputs
ServiceTitan recurring service events +

Weekly list of preventative maintenance jobs due this month, including customer name, location, equipment, and contact details.

Customer contact methods +

Email addresses and phone numbers (cell or landline) from ServiceTitan customer and location records.

Equipment list +

Structured equipment items from the recurring service template or free-text job summary.

Inbound customer replies +

Email, SMS, and voice IVR keypress responses to outreach attempts.

transformation
Parse equipment and contact details +

Extract equipment list, point of contact name and role, and contact methods from ServiceTitan data and free-text job summary.

Classify contact by line type +

Use Twilio Lookup to determine whether a phone number is a cell, landline, or VoIP so the agent can route voice IVR only to landline-only contacts.

Generate personalized outreach copy +

Draft customer-facing emails and SMS messages that mention the equipment and ask for a preferred service date.

Execute staggered sequence +

Send email at T-10 days, SMS at T-5 days (when 10DLC clears), and voice IVR at T-0 for landline-only contacts.

Capture and classify inbound replies +

Route email, SMS, and voice IVR responses into a shared inbox and classify each reply as proposed-date, question, opt-out, or irrelevant.

Extract proposed dates from replies +

Parse natural-language date requests ('next Tuesday,' 'the 22nd') into structured booking times.

outputs
Coordinator inbox with parsed replies +

A queue of jobs in varied states (Upcoming, In-Progress, Awaiting Human, Escalated, Closed) with full conversation threads and extracted date requests.

Activity timeline per job +

Durable audit log of every outreach attempt and state transition, visible in the agent UI and optionally written back to ServiceTitan.

Customer-proposed booking dates +

Extracted from email, SMS, and voice IVR replies and surfaced to the Coordinator for confirmation and booking in ServiceTitan.

Escalation list for manual follow-up +

Jobs where all channels were exhausted with no reply, flagged for the Coordinator to call manually.

draft ready for estimator review _
tech used
ServiceTitan API or XLSX exportGmail API for email pollingTwilio for SMS and voice IVROpenRouter for LLM extraction and reply classification
tool alternatives
ServiceTitan REST API (if Works or Legacy tier) or scheduled XLSX report (all tiers)Alternative SMS provider with A2P 10DLC support (requires separate registration)
honest qualification

Is this for you?

built for you if
  • + Commercial equipment service companies - Ice machine dealers, refrigeration servicers, HVAC contractors, and other field-service verticals that run preventative maintenance programs on a recurring cadence.
  • + Teams with 50+ PM jobs per month - The agent's value scales with outreach volume. Below 50 jobs per month, phone-first outreach may still be faster than setting up async channels.
  • + Maintenance coordinators or dispatchers - The primary user is someone who manages the PM schedule and dispatch board and can spend 10–20 minutes per day reviewing parsed replies and booking in ServiceTitan.
  • + Companies running ServiceTitan - The agent ingests from ServiceTitan's Recurring Service Events and writes activity notes back (on API tier). No other CRM is currently supported.
  • + Teams comfortable with email and SMS outreach - The agent's strength is async-first scheduling. If your customers strongly prefer phone or in-person visits, this agent is a poor fit.
not for you if
  • - Emergency or same-day service requests - The agent is built for recurring, scheduled maintenance with a 10–30 day lead time. Urgent repairs need immediate phone outreach.
  • - Complex multi-step booking workflows - The agent surfaces parsed date requests to the Coordinator for confirmation. If your booking process requires multiple back-and-forth exchanges or complex approval chains, the agent will escalate those to the Coordinator.
  • - Conversational AI phone calls - The voice channel is a 30-second IVR only ('press 1 for a date, press 2 for email'). Conversational AI calling is out of scope.
  • - Customers without email or cell phone - The agent requires at least one async channel (email or SMS) per customer. Landline-only contacts route to voice IVR, but if a customer has no email, cell, or landline, the agent cannot reach them.
  • - Non-ServiceTitan CRMs - The agent is purpose-built for ServiceTitan. Integration with other CRMs (HubSpot, Salesforce, etc.) is not currently supported.
pricing

Pricing and build model

to build

The PM Booking Agent is a scoped custom build. Pricing covers the initial build, integration with your ServiceTitan tier (XLSX or REST API), and deployment on Railway. Usage costs are separate and cover Twilio SMS/voice, Gmail API, Twilio Lookup (line-type classification), and AI inference via OpenRouter.

then
  • Build cost is fixed and covers the Coordinator inbox UI, ServiceTitan ingest adapter (tier-adaptive), email and SMS outreach, voice IVR, and activity timeline.
  • Usage costs scale with outreach volume. At 70 jobs per week (~300 per month), expect ~$15–30/month in Twilio + AI inference costs.
  • A2P 10DLC registration (required for outbound SMS) is handled by Memphis Ice with Sagan's runbook; no additional cost beyond Twilio's standard SMS rates once approved.
  • Twilio Lookup (line-type classification) is a one-time cost of ~$80 to classify Memphis Ice's ~10K existing customer phone numbers; subsequent new numbers are classified on first ingest.
  • If Memphis Ice is on ServiceTitan's The Works or Legacy tier, the REST API option enables additional features: writing activity notes back to ServiceTitan, checking whether a job was already completed before sending outreach, and reaching multiple contacts per location when the job summary doesn't name a single point of contact.
FAQ
Should the agent automatically book jobs in ServiceTitan, or does the Coordinator review first?

The agent surfaces parsed date requests to the Coordinator for review. She confirms the customer's proposed date and books it in ServiceTitan herself. This keeps the Coordinator in control of the final booking and prevents duplicate entries if a job was already completed outside the agent.

Can the agent reach customers who only have landline phone numbers?

Yes. The agent detects landline-only contacts using Twilio Lookup and routes them to a short voice IVR at month-start. The IVR offers two options: press 1 to request a date, or press 2 to receive a booking link by email. Both responses surface to the Coordinator's inbox.

What happens if a customer doesn't respond to email or SMS?

Jobs that receive no response through email or SMS are flagged as Escalated and surfaced to the Coordinator's inbox. She can then call the customer manually or follow up using her own process. The agent does not attempt phone calls for responsive customers.

When does SMS outreach start?

Inbound SMS is live from Phase 1 launch. Outbound SMS activates in Phase 1.5, once A2P 10DLC brand and campaign registration clears with Twilio (typically 2-3 weeks). Until then, the agent runs email at T-10 days and voice IVR at T-0 for landline-only contacts.

Does the agent work with ServiceTitan tiers other than The Works or Legacy?

Yes. The agent adapts to your ServiceTitan tier. On The Works or Legacy, the agent can read ServiceTitan data directly through the REST API for real-time updates and multi-contact outreach. On Starter or Essentials, the agent ingests a weekly XLSX export from the Follow Ups screen that the Coordinator exports manually. Both paths deliver the same core workflow: email reminders, SMS when live, voice IVR fallback, and a parsed inbox for the Coordinator.

What if a customer has multiple contacts at the same location, like a facility supervisor and a billing contact?

On The Works or Legacy tier, the agent can reach multiple contacts with role-based ranking. It prioritizes facility and operations roles over billing or clinical roles, and respects any do-not-contact tags on individual contacts. On Starter or Essentials, the agent reaches the primary contact and relies on customer-side forwarding for multi-contact scenarios.

How much does the agent cost to run each month?

Build cost is fixed and covers the Coordinator inbox UI, ServiceTitan integration, email and SMS outreach, voice IVR, and activity timeline. Usage costs scale with outreach volume. At 70 jobs per week (roughly 300 per month), expect $15-30/month in Twilio SMS/voice and AI inference. Twilio Lookup for line-type classification is a one-time cost of roughly $80 to classify existing customer phone numbers.

Can the agent handle emergency or same-day service requests?

No. The agent is built for recurring preventative maintenance with a 10-30 day lead time. Urgent repairs need immediate phone outreach from your team. The agent's strength is async-first scheduling for planned maintenance visits.

next step

Ready to stop spending 5–7 minutes per customer on preventative maintenance booking calls.

The PM Booking Agent handles the 80% of bookings that can be done over email and SMS, so your Maintenance Coordinator only spends phone time on the 5–20% of customers who don't respond through async channels. Let's talk about your ServiceTitan tier, your current booking volume, and how the agent fits into your dispatch workflow.