Using the ServiceTitan API for Powerful Custom Integrations
by Spencer, Co-Founder / CTO
Introduction
Service-based businesses — from HVAC companies to plumbing and electrical contractors — often face the challenge of optimizing day-to-day operations, enhancing customer experiences, and streamlining workflows. While ServiceTitan (one of the most comprehensive field service management platforms) covers a broad range of needs out-of-the-box, real competitive advantage typically emerges from custom ServiceTitan integrations that unify data across multiple systems and automate repetitive tasks.
One of the best ways to achieve these deeper integrations is through the ServiceTitan API (often also seen as “Service Titan api”). Using this robust application programming interface, organizations can securely exchange data with CRMs, ERPs, specialized reporting tools, marketing platforms, or homegrown applications, transcending the default capabilities of ServiceTitan. Proper planning allows you to harness the ServiceTitan API to connect processes ranging from scheduling to job costing, delivering a transformative impact on both efficiency and user satisfaction.
In this guide, we’ll show you how to get started with the ServiceTitan API, from configuring your credentials and environment to crafting sample requests in Postman. You’ll also learn about a simple integration workflow, best practices, and real-world examples to help you visualize what’s possible. By the end, you’ll be ready to create your own ServiceTitan integrations — or consult experts like Aclarify for specialized support.
Before we dive in, remember that the ServiceTitan API covers functional areas from CRM to Job Planning, Inventory to Memberships, Payroll to Task Management, and more. As you consider a ServiceTitan integration for your business, identify the modules that align best with your operational objectives. Let’s begin.
Key Insight
While this guide delves into certain technical details of the ServiceTitan API, it aims to remain approachable for readers who are tech aware but not deeply technical. We define core terms and explain concepts so you can follow along and adopt the ServiceTitan API confidently in your operations.
Why the ServiceTitan API Matters
ServiceTitan has proven itself a leader for service-based companies, offering tools that streamline scheduling, invoicing, marketing, and more. But even a robust platform sometimes falls short of addressing unique organizational needs as businesses grow. This is where the ServiceTitan API (or “Service Titan api”) truly excels.
Expanded Capabilities
By leveraging the ServiceTitan API, you can:
- Integrate with Third-Party Software: Seamlessly connect data between ServiceTitan and other solutions (e.g., Salesforce, NetSuite, Power BI).
- Build Custom Apps: Create specialized dashboards, internal tools, or client-facing apps that pull or push data into ServiceTitan.
- Develop Automation: Trigger email sequences, Slack alerts, or CRM status updates whenever specific data changes in ServiceTitan.
Reduced Silos & Repetitive Tasks
As businesses adopt more software, data silos may arise, leading to manual errors and miscommunication. By allowing real-time or scheduled data exchange among your applications, the ServiceTitan API helps unify workflows, reduce redundant tasks, and cut back on data entry.
Scalability & Adaptability
The ServiceTitan API is built to handle a high volume of requests, supporting businesses that need to scale. As your organization grows, you can expand your ServiceTitan integration — for instance, by introducing new data flows or integrating additional modules — without overhauling your core platforms.
Customized Solutions for a Competitive Edge
ServiceTitan integrations are about more than simple data syncing. You can tailor advanced workflows, from job costing that accounts for specialized services to membership program automations that factor in extra discounts. Because you control the flow of data, you gain deeper insights and a stronger market position.
Overview of ServiceTitan’s API Capabilities
The ServiceTitan API spans a wide array of endpoints. You can explore and manage nearly every aspect of the platform — from Accounting to CRM, Dispatch to Task Management, Inventory to Payroll, and beyond. For details, consult the official portal (accessed via your ServiceTitan login or at go.servicetitan / goservicetitan), where the authentication flows and endpoint details are meticulously documented.
Below is a snapshot of major functional categories, which can also be found here on the ServiceTitan API documentation site:
- Accounting: Invoices, payments, journals, tax zones
- CRM: Customers, leads, bookings, tags
- Customer Interactions: Technician ratings or feedback
- Dispatch: Assignments, capacity, zones, schedules
- Equipment Systems: Installed equipment data
- Forms: Submitting or retrieving field forms
- Inventory: Purchase orders, transfers, trucks, warehouses
- Job Booking & Planning: Call reasons, job types, projects
- Marketing & Ads: Campaigns, attribution
- Memberships: Recurring services, membership plans
- Payroll: Payroll records, timesheets, adjustments
- Pricebook: Categories, materials, services, images
- Reporting (beta): Dynamic value sets, custom reports
- Sales & Estimates: Generating or retrieving estimates
- Scheduling Pro: Advanced schedulers, sessions
- Service Agreements: Contract-based services and renewals
- Settings: Business units, technicians, user roles
- Task Management: Tasks, statuses, related data
- Telecom: Call records, analytics
Given this breadth, newcomers can feel overwhelmed. Start with areas that directly address your business pain points — like CRM or Inventory — and expand gradually as you see results.
Is This Overwhelming? Start Small
Don’t try to tackle every endpoint at once. Focus on a single use case that yields immediate ROI — like syncing invoices with your accounting system. As you master the process, broaden your integration scope.
Setting Up Your Environment for a ServiceTitan API Integration
A well-structured integration begins with five key steps:
- Requesting Access
- Configuring Developer Portal Settings
- Identify the API Scope
- Authorizing Your App in the ServiceTitan UI
- Plan Your Integration Approach
Completing these sequentially ensures proper access, security, and architectural planning — critical for success when building ServiceTitan integrations.
Step 1: Requesting Access
To start using the ServiceTitan API, you’ll need developer access:
- Register: Visit developer.servicetitan.io/request-access and fill out the form if you’re a developer.
- Email integrations@servicetitan.com: If you’re a ServiceTitan customer wanting deeper integrations, email your account details to that address.
Logging Into the Developer Portal
Once granted access:
- Go to developer.servicetitan.io/signin and log in (note this is distinct from the typical ServiceTitan login page).
- You may be prompted to choose Integration Environment user or Production Environment user. Pick the environment that matches your account or test environment.
- If you don’t see your apps or credentials, confirm you’re logged into the correct environment.
Key Note
If you have trouble finding your newly created app when connecting in the ServiceTitan UI, you might be in the wrong environment (e.g., test instead of production). Double-check or contact ServiceTitan Support.
Step 2: Configuring Developer Portal Settings
Once logged in, create a new application:
- Create a New App: Enter a descriptive Application Name, Organization, Homepage, and Tenant(s).
- Select API Scopes: Only pick endpoints required for your solution (e.g., CRM, Dispatch). This follows the principle of least privilege, enhancing security.
- Click “Create App”: You’ll see an overview page with essential info.
- Edit the App: Note your App ID and Application Key. Keep them safe — you’ll need them shortly.
Security Tip
Request only the scopes (endpoints) necessary for your ServiceTitan integration to minimize risk if credentials are ever compromised.
Step 3: Identify the API Scope
Even though you select scopes in the portal, double-check them:
- Necessary Endpoints: Which categories do you actually need? (e.g., inventory, dispatch, membership)
- Future Scaling: If you plan to extend usage later, you can reconfigure new scopes instead of starting too broadly now.
- Tight Permissions: Overexposure invites security or compliance risks. Keep it minimal.
Step 4: Authorizing Your App in the ServiceTitan UI
After specifying scopes and saving your app:
- Open the ServiceTitan UI: Log in with proper admin or integration privileges.
- Go to Settings → Integrations → API Application Access: This panel lists existing or connectable apps.
- Click “Connect New App”: Select the app you made in the developer portal.
- Click “Connect” and “Allow Access”: Verify the permissions are correct.
- Retrieve Tenant ID, Client ID, and Client Secret:
- Tenant ID: Identifies your ServiceTitan environment
- Client ID: Ties to your newly connected app
- Client Secret: Generated once — store it securely (e.g., in an encrypted vault)
At this point, you have:
- App ID and Application Key (from Developer Portal)
- Tenant ID, Client ID, and Client Secret (from ServiceTitan UI)
Security Reminder
You can only see your Client Secret once. If you lose it, you can generate a new one, but there’s a max of two active secrets per application.
Step 5: Plan Your Integration Approach
Your business needs drive your integration strategy. Below are common patterns:
- Lightweight or Direct API Calls
- Great for small-scale or on-demand tasks.
- Scheduled or Batch Processes
- Pull data nightly (e.g., invoices or job logs).
- Event-Driven or Real-Time
- Use triggers or webhooks for immediate updates (e.g., Slack messages for job creation).
- Hybrid or ESB
- Larger enterprises with multiple flows might use an enterprise service bus or specialized integration platform.
Assess data volume, timing, reliability requirements, and internal skill sets before finalizing an approach.
Setting Up Postman for Testing
Postman is a versatile tool for making HTTP requests to APIs. It’s widely used for:
- Efficient Testing: Save time with preconfigured endpoints, headers, and query parameters.
- Collaboration: Share or sync ServiceTitan integration test collections across your team.
- Automation: Insert scripts to automatically handle authentication or run test suites.
If you haven’t installed Postman yet, download it from Postman.com. Once installed, you’re ready to import our Basic ServiceTitan Integration Starter collection.
1. Importing Our Starter Collection
We’ve created a Postman collection that includes:
- A pre-request script to fetch an OAuth token (client_credentials).
- Sample endpoints for Get Technicians, Get Customer, Get Invoices, etc.
- Variables for tenant IDs, client IDs, secrets, and more.
Steps to Import
-
Download the .json File (click the link below):
➡️ Download the ServiceTitan Postman Collection Starter here ⬅️
-
In Postman, click Import → File, then select or paste the
.json
. -
Review Your Collection: It should contain multiple folder/endpoints (e.g., Technicians, Customer, Invoices).
2. Configuring Collection Variables
Inside the imported collection, open Variables. You’ll see placeholders like:
- auth_url (e.g.,
https://auth-integration.servicetitan.io/connect/token
) - base_url (e.g.,
https://api-integration.servicetitan.io
) - client_id, client_secret
- tenant_id
- st_app_id (your Application Key)
Fill in these with your own ServiceTitan credentials and environment values.
3. Understanding the Pre-Request Script
Each time you send a request, Postman runs a script to get or refresh the access token using your client_credentials
flow. In short:
- Postman triggers the script, which sends a POST to
auth_url
. - The server returns an access_token if your credentials are valid.
- The script stores
access_token
in a Postman variable. - Requests then include
Authorization: Bearer {{access_token}}
and yourST-App-Key: {{st_app_id}}
.
Single-Source of Truth
No need to manually copy/paste tokens. Postman refreshes them automatically, so long as your auth_url, client_id, and client_secret are correct.
4. Sending Your First Request
- Pick a Request (e.g., Get Technicians).
- Click “Send.” Postman grabs a token first, then hits the endpoint.
- View the Response for JSON data on your technicians, customers, invoices, etc.
- If you see
401 Unauthorized
, open the Postman Console to debug. Common errors are typos in environment variables or incorrect environment selection.
5. Extending the Collection
- Add Requests: Duplicate an existing request and change the path, e.g., from
invoices
topayments
. - Refine Variables: For go.servicetitan, servicetitan go, or other region-based domains, set up multiple Postman environments.
- Automate Tests: Under the Tests tab, write small checks to validate JSON responses or confirm a status code.
Using this ServiceTitan integration starter, you’ll quickly spin up authenticated API calls, enabling you to explore key endpoints with minimal hassle.
Building a Basic Integration Workflow
Having tested essential endpoints in Postman, you can now create actual ServiceTitan integrations that tie data to external systems. Below is a straightforward four-step workflow to illustrate the concept. You can adapt these methods for more advanced scenarios.
Example Workflow: Customer Validation & Notifications
Scenario: Let’s say you want to pull newly created invoices from ServiceTitan, verify if the customer exists in your CRM, and if the invoice is overdue or large, send an alert to your team.
- Retrieve the Latest Invoices
- Check Customer Details
- Notify Your Team
- Optionally Update ServiceTitan
While we focus on invoices here, you can replicate the same approach for jobs, customers, or other data relevant to your ServiceTitan integration.
Step 1: Retrieve the Latest Invoices
In your imported Postman collection, use Get Invoices:
- Adjust Query if needed (
?status=Posted
,?sort=-modifiedOn
, etc.). - Send the Request to load current invoices.
- Examine Fields: Typical fields include
id
,customerId
,balanceDue
,createdOn
, andstatus
.
Refining Invoice Search
You can filter by specific dates or statuses to avoid pulling every invoice in
your system. Example: ?createdDate[gt]=2024-12-01T00:00:00Z
for invoices
after a certain date.
Step 2: Check Customer Details
Use the Get Customer endpoint in the same collection to fetch more info on each customerId
using the ids
parameter (pass in a comma-separated list of id
s to query for like so: [123 , 456]
):
- Compare with External CRM: A short script or backend microservice can check if the customer exists.
- Create or Enrich: If missing, add a new contact in your CRM. Or merge existing data (like membership status, location).
- Cleanse or Validate: Perhaps correct incomplete addresses or unify phone format before moving on to the next step.
Step 3: Notify Your Team
If a certain condition is met (e.g., overdue by 30 days), push an alert:
For email or SMS, you’d change the endpoint or adapt the payload accordingly. Include a direct link to ServiceTitan for quick reference (like a URL that opens the invoice page).
Step 4: Update ServiceTitan (Optional)
If you want to indicate that an invoice is “Under Review” or “Paid,” you can use:
This keeps your ServiceTitan data synchronized with the actions taken. By orchestrating these four steps, you effectively unify your accounting, CRM, and notifications, saving time and ensuring accuracy.
Versioning & Testing
Always test these integrations in a sandbox environment before production. A small mistake can impact financials or disrupt live workflows. Keep logs and version control to revert changes if necessary.
Common Use Cases for ServiceTitan Integrations
The invoice scenario is just one example. Here are other real-world ServiceTitan integrations:
- Two-Way Accounting Sync:
Automate pushing invoices, payments, and tax calculations to QuickBooks or Xero, or pulling them back into ServiceTitan. - Advanced Reporting & Analytics:
Export operational data to tools like Power BI or Tableau for interactive dashboards (e.g., job performance, marketing ROI). - Inventory & Equipment Lifecycle:
Keep track of stock levels and equipment usage in an external supply chain system. - Automated Marketing:
Kick off targeted email or SMS campaigns when certain triggers occur (e.g., job completion, membership renewals). - Integration with Field IoT:
Stream device data into ServiceTitan, or feed real-time usage metrics to your technicians. - Legacy Modernization:
If you rely on older software, bridging it with the ServiceTitan API can be your first step to modernization.
The key is to align each use case with a clear business goal, like reducing operational costs, boosting upsells, or improving customer satisfaction.
Best Practices for Building and Maintaining ServiceTitan Integrations
A robust ServiceTitan integration hinges on careful design, security, and ongoing monitoring. Keep these ideas in mind:
1. Principle of Least Privilege
Limit the scopes and permissions you grant. This reduces risk if credentials or tokens become compromised.
2. Idempotent & Fault-Tolerant Calls
Make repeated calls safe, ensuring they don’t create duplicates. Implement retry logic for transient failures like network timeouts.
3. Comprehensive Logging
Log important events, especially errors or key transaction steps (e.g., invoice creation). This simplifies troubleshooting.
4. Version Control & CI/CD
Keep your integration code in Git or similar. Use CI/CD pipelines to automate testing and ensure stable deployments.
5. Monitor Usage & Performance
Stay within ServiceTitan rate limits and watch for performance bottlenecks. If calls slow down, consider partial fetches or narrower queries.
6. Track New Features & Deprecations
ServiceTitan can change or retire certain endpoints. Subscribe to official release notes to avoid unexpected breaks.
Timing & Complexity
Even simple integrations can take days or weeks to perfect, especially when dealing with financial or customer data. Align timelines with stakeholder expectations and conduct thorough QA testing.
Security Considerations for ServiceTitan Integrations
Security is critical. You’ll likely handle sensitive info such as customer contact details, payment data, or employee payroll. Protect your ServiceTitan integration with:
- HTTPS: Encrypt all traffic to the ServiceTitan API.
- Token Management: Store tokens in a secure environment or secrets manager. Rotate periodically.
- Minimal Logging: Only log data necessary for debugging. Avoid storing full addresses, phone numbers, or other sensitive PII.
- Restricted Inbound/Outbound Traffic: If running in the cloud, limit your IP ranges and whitelisting as appropriate.
Post-Deployment Monitoring & Maintenance
Once your ServiceTitan integration goes live, don’t set it and forget it:
- Alerts & Notifications: Use monitoring tools (e.g., Datadog) to alert you of timeouts or spikes in error rates.
- Periodic Audits: Review logs and security posture regularly. Evolving business needs may also prompt scope changes.
- Scaling: If you outgrow your initial design, consider adding message queues or modular microservices to handle higher loads.
- Stakeholder Visibility: Non-technical managers or executives need metrics or dashboards to see how integrations are performing.
Continuously refining and optimizing your integration ensures it remains reliable, efficient, and aligned with business goals.
Frequently Asked Questions (FAQ)
What is the difference between “ServiceTitan API” and “Service Titan api”?
Functionally, they refer to the same thing. Different documents may spell it differently, but both terms point to official developer resources for ServiceTitan.
How do I access the ServiceTitan API?
A ServiceTitan login with appropriate permissions is key. You’ll generate API credentials via go.servicetitan or go.servicetitan login, depending on your region or account structure.
What if my older version of ServiceTitan has different endpoints?
ServiceTitan evolves over time. Some older endpoints may differ or be deprecated. Check the official docs for legacy versions or plan a migration strategy.
Can I do everything in Postman without coding?
Yes, up to a point. Postman can handle authentication, request sequencing, and environment variable management. But for extensive automations or real-time triggers, you might need a small script or microservice to orchestrate data flows.
Is there a recommended approach for large data imports?
Yes. Batch or asynchronous strategies tend to work best. Or, if near real-time updates are crucial, consider smaller frequent fetches to avoid hitting rate limits.
Are there strict limits on what the ServiceTitan API can do?
Certain features require advanced permissions or licensing tiers. Check the official docs for maximum request rates, plus any restricted modules.
Do I need a specialized developer for this?
While Postman and thorough documentation can help non-specialists get started, complex or large-scale ServiceTitan integrations often benefit from an experienced developer or solutions partner — like Aclarify.
How does this differ from Zapier or similar iPaaS?
Zapier or Workato can handle simpler, trigger-based flows. But ServiceTitan API custom integrations offer deeper coverage and control, especially for specialized or high-volume tasks.
Conclusion
Connecting your company’s workflows, data pipelines, and external applications with the ServiceTitan API (or “Service Titan api”) unlocks powerful new possibilities — reducing manual tasks, enhancing operational visibility, and even uncovering new revenue opportunities. By strategically planning your architecture, mastering tools like Postman, and adhering to best practices (from security to version control), you can craft a tailored ServiceTitan integration that aligns seamlessly with your business goals.
Whether you start small — say, updating a single data feed — or build a full-scale ecosystem bridging ServiceTitan with multiple CRMs, marketing platforms, and financial systems, the ServiceTitan API scales to meet your needs. And with so many endpoints available — from CRM to Accounting, Inventory to Memberships — the sky’s the limit.
Ready to see how a ServiceTitan integration can transform your operations? By leveraging the steps laid out in this guide, you’ll be well on your way to modernizing processes, boosting efficiency, and delivering exceptional customer experiences.
Ready to Elevate Your ServiceTitan Integrations?
Aclarify specializes in building robust, scalable, and secure custom integrations that align with your unique objectives. Whether you need to connect ServiceTitan to your CRM, unify inventory workflows, or design a custom reporting engine — our experts can help.