DatriseAI-first ETL

Source connector

ServiceTitan connector

ServiceTitan integration for databases, warehouses and BI tools

Trades platform for dispatch, jobs, and revenue reporting. Datrise captures ServiceTitan entities such as jobs, customers, estimates, invoices, technicians and service agreements, then lands normalized and typed models for warehouse reporting, attribution, and AI workflows.

The ServiceTitan API v2 authenticates with OAuth 2.0, incremental runs key on modifiedOnOrAfter, and ServiceTitan caps calls at 60 calls per second per application per tenant for standard APIs; Reporting APIs are limited to 1 request for the same report per minute per tenant.

Of the 6 objects, 4 sync as upserts keyed on the primary key and 2 as append-only streams, so each incremental run moves only what changed since the last watermark. Every object lands in its own table (for example `servicetitan_jobs`) with a schema derived from the ServiceTitan API rather than a flattened CSV, in any of the 43 supported destinations.

Datrise is in early access: pick a destination below to open the ServiceTitan pipeline page, and join the waitlist to get the ServiceTitan connector (CRM) with guided onboarding.

Incremental syncSchema-aware mapping43 destinations available

What ServiceTitan data Datrise extracts

Each object lands in its own typed table. Sync mode is derived from the object: history-style objects append, everything else upserts.

ObjectLanding tableSync mode
jobsservicetitan_jobsAppend-only, incremental by timestamp
customersservicetitan_customersUpsert by primary key, incremental on updated-at
estimatesservicetitan_estimatesUpsert by primary key, incremental on updated-at
invoicesservicetitan_invoicesAppend-only, incremental by timestamp
techniciansservicetitan_techniciansUpsert by primary key, incremental on updated-at
service agreementsservicetitan_service_agreementsUpsert by primary key, incremental on updated-at

ServiceTitan API: setup facts for the connector

Verified against the vendor documentation on 2026-09-02. Unknown values are left blank rather than guessed.

APIServiceTitan API v2
AuthenticationOAuth 2.0 — Server-to-server access uses the OAuth 2.0 client_credentials grant against `auth.servicetitan.io/connect/token` (15-minute access tokens); every API call also requires a per-app `ST-App-Key` header alongside the `Authorization: Bearer` token.
Paginationpage — List endpoints take `page` (default 1) and `pageSize` (1-5000, default 50) query params, with an optional `includeTotal` flag to include the total count.
Rate limit60 calls per second per application per tenant for standard APIs; Reporting APIs are limited to 1 request for the same report per minute per tenant
Incremental cursormodifiedOnOrAfter — Most list endpoints accept `modifiedOnOrAfter`/`modifiedBefore` and `createdOnOrAfter`/`createdBefore` filters, so a connector classifies a record as new when `createdOn` is after the last poll and as updated otherwise.
WebhooksYes — V2 Webhooks (HMAC-signed, per-tenant subscriptions configured in the Developer Portal)
Bulk exportNo
Deletes detectableYes — ServiceTitan does not hard-delete core records (customers, locations, jobs); they are soft-deactivated and exposed via an `active` boolean, so a connector must track that flag rather than expect records to disappear.

Official API reference

What bites when replicating ServiceTitan

  • Access tokens from the client_credentials flow expire after 15 minutes, so a long-running extraction job must refresh the token mid-run rather than once at startup.
  • Reporting APIs allow only 1 request for the same report per minute per tenant, far below the 60 calls/second default for regular APIs, so report-based extraction needs its own throttling path.
  • `pageSize` caps out at 5000 and defaults to just 50 when omitted, so an unpaginated-looking call against a large tenant silently returns a fraction of the data.
  • Deactivated customers, locations, and jobs are never actually deleted (jobs can only be canceled), so a connector must sync the `active` boolean rather than infer deletions from records disappearing from list responses.

Compare this against every other documented API

Popular destinations for ServiceTitan

Choose a destination below to open the ready pipeline page.

  • A
    Airtable

    Relational spreadsheet destination for ops and go-to-market teams.

    View pipeline
  • A
    Amazon Athena

    Serverless SQL over S3 data lake tables.

    View pipeline
  • A
    Amazon DynamoDB

    Serverless key-value and document store on AWS.

    View pipeline
  • A
    Amazon QuickSight

    AWS serverless BI with SPICE and embedded analytics.

    View pipeline
  • A
    Amazon Redshift

    AWS petabyte-scale warehouse with Spectrum.

    View pipeline
  • A
    Amazon S3 Data Lake

    Object storage landing zone for parquet and snapshots.

    View pipeline
  • A
    Apache Superset

    Open-source BI for SQL exploration, charts, and dashboard publishing.

    View pipeline
  • A
    Azure Data Lake Storage

    ADLS Gen2 object storage for analytics workloads.

    View pipeline
  • A
    Azure Synapse

    Microsoft analytics workspace with SQL pools.

    View pipeline

ServiceTitan connector FAQ

What ServiceTitan data does the connector extract?
6 objects: jobs, customers, estimates, invoices, technicians and service agreements. Each lands in its own table with types preserved; history-style objects (2: jobs and invoices) load as append-only streams.
Is the ServiceTitan integration incremental?
Yes. After the initial full load, every run reads only records changed since the last watermark (updated-at or event timestamp) and applies an upsert or an append depending on the object.
Where can I load ServiceTitan data?
Into 43 destinations: relational databases, cloud warehouses, data lakes, spreadsheets and BI tools. Each ServiceTitan → destination pair has its own page with the object-to-table mapping.

Related CRM sources

Other sources in the same category, each with its own connector page.

Early access

Launch your ServiceTitan pipeline with guided onboarding

Join the waitlist to get priority access for ServiceTitan integrations with guided setup, schema-aware mapping, and production-grade incremental sync.