What type of API does ServiceTitan provide?
Based on the search results provided, there is no specific information about ServiceTitan's API type. The search results contain general comparisons between different API types like REST, GraphQL, and SOAP, but do not mention ServiceTitan specifically.
To answer your question accurately, we would need to look at ServiceTitan's official documentation or developer resources. Without that information, I cannot definitively state what type of API ServiceTitan uses.
However, I can provide some general information about common API types:
Key Points to Consider
- REST (Representational State Transfer) APIs are very popular and widely used for web services. They use standard HTTP methods and are known for their simplicity and scalability.
- GraphQL is a newer API technology that allows clients to request exactly the data they need. It's gaining popularity, especially for applications that need flexible data querying.
- SOAP (Simple Object Access Protocol) is an older protocol that uses XML for message formatting. It's still used in some enterprise environments but is generally considered more complex than REST.
Best Practices
-
When choosing an API type, consider factors such as:
- The specific needs of your project
- Performance requirements
- Flexibility in data querying
- Ecosystem and available tools
- Security requirements
-
If you need to work with ServiceTitan's API, the best approach would be to:
- Check ServiceTitan's official documentation
- Contact their developer support for specific information
- Look for any SDK or client libraries they provide, which might give clues about the API type
Without specific information about ServiceTitan, it's not possible to definitively state what type of API they use. You would need to consult their official resources or contact them directly for accurate information.
Does the ServiceTitan API have webhooks?
Current Status of Webhooks
-
ServiceTitan does have webhooks as part of their API offering.
-
However, at the time of the search results, ServiceTitan was restricting new subscriptions to the current version of webhooks.
-
They were working on a new version (V2) of webhooks, but there was no established ETA for its release at that time.
Existing Webhook Subscriptions
-
If you had already subscribed to webhooks, you would continue to receive events uninterrupted without having to make any changes.
-
However, if you were taking subsequent actions such as calling V1 API endpoints after receiving the event, you were advised to migrate to calling the V2 API endpoints.
Future Plans
-
ServiceTitan was planning to launch new V2 webhooks, but users had to wait for a few months until the launch.
-
They were working on improving their webhook offering, but no specific details about event types or subscription options were provided in the search results.
Integration with Third-Party Tools
- While not directly related to the official API, it's worth noting that some third-party integration platforms like Zapier offer webhook functionality with ServiceTitan. For example, you can set up a Zap to POST webhooks for new ServiceTitan jobs.
Key Considerations
-
The search results are not recent, and the information about V2 APIs and webhooks may be outdated. It would be advisable to check the latest ServiceTitan API documentation for the most up-to-date information.
-
If you're looking to implement webhooks with ServiceTitan, you may need to contact their support or wait for the release of their V2 webhooks, depending on the current status.
-
Third-party integration platforms might offer alternative ways to work with ServiceTitan data in real-time, which could be worth exploring if official webhook support is limited.
In conclusion, while ServiceTitan did have webhooks as part of their API offering, the specifics of available event types and subscription options were not clearly outlined in the provided search results. The information suggests that they were in a transition period, working on a new version of webhooks. For the most accurate and current information, it would be best to consult the latest ServiceTitan API documentation or contact their support directly.
Rate Limits and other limitations
Based on the search results provided, here are the key points regarding the API rate limits for the ServiceTitan API:
Default Rate Limits
- The default rate limit is 60 calls per second per application per tenant for most APIs.
- For reporting APIs specifically, the limit is 5 of the same report per minute per tenant.
Key Considerations
- These are default limits and may be evaluated on a case-by-case basis if there are concerns.
- ServiceTitan recommends contacting them if you have any concerns about the rate limits.
Additional Context
- ServiceTitan has introduced OAuth 2.0 Client Credentials for machine-to-machine authentication.
- They have eliminated the concept of API keys that existed in V1 APIs.
- A new app key is now required along with Client ID and Secret Key to make successful API calls.
Best Practices
-
Monitor your API usage to ensure you stay within the rate limits.
-
If you need higher rate limits, reach out to ServiceTitan to discuss your specific needs.
-
Consider implementing efficient batching and throttling in your application to optimize API usage.
-
Be aware of the different limits for regular APIs vs reporting APIs.
-
Keep track of the changes in authentication methods, especially if migrating from V1 to V2 APIs.
It's important to note that these rate limits are specific to ServiceTitan and may change over time. Always refer to the most up-to-date documentation or contact ServiceTitan directly for the most current information on API rate limits.
Latest API Version
Based on the information provided, here are the key points regarding the most recent version of the ServiceTitan API:
-
ServiceTitan has moved from V1 APIs to V2 APIs [3].
-
As of July 31, 2022, V1 APIs were deprecated and no longer work [3].
-
To use the current version (V2) of the ServiceTitan API:
- For custom-built integrations, you need to request access to V2 APIs [3].
- For Zapier integrations, you need to request access to the V2 ServiceTitan/Zapier integration [3].
- For third-party integrations, you need to ensure they have moved to V2 APIs [3].
-
The current authentication endpoint for the V2 API is:
https://auth-integration.servicetitan.io/connect/token [5]
-
The API uses OAuth 2.0 for authentication [5].
-
API calls require a valid access token, which can be obtained using client credentials [5].
Key points to consider:
- Make sure you are using the V2 version of the API, as V1 is no longer supported.
- Use the correct authentication endpoint and OAuth 2.0 flow for obtaining access tokens.
- Keep your client credentials secure and do not expose them in client-side code.
Best practices:
- Use a server-side component to handle API authentication and token management.
- Implement proper error handling and token refresh mechanisms in your integration.
- Regularly check the ServiceTitan developer documentation for any updates or changes to the API.
While an exact version number is not provided in the search results, it's clear that the current version is referred to as "V2" and any integrations should be using this version of the API.
How to get a ServiceTitan developer account and API Keys?
To get a developer account for ServiceTitan and create an API integration, here are the key steps:
-
Request integration environment access:
- Go to the ServiceTitan Developer Portal (
https://developer.servicetitan.io/
)
- Click on "Request Access" to request integration environment access
-
Once approved, you'll need to gather the following authentication details:
- CLIENT_ID - Found in Settings > Integrations > API Application Access > [App Name] > Edit
- CLIENT_SECRET - Generated one time with CLIENT ID
- APP_ID - Found in developers portal app definition
- APP_KEY - Found in developers portal app definition
- TENANT_ID - Found in developers portal app definition and integration settings
-
Set up your development environment:
- Install a programming language like Python
- Install necessary packages (e.g. 'requests' for Python)
- Use an IDE like VSCode
-
Make API requests:
- Get an authorization token using your credentials
- Make requests to ServiceTitan API endpoints using the token
What can you do with the ServiceTitan API?
Based on the information provided, here is a list of data models you can interact with using the ServiceTitan API, along with what is possible for each:
Customer Management
-
Appointments
- Read appointment data
- Create new appointments
- Update existing appointments
- Delete appointments
-
Customers
- Read customer data
- Create new customer records
- Update existing customer information
-
Leads
- Read lead data
- Create new leads
- Update lead information
Financials Management
-
AP Invoices (Inventory Bills)
- Read AP invoice data
- Create new AP invoices
- Update existing AP invoices
-
AR Invoices
- Read AR invoice data
- Create new AR invoices
- Update existing AR invoices
-
AR Payments
- Read payment data
- Record new payments
- Update payment information
-
Assets (Equipment)
- Read asset/equipment data
- Create new asset records
- Update existing asset information
-
Employees
- Read employee data
- Create new employee records
- Update employee information
-
Estimates
- Read estimate data
- Create new estimates
- Update existing estimates
-
Items (Materials)
- Read item/material data
- Create new item records
- Update existing item information
-
Item Receipts
- Read item receipt data
- Create new item receipts
- Update existing receipts
-
Purchase Orders
- Read purchase order data
- Create new purchase orders
- Update existing purchase orders
-
Service Sites (Customer Locations)
- Read service site data
- Create new service site records
- Update existing service site information
-
Tax Codes
-
Timecard Entries (Timesheets)
- Read timecard data
- Create new timecard entries
- Update existing timecard information
Project Management
-
Jobs
- Read job data
- Create new jobs
- Update existing job information
-
Locations
- Read location data
- Create new location records
- Update existing location information
-
Projects
- Read project data
- Create new projects
- Update existing project information
-
Tasks
- Read task data
- Create new tasks
- Update existing task information
-
Vendors
- Read vendor data
- Create new vendor records
- Update existing vendor information
Additional Features
- The API supports passthrough requests, allowing access to more ServiceTitan endpoints beyond the unified model.
- You can perform CRUD (Create, Read, Update, Delete) operations on many of these data models.
- The API allows for retrieving both individual records and multiple records in batches.
- You can use various query parameters to filter and customize data retrieval (e.g., date ranges, status filters, etc.).
This list covers the main data models and operations available through the ServiceTitan API. The exact capabilities may vary for each endpoint, so it's recommended to consult the official ServiceTitan API documentation for detailed information on specific endpoints and operations.