How to connect LeadTruffle and ServiceTitan
How to Connect ServiceTitan to LeadTruffle
How to connect ServiceTitan to LeadTruffle
📝 This guide walks you through creating a private app in ServiceTitan and connecting it to LeadTruffle for CRM sync, AI booking, and availability checks.
Table of contents
- Prerequisites
- Step 1: Create a private app in ServiceTitan Developer Portal
- Step 2: Create a booking provider tag
- Step 3: Connect the app in your ServiceTitan account
- Step 4: Generate your client ID and client secret
- Step 5: Enter your credentials in LeadTruffle
- Troubleshooting
- Summary
Prerequisites
- Your ServiceTitan account must be on The Works plan
- You need admin access to your ServiceTitan account
- You need access to the ServiceTitan Developer Portal
Step 1: Create a private app in ServiceTitan Developer Portal
- Go to developer.servicetitan.io/signin
- Under ServiceTitan Customers, click Sign In as Production Environment User

- Sign in with your ServiceTitan admin credentials
- Click My Apps at the top of the page
- Click Register New App
- Prompt appears: "Who will be accessing the API endpoints/webhooks?"
- Select "Our organization"
- Check the box: "I confirm this app is being hosted and maintained by my organization"
- Click Continue
- Enter the following details:
- App Name — enter "Lead Follow Up"
- Organization Name — your company name (e.g. Bryan's HVAC)
- Organization/App Website — your company website (https://bryanshvac.com)
- Email Address — your email (bryan@bryanshvac.com)
- Description — "Lead response automation for ServiceTitan. Helping us book more leads into appointments so we can grow our business."
- Under API Scopes, enable the following permissions:
- CRM — All Read & Write except Leads
- Settings — Read "Employees"
Scope | Read | Write |
|---|---|---|
CRM — Booking Provider Tags | ✅ | ✅ |
CRM — Bookings | ✅ | ✅ |
CRM — Customers | ✅ | ✅ |
CRM — Leads | ❌ | ❌ |
CRM — Locations | ✅ | ✅ |
CRM — Tags | ✅ | ✅ |
Settings — Employees | ✅ | ❌ |
- Under Client Credentials Management, select "I, the app developer, will configure the credentials on behalf of each tenant"
- Click Create App
- Your App Key will be generated — copy it and save it somewhere secure
*For more details, see ServiceTitan's official guide: Create an App
Step 2: Create a booking provider tag
A Booking Provider Tag tells ServiceTitan where a booking came from. You need to create one for LeadTruffle so it can create bookings in your account.
- Log in to your ServiceTitan account at go.servicetitan.com
- Go to **Settings → Integrations → **Booking Provider Tags
- Click Add Tag
- Enter "LeadTruffle" as the tag name
- Add a description if you'd like (optional)
- Click Save

For more details on how booking providers work, see ServiceTitan's CRM API documentation.
Step 3: Connect the app in your ServiceTitan account
- Still in ServiceTitan, go to **Settings → Integrations → **API Application Access
- Click Connect New App
- Find and select the app you just created (e.g. "LeadTruffle")
- Review the API scopes — these are the permissions you selected in Step 1
- Under Restriction by Booking Provider, choose No Restriction
- Click Allow Access


*For more details, see ServiceTitan's official guide: Client ID & Secret
Step 4: Generate your client ID and client secret
If you selected "I, the app developer, will configure the credentials" in Step 1:
- Go back to developer.servicetitan.io
- Click My Apps
- Click App Connections for your LeadTruffle app
- Find your tenant and click Generate under Client Secret
- Copy the Client ID and Client Secret — save both somewhere secure
If you're generating credentials from ServiceTitan directly:
- In ServiceTitan, go to Settings → Integrations → API Application Access
- Select the LeadTruffle app from your connected apps
- Your Client ID will be displayed on the Application Details screen
- Click Generate next to Client Secret, then click Yes, Continue
- Copy the Client ID and Client Secret
Step 5: Enter your credentials in LeadTruffle
- In LeadTruffle, go to ServiceTitan Settings
- On the Basic Settings tab, you'll see the Credentials section

- Select Provider Scoped
- Fill in the following fields:
Field | Where to find it |
|---|---|
Tenant ID | ServiceTitan → Settings → Integrations → API Application Access |
Environment | Select Production |
App Key | Copied from Step 1 when you created the app |
Client ID | Copied from Step 4 |
Client Secret | Copied from Step 4 |
Booking Access Mode | Select Provider scoped |
- Under Booking Provider, click Detect Booking Providers
- LeadTruffle will search your ServiceTitan account and show the available providers
- Select LeadTruffle Booking from the dropdown (this is the tag you created in Step 2)

- Make sure "Keep this integration active after saving" is checked
- Click Save
Troubleshooting
I don't see my app when connecting in ServiceTitan
Make sure you added your tenant ID to the app in the Developer Portal. Go to My Apps → edit your app → check that your tenant ID is listed.
"User doesn't have access to Developer Portal" error
You need to sign in with an admin account. If your account doesn't have admin access, ask your ServiceTitan admin to complete these steps.
"Not Connected Yet" status in Developer Portal
The tenant admin hasn't connected to the app yet. Complete Step 3 first, then return to generate credentials.
Client Secret was lost or not copied
Go back to the Developer Portal → My Apps → App Connections and generate a new one. You can have up to two active secrets per app.
LeadTruffle Booking doesn't appear when I click Detect Booking Providers
Make sure you created the Booking Provider Tag in Step 2. Go to Settings → Integrations → Booking Provider Tags in ServiceTitan and confirm the tag exists.
What's the difference between Tenant Scoped and Provider Scoped?
Provider Scoped connects LeadTruffle to a specific Booking Provider Tag so it can create bookings in ServiceTitan. This is the recommended setup. Tenant Scoped is only used for reading booking data and does not support creating new bookings.
Summary
You've created a private app in the ServiceTitan Developer Portal, added a LeadTruffle booking provider tag, connected the app in your ServiceTitan account, generated API credentials, and entered them into LeadTruffle. Your ServiceTitan integration is now active for CRM sync, AI booking, and availability checks.
Need help? Contact us at support@leadtruffle.com or message the team via the Intercom chat on this article or in-app.
Updated on: 19/05/2026
Thank you!