Skip to main content

ServiceTitan Destination

Nexla's bi-directional connectors allow data to flow both to and from any location, making it simple to create a FlexFlow data flow that sends data to a ServiceTitan location.
servicetitan_api.png

ServiceTitan

Create a ServiceTitan Destination

  1. Click the + icon on the Nexset that will be sent to the ServiceTitan destination, and select the Send to Destination option from the menu.

  2. Select the ServiceTitan connector from the list of available destination connectors. Then, select the credential that will be used to connect to the ServiceTitan organization, and click Next; or, create a new ServiceTitan credential for use in this flow.

  3. In Nexla, ServiceTitan destinations can be created using pre-built endpoint templates, which expedite destination setup for common ServiceTitan write operations. Each template is designed specifically for the corresponding ServiceTitan endpoint, making destination configuration easy and efficient.
    • To configure this destination using a template, follow the instructions in Configure Using a Template.

    ServiceTitan destinations can also be configured manually, allowing you to send data to ServiceTitan endpoints not included in the pre-built templates or apply further customizations to exactly suit your needs.
    • To configure this destination manually, follow the instructions in Configure Manually.

Configure Using a Template

Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common ServiceTitan write endpoints. Each template is designed specifically for the corresponding ServiceTitan endpoint, making destination setup easy and efficient.

  • To configure this destination using a template, select the endpoint to which data will be sent from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.

    Create Job

    Creates a new job record in ServiceTitan. Use this endpoint to programmatically book service jobs from external systems such as a CRM, customer portal, or lead management platform. The data in your Nexset will be sent as the JSON body of a POST request to the ServiceTitan Job Planning API.

    • Ensure that your Nexset data is structured as a JSON object containing the required ServiceTitan job fields before configuring this destination. At minimum, a job typically requires a customer ID, location ID, job type ID, and at least one appointment.
    • No additional template parameters are required beyond selecting this endpoint. The full contents of each Nexset record will be sent as the JSON request body to the ServiceTitan jobs endpoint.

    Refer to the ServiceTitan Job Planning API documentation for the complete list of required and optional fields for job creation, including field names, data types, and validation requirements.

    Update Job

    Updates an existing job in ServiceTitan by its Job ID using a PATCH request. Use this endpoint to push status changes, reschedule jobs, or update job details from external systems back into ServiceTitan.

    • Enter the ServiceTitan Job ID of the record to be updated in the required Job ID field:

      • Job ID (required): The unique numeric identifier of the job to update. This value will be appended to the API endpoint URL as a path parameter. You can reference a field in your Nexset that contains the Job ID by using a Nexla field reference.
    • The fields included in each Nexset record will be sent as the PATCH request body. Only the fields you include will be updated — fields not present in the payload will remain unchanged in ServiceTitan.

    The Update Job endpoint uses a PATCH method, which means only the fields included in the request body will be modified. This is useful for partial updates, such as changing only the job status or priority without affecting other job fields. Refer to the ServiceTitan Job Planning API documentation for updateable field details.

    Create Appointment

    Creates a new appointment for a job in ServiceTitan. Appointments represent the scheduled service visit — specifying the date, time window, and assigned technician(s). Use this endpoint to schedule service appointments from external scheduling or booking systems.

    • Ensure that your Nexset data includes the required appointment fields. At minimum, an appointment requires a job ID, start date/time, and end date/time.
    • No additional template parameters are required beyond selecting this endpoint. The full contents of each Nexset record will be sent as the JSON request body to the ServiceTitan appointments endpoint.

    Refer to the ServiceTitan Job Planning API documentation for the complete list of required and optional fields for appointment creation.

    Update Appointment

    Updates an existing appointment in ServiceTitan by its Appointment ID using a PATCH request. Use this endpoint to reschedule appointments, update time windows, or modify appointment details from external systems.

    • Enter the ServiceTitan Appointment ID of the record to be updated in the required Appointment ID field:

      • Appointment ID (required): The unique numeric identifier of the appointment to update. This value will be appended to the API endpoint URL as a path parameter.
    • Only the fields included in each Nexset record will be updated — fields not present in the payload will remain unchanged in ServiceTitan.

    Assign Technician

    Assigns or reassigns a technician to an appointment in ServiceTitan. Use this endpoint to automate dispatch decisions, push technician assignments from an external workforce management system, or synchronize assignment changes from a scheduling optimizer.

    • Ensure that your Nexset data includes the appointment ID and the technician ID to be assigned. The payload should conform to the ServiceTitan appointment-assignments API request format.
    • No additional template parameters are required beyond selecting this endpoint. The full contents of each Nexset record will be sent as the JSON request body to the ServiceTitan appointment-assignments endpoint.

    Refer to the ServiceTitan Dispatch API documentation for the required fields and request format for technician assignment.

    Create Customer

    Creates a new customer record in the ServiceTitan CRM. Use this endpoint to add customers from external sources such as a lead management system, customer import file, or e-commerce platform directly into ServiceTitan.

    • Ensure that your Nexset data includes the required customer fields. At minimum, a customer record typically requires a name and contact information.
    • No additional template parameters are required beyond selecting this endpoint. The full contents of each Nexset record will be sent as the JSON request body.

    Refer to the ServiceTitan CRM API documentation for the complete list of required and optional fields for customer creation, including address fields, contact details, and custom fields.

    Update Customer

    Updates an existing customer record in ServiceTitan by their Customer ID using a PATCH request. Use this endpoint to synchronize customer data changes from external CRM systems, update contact information, or apply bulk customer record corrections.

    • Enter the ServiceTitan Customer ID of the record to be updated in the required Customer ID field:

      • Customer ID (required): The unique numeric identifier of the customer to update. This value will be appended to the API endpoint URL as a path parameter.
    • Only the fields included in each Nexset record will be updated — fields not present in the payload will remain unchanged in ServiceTitan.

    Create Location

    Creates a new service location in the ServiceTitan CRM, associated with a customer. Use this endpoint to add service addresses for customers from external property management systems, address databases, or customer onboarding workflows.

    • Ensure that your Nexset data includes the required location fields. At minimum, a location record typically requires a customer ID and a service address (street, city, state, zip code).
    • No additional template parameters are required beyond selecting this endpoint. The full contents of each Nexset record will be sent as the JSON request body.

    Refer to the ServiceTitan CRM API documentation for the complete list of required and optional fields for location creation.

    Create Non-Job Event

    Creates a non-job event for a technician in ServiceTitan, such as time off, training, a meeting, or another schedule block that is not associated with a customer job. Use this endpoint to push schedule blocks from external HR systems, time-off management tools, or workforce planning applications into the ServiceTitan dispatch board.

    • Ensure that your Nexset data includes the required non-job event fields. At minimum, a non-job event typically requires a technician ID, event type, start datetime, and end datetime.
    • No additional template parameters are required beyond selecting this endpoint. The full contents of each Nexset record will be sent as the JSON request body.

    Refer to the ServiceTitan Dispatch API documentation for the required fields, supported event types, and request format for non-job event creation.

Configure Manually

ServiceTitan destinations can be manually configured to send data to any valid ServiceTitan V2 API endpoint.

Using manual configuration, you can also configure Nexla to automatically send the response received from the ServiceTitan API after each call to a new Nexla webhook data source.

API Method

  1. To manually configure this destination, select the Advanced tab at the top of the configuration screen.

  2. Select the API method that will be used for calls to the ServiceTitan API from the Method pulldown menu. Common methods for ServiceTitan write operations include:

    • POST: For creating new records (jobs, appointments, customers, locations, etc.)
    • PATCH: For partially updating existing records by ID
    • PUT: For fully replacing an existing record

Data Format

  1. Select the format in which the Nexset data will be sent to the ServiceTitan API from the Content Format pulldown menu. ServiceTitan's V2 API accepts JSON for all write operations. Select JSON to ensure data is correctly formatted for each API call.

API Endpoint URL

  1. Enter the URL of the ServiceTitan API endpoint to which you want to send the Nexset data in the URL field. For update (PATCH) operations, include the numeric ID of the object to be updated at the end of the URL as a path parameter.

ServiceTitan API endpoint URLs include your Tenant ID as a path component. For example, to create a new customer the URL is https://api.servicetitan.io/crm/v2/tenant/{'{tenantId}'}/customers. Replace {'{tenantId}'} with your numeric ServiceTitan Tenant ID. The ST-App-Key header is automatically added by Nexla using your saved credential — you do not need to add it manually.

Request Headers

Optional
  • If Nexla should include any additional request headers in API calls to this destination, enter the headers & corresponding values as comma-separated pairs in the Request Headers field (e.g., header1:value1,header2:value2).

    You do not need to include the ST-App-Key or Authorization headers here — these are already provided by your ServiceTitan credential configuration and are added automatically by Nexla.

Exclude Attributes from the Call

Optional
  • If any record attributes in the Nexset should be omitted when sending data to this ServiceTitan destination, select the attributes from the Exclude Attributes pulldown menu.

  • Any number of attributes can be selected for exclusion, and all excluded attributes will be shown in the field. To remove an attribute from the list, click the X icon next to the attribute name.

Record Batching

Optional
  1. If records should be sent to this destination in batched API calls, check the box next to Would you like to batch your records together? to enable record batching.

  2. Enter the maximum number of records that should be batched together in a single API call in the Batch Size field. By default, this value is set to 100.

  3. Select the algorithm that will be used to group records into batches from the Grouping Algorithm pulldown menu. The sample request shown in the panel on the right will be updated to reflect the current batching settings. Some algorithms require additional settings—click on an algorithm listed below to view instructions for configuring these settings.

Response Webhook

Optional

Nexla can automatically send the response received from the ServiceTitan API after each call to a new Nexla webhook data source. This option allows you to keep track of the status of each API call, capture newly created record IDs, and process any additional information returned after each call.

  • To enable this option, check the box next to Would you like to process the API response as a Nexla Webhook source?.

Sample Request Payload

Sample request payloads containing a portion of the Nexset data that will be sent to the ServiceTitan API endpoint based on the current settings are shown in the Sample Payload panel on the right. These samples can be referenced to ensure that the destination and request settings are correctly configured.

  • Click on a sample request payload to expand it and view the complete payload content.
  • Sample payloads are automatically updated with each setting change, making it easy to verify that changes achieve the desired effect.

Endpoint Testing (Manual Configuration)

After all endpoint settings have been configured, Nexla can send a test payload to the ServiceTitan API to ensure that the destination is configured correctly.

  1. To send a test payload, select the Test button at the top of the Sample Payload panel, and click on a listed sample payload to expand it.

  2. If any modifications to the sample payload are needed, make the necessary changes directly within the sample window.

  3. Click the Send Test Data button at the top of a sample payload to send the test payload to the ServiceTitan API using the current settings.

Save & Activate the Destination

  • Once all endpoint settings have been configured, click the Done button in the upper right corner of the screen to save and create the destination. To begin sending data to ServiceTitan, open the destination resource menu, and select Activate.

    The Nexset data will not be sent to ServiceTitan until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.