ServiceTitan logo + Acuity Scheduling logo

Automate ServiceTitan & Acuity Scheduling

Stop paying for mismatched spreadsheets. Sync data between ServiceTitan and Acuity Scheduling in real-time, so you can manage your operations without the busywork.

Custom API Integration
Secure Data Transfer
Done-For-You Setup

How the Data Flows

graph LR
    subgraph Source ["ServiceTitan"]
        T1(["Booking"])
    end
    
    subgraph Middleware ["Enterprise Integration Core"]
        W[Webhook
Listener] --> V{Validation
& Auth} V -->|Fail| DLQ[Dead Letter
Queue] V -->|Pass| Map[Data Mapping
& Transformation] Map --> Retry[Rate Limiting
& Retries] end subgraph Target ["Acuity Scheduling"] A1(["Add Blocked Off Time"]) end T1 -->|JSON Payload| W Retry -->|Authenticated API POST| A1 style Source fill:transparent,stroke:#cbd5e1,stroke-dasharray: 5 5 style Target fill:transparent,stroke:#cbd5e1,stroke-dasharray: 5 5 style Middleware fill:#f8fafc,stroke:#94a3b8,stroke-width:2px style T1 fill:#3b82f6,stroke:#fff,stroke-width:2px,color:#fff style W fill:#1f2937,stroke:#fff,stroke-width:1px,color:#fff style V fill:#1f2937,stroke:#fff,stroke-width:1px,color:#fff style Map fill:#1f2937,stroke:#fff,stroke-width:1px,color:#fff style Retry fill:#1f2937,stroke:#fff,stroke-width:1px,color:#fff style DLQ fill:#ef4444,stroke:#fff,stroke-width:1px,color:#fff style A1 fill:#e11d48,stroke:#fff,stroke-width:2px,color:#fff
When ServiceTitan and Acuity Scheduling operate in isolation, field technicians often face scheduling conflicts due to missed updates. For instance, if a job is rescheduled in ServiceTitan, the corresponding appointment in Acuity may not reflect this change, leading to technicians arriving at the wrong location. This results in wasted travel time and frustrated customers, as the dispatch team manually checks and updates schedules, consuming valuable hours that could be spent on service delivery.

Top Ways to Automate ServiceTitan & Acuity Scheduling

  • Real-Time Appointment Sync: Automatically sync appointments between ServiceTitan and Acuity Scheduling, ensuring that your field service team has the most up-to-date information, reducing scheduling conflicts and enhancing customer satisfaction.
  • Streamlined Job Creation: Instantly convert scheduled appointments from Acuity into service jobs in ServiceTitan, eliminating the need for manual data entry and minimizing the risk of errors.
  • Automated Notifications: Set up automated reminders and notifications for both customers and field technicians, ensuring everyone is informed about upcoming appointments and reducing no-shows.

How to Build the ServiceTitan → Acuity Scheduling Sync

  1. In ServiceTitan, configure a webhook by navigating to the 'Integrations' section and selecting 'Webhooks'. Set the trigger for 'Job Rescheduled'.
  2. Define the webhook URL to point to your middleware service that will handle the incoming data.
  3. In your middleware, listen for the incoming POST request from ServiceTitan. Extract the relevant payload data, such as 'jobId', 'newDate', 'newTime', and 'customerDetails'.
  4. Use the extracted data to construct a JSON object that matches Acuity Scheduling's API requirements for creating or updating appointments.
  5. Make a POST request to Acuity Scheduling's 'Create or Update Appointment' endpoint: https://acuityscheduling.com/api/v1/appointments. Include the necessary fields such as 'startTime', 'endTime', and 'customerDetails' in the request body.
  6. Verify the response from Acuity to ensure the appointment was successfully created or updated, and handle any errors appropriately.

Developer Warnings & API Gotchas

  • Ensure that the 'newDate' and 'newTime' from ServiceTitan are correctly formatted to match Acuity's expected ISO 8601 format; otherwise, the appointment creation will fail.
  • Be cautious of the 'jobId' mapping; if multiple jobs are rescheduled simultaneously, ensure that your middleware can handle and differentiate between these requests to avoid data collisions.
  • When updating an existing appointment, ensure that you are correctly identifying the appointment ID in Acuity; failing to do so may result in creating duplicate appointments instead of updating the existing one.

Supported API Operations

We leverage official, stable endpoints to ensure secure data transfer. No deprecated legacy routes.

  • When this happens in ServiceTitan... Booking
    Do this in Acuity Scheduling Add Blocked Off Time
  • When this happens in ServiceTitan... Booking Providers
    Do this in Acuity Scheduling Add Coupon Code
  • When this happens in ServiceTitan... Business Units Data
    Do this in Acuity Scheduling Add Package Code
  • When this happens in ServiceTitan... Campaigns
    Do this in Acuity Scheduling Add or Update Client

SyncMatrix Experts

Available for Hire

We are an AI-powered automation team. We build custom, reliable API workflows that eliminate manual data entry.

Speak with an Integration Architect

We build custom API workflows that don't hit rate limits.

I can see you're looking at mapping ServiceTitan to Acuity Scheduling. Tell me about your current setup—what's the specific bottleneck you're trying to automate right now?