---
title: "AI Voice Agent + ServiceTitan: HVAC Booking and Dispatch Pro Integration"
description: "ServiceTitan's Atlas, Dispatch Pro, and Adaptive Capacity make HVAC the most native AI voice agent vertical of 2026. We walk through Job, Appointment, and Technician APIs for a CallSphere build."
canonical: https://callsphere.ai/blog/vw2g-servicetitan-hvac-voice-dispatch-pro
category: "AI Voice Agents"
tags: ["ServiceTitan", "HVAC", "Dispatch", "Voice Agents", "Trades"]
author: "CallSphere Team"
published: 2026-04-13T00:00:00.000Z
updated: 2026-05-07T09:32:11.277Z
---

# AI Voice Agent + ServiceTitan: HVAC Booking and Dispatch Pro Integration

> ServiceTitan's Atlas, Dispatch Pro, and Adaptive Capacity make HVAC the most native AI voice agent vertical of 2026. We walk through Job, Appointment, and Technician APIs for a CallSphere build.

> ServiceTitan made AI dispatch native in 2026 with Dispatch Pro, Atlas, and Adaptive Capacity. CallSphere's HVAC deployment integrates the same primitives, so independent voice agents now book directly to the dispatch board without a middleware layer.

## What the integration unlocks

```mermaid
flowchart TD
  Client[MCP client · Claude Desktop] --> MCP[MCP server]
  MCP --> Tool1[Tool: Calendar]
  MCP --> Tool2[Tool: CRM]
  MCP --> Tool3[Tool: KB search]
  Tool1 --> SaaS1[(Calendly)]
  Tool2 --> SaaS2[(Salesforce)]
  Tool3 --> SaaS3[(Notion)]
```

CallSphere reference architecture

A homeowner calls at 7:42pm with a no-heat emergency in 18°F weather. The CallSphere voice agent identifies the customer by phone in ServiceTitan, sees prior service history, classifies the call as Emergency Heat, checks Adaptive Capacity for the next on-call technician, books a 9pm window, and texts the customer the technician's name and ETA. Total time: 2 minutes 14 seconds. The dispatcher sees the booked job appear on the board and never has to touch it.

## How the ServiceTitan API exposes it

ServiceTitan namespaces resources by domain. CallSphere uses **Dispatch** (`/dispatch/v2/tenant/{tenantId}`) for jobs, appointments, and capacity; **CRM** (`/crm/v2/tenant/{tenantId}`) for customers and locations; **Settings** (`/settings/v2/tenant/{tenantId}`) for technicians; **Job Booking** (`/jpm/v2/tenant/{tenantId}`) for the booking flow itself.

Key endpoints: `GET /jpm/v2/tenant/{tenantId}/job-types` (callable services), `POST /jpm/v2/tenant/{tenantId}/jobs` (book a job), `GET /dispatch/v2/tenant/{tenantId}/capacity` (Adaptive Capacity availability), `GET /dispatch/v2/tenant/{tenantId}/appointments` (current schedule), `PUT /dispatch/v2/tenant/{tenantId}/appointments/{id}/assignments` (assign a technician).

Auth is OAuth client credentials with a tenant-scoped App Key. Required scopes vary by endpoint.

## How CallSphere implements it

CallSphere ships an HVAC tool pack mirroring the Healthcare 14-tool pattern: `lookup_customer`, `create_new_customer`, `get_available_slots`, `book_job`, `reschedule_job`, `get_technician_eta`, `request_callback`, `escalate_to_dispatcher`, `add_job_note`, `request_invoice`, plus `emergency_triage`, `upsell_membership`, `book_maintenance_visit`, and `survey_post_job`. All 14 wrap ServiceTitan endpoints one-to-one.

CallSphere runs 37 specialist agents and 90+ tools across 6 verticals. Pricing $149 / $499 / $1499. [14-day trial](/trial). [22% affiliate program](/affiliate).

## Build steps

1. Get a ServiceTitan Developer account and request API access for your customer's tenant. They generate the App Key.
2. Implement OAuth client credentials flow. Token TTL is short — refresh proactively.
3. At call connect, normalize the caller's E.164 phone and search Customers via `/crm/v2/customers?phone={e164}`.
4. If matched, fetch active service contracts and last 3 jobs to seed agent context. If unmatched, prompt for address and create a Location plus Customer.
5. For booking: call Adaptive Capacity to get bookable windows, present 2-3 to the caller, and POST to `/jpm/v2/jobs` with selected window, job type, and customer ID.
6. Use `PUT /assignments` only if the dispatcher's policy is to assign at booking time; most teams let Dispatch Pro auto-assign.
7. Subscribe to ServiceTitan webhooks for `job.scheduled`, `job.cancelled`, `technician.dispatched` so the voice agent can confirm or rebook out-of-band changes.

## Code snippet

```typescript
// Book an HVAC job in ServiceTitan from a CallSphere voice agent
const job = await fetch(
  `https://api.servicetitan.io/jpm/v2/tenant/${tenantId}/jobs`,
  {
    method: "POST",
    headers: {
      Authorization: `Bearer ${stAccessToken}`,
      "ST-App-Key": stAppKey,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      customerId: matchedCustomer.id,
      locationId: matchedLocation.id,
      jobTypeId: 12, // "Emergency No Heat"
      priority: "Urgent",
      campaignId: 4501, // "Inbound Voice Agent"
      summary: "No heat reported. CallSphere voice agent diagnosis: possible ignition issue.",
      appointments: [{
        start: chosenSlot.startIso,
        end: chosenSlot.endIso,
      }],
    }),
  }
);
```

## FAQ

**Does ServiceTitan support third-party voice agents?** Yes via the public API. ServiceTitan also offers their own AI Voice Agent in Contact Center Pro, which is fully native; CallSphere is the right pick when you want a multi-vertical voice provider that integrates with ServiceTitan rather than replaces parts of it.

**How does Adaptive Capacity work over the API?** `GET /dispatch/v2/capacity` returns time-windowed booking availability accounting for technician shifts, drive time, and skill matching. CallSphere caches 60s.

**What about V1 vs V2 API?** Use V2. V1 is in deprecation. The V2 namespace structure (dispatch, crm, settings, etc.) is what current docs cover.

**Can the agent reschedule mid-call?** Yes via `PUT /jpm/v2/jobs/{id}` for the date and `PUT /dispatch/v2/appointments/{id}` for the appointment window.

**How do I demo this?** Start a [trial](/trial). Pick HVAC during onboarding or [contact us](/demo) for an HVAC walkthrough.

## Sources

- [ServiceTitan API: Job Planning](https://developer.servicetitan.io/docs/api-resources-job-planning/)
- [ServiceTitan API: Dispatch](https://developer.servicetitan.io/docs/api-resources-dispatch/)
- [AI Voice Agents in HVAC - ServiceTitan](https://www.servicetitan.com/blog/ai-voice-agents-in-hvac)
- [ServiceTitan Developer Docs](https://developer.servicetitan.io/docs/apis)

---

Source: https://callsphere.ai/blog/vw2g-servicetitan-hvac-voice-dispatch-pro
