---
title: "Integrations - Servicetitan"
url: "https://docs.unified.to/integrations/servicetitan"
description: "Build ServiceTitan integrations faster with our Unified API — E-Commerce data, OAuth2 client credentials, real-time sync."
date: "2026-10-25T22:24:19.492Z"
updated: "2026-10-25T22:24:19.492Z"
---
![](https://api.unified.to/docs/images/servicetitan.png)

# ServiceTitan integration

[Back to integrations](https://docs.unified.to/integrations.md)

#### Overview

Company website:

<https://www.servicetitan.com>

Integration launch date:

October 10, 2026

API Categories:

[E-Commerce](https://docs.unified.to/commerce/overview.md)[Accounting](https://docs.unified.to/accounting/overview.md)[Payments](https://docs.unified.to/payment/overview.md)[HR & Directory](https://docs.unified.to/hris/overview.md)[Passthrough](https://docs.unified.to/passthrough/overview.md)

API Authorization:

 OAuth2 client credentials flow

Data-regions:

 Production Integration

#### COMMERCE ITEM

End-API object:

 material service equipment

Unified API Methods:

[List](https://docs.unified.to/commerce/item/List%5Fall%5Fitems.md)[Get](https://docs.unified.to/commerce/item/Retrieve%5Fan%5Fitem.md)[Update](https://docs.unified.to/commerce/item/Update%5Fan%5Fitem.md)[Remove](https://docs.unified.to/commerce/item/Remove%5Fan%5Fitem.md)

Webhooks:

 Virtual

List options:

collection\_idlimitoffsetquerysort\_by\_created\_atsort\_by\_namesort\_by\_updated\_atupdated\_gte

Readable fields:

[account\_id](https://docs.unified.to/commerce/item/model.md)[collections](https://docs.unified.to/commerce/item/model.md)[created\_at](https://docs.unified.to/commerce/item/model.md)[description](https://docs.unified.to/commerce/item/model.md)[duration](https://docs.unified.to/commerce/item/model.md)[id](https://docs.unified.to/commerce/item/model.md)[is\_active](https://docs.unified.to/commerce/item/model.md)[is\_taxable](https://docs.unified.to/commerce/item/model.md)[media](https://docs.unified.to/commerce/item/model.md)[name](https://docs.unified.to/commerce/item/model.md)[prices](https://docs.unified.to/commerce/item/model.md)[type](https://docs.unified.to/commerce/item/model.md)[updated\_at](https://docs.unified.to/commerce/item/model.md)[vendor\_name](https://docs.unified.to/commerce/item/model.md)

Writable fields:

[description](https://docs.unified.to/commerce/item/model.md)[is\_active](https://docs.unified.to/commerce/item/model.md)[is\_taxable](https://docs.unified.to/commerce/item/model.md)[name](https://docs.unified.to/commerce/item/model.md)[prices](https://docs.unified.to/commerce/item/model.md)

#### COMMERCE COLLECTION

End-API object:

 category

Unified API Methods:

[List](https://docs.unified.to/commerce/collection/List%5Fall%5Fcollections.md)[Get](https://docs.unified.to/commerce/collection/Retrieve%5Fa%5Fcollection.md)[Update](https://docs.unified.to/commerce/collection/Update%5Fa%5Fcollection.md)[Remove](https://docs.unified.to/commerce/collection/Remove%5Fa%5Fcollection.md)

Webhooks:

 Virtual

List options:

limitoffsetsort\_by\_nameupdated\_gte

Readable fields:

[created\_at](https://docs.unified.to/commerce/collection/model.md)[description](https://docs.unified.to/commerce/collection/model.md)[id](https://docs.unified.to/commerce/collection/model.md)[is\_active](https://docs.unified.to/commerce/collection/model.md)[media](https://docs.unified.to/commerce/collection/model.md)[name](https://docs.unified.to/commerce/collection/model.md)[parent\_id](https://docs.unified.to/commerce/collection/model.md)[type](https://docs.unified.to/commerce/collection/model.md)[updated\_at](https://docs.unified.to/commerce/collection/model.md)

Writable fields:

[name](https://docs.unified.to/commerce/collection/model.md)[description](https://docs.unified.to/commerce/collection/model.md)[is\_active](https://docs.unified.to/commerce/collection/model.md)[parent\_id](https://docs.unified.to/commerce/collection/model.md)

 required fields 

#### COMMERCE LOCATION

End-API object:

 warehouse

Unified API Methods:

[List](https://docs.unified.to/commerce/location/List%5Fall%5Flocations.md)[Get](https://docs.unified.to/commerce/location/Retrieve%5Fa%5Flocation.md)

Webhooks:

 Virtual

List options:

limitoffsetsort\_by\_created\_atsort\_by\_updated\_atupdated\_gte

Readable fields:

[address](https://docs.unified.to/commerce/location/model.md)[created\_at](https://docs.unified.to/commerce/location/model.md)[id](https://docs.unified.to/commerce/location/model.md)[is\_active](https://docs.unified.to/commerce/location/model.md)[location\_type](https://docs.unified.to/commerce/location/model.md)[name](https://docs.unified.to/commerce/location/model.md)[updated\_at](https://docs.unified.to/commerce/location/model.md)

Writable fields:

[\-none-](https://docs.unified.to/commerce/location/model.md)

#### ACCOUNTING CONTACT

End-API object:

 customer vendor

Unified API Methods:

[List](https://docs.unified.to/accounting/contact/List%5Fall%5Fcontacts.md)[Get](https://docs.unified.to/accounting/contact/Retrieve%5Fa%5Fcontact.md)[Update](https://docs.unified.to/accounting/contact/Update%5Fa%5Fcontact.md)

Webhooks:

 Virtual

List options:

limitoffsetquerysort\_by\_created\_atsort\_by\_updated\_attypeupdated\_gte

Readable fields:

[balance\_amount](https://docs.unified.to/accounting/contact/model.md)[billing\_address](https://docs.unified.to/accounting/contact/model.md)[created\_at](https://docs.unified.to/accounting/contact/model.md)[emails](https://docs.unified.to/accounting/contact/model.md)[first\_name](https://docs.unified.to/accounting/contact/model.md)[id](https://docs.unified.to/accounting/contact/model.md)[is\_active](https://docs.unified.to/accounting/contact/model.md)[is\_customer](https://docs.unified.to/accounting/contact/model.md)[is\_supplier](https://docs.unified.to/accounting/contact/model.md)[last\_name](https://docs.unified.to/accounting/contact/model.md)[name](https://docs.unified.to/accounting/contact/model.md)[notes](https://docs.unified.to/accounting/contact/model.md)[paymentterm\_id](https://docs.unified.to/accounting/contact/model.md)[telephones](https://docs.unified.to/accounting/contact/model.md)[updated\_at](https://docs.unified.to/accounting/contact/model.md)

Slow fields:

[emails](https://docs.unified.to/accounting/contact/model.md)[telephones](https://docs.unified.to/accounting/contact/model.md)

Writable fields:

[emails](https://docs.unified.to/accounting/contact/model.md)[first\_name](https://docs.unified.to/accounting/contact/model.md)[is\_active](https://docs.unified.to/accounting/contact/model.md)[last\_name](https://docs.unified.to/accounting/contact/model.md)[name](https://docs.unified.to/accounting/contact/model.md)[notes](https://docs.unified.to/accounting/contact/model.md)[telephones](https://docs.unified.to/accounting/contact/model.md)

#### ACCOUNTING INVOICE

End-API object:

 invoice

Unified API Methods:

[List](https://docs.unified.to/accounting/invoice/List%5Fall%5Finvoices.md)[Get](https://docs.unified.to/accounting/invoice/Retrieve%5Fan%5Finvoice.md)

Webhooks:

 Virtual

List options:

contact\_idend\_ltlimitoffsetstart\_gteupdated\_gte

Readable fields:

[balance\_amount](https://docs.unified.to/accounting/invoice/model.md)[contact\_id](https://docs.unified.to/accounting/invoice/model.md)[created\_at](https://docs.unified.to/accounting/invoice/model.md)[discount\_amount](https://docs.unified.to/accounting/invoice/model.md)[due\_at](https://docs.unified.to/accounting/invoice/model.md)[id](https://docs.unified.to/accounting/invoice/model.md)[invoice\_number](https://docs.unified.to/accounting/invoice/model.md)[lineitems](https://docs.unified.to/accounting/invoice/model.md)[notes](https://docs.unified.to/accounting/invoice/model.md)[paid\_at](https://docs.unified.to/accounting/invoice/model.md)[posted\_at](https://docs.unified.to/accounting/invoice/model.md)[status](https://docs.unified.to/accounting/invoice/model.md)[sub\_total\_amount](https://docs.unified.to/accounting/invoice/model.md)[tax\_amount](https://docs.unified.to/accounting/invoice/model.md)[total\_amount](https://docs.unified.to/accounting/invoice/model.md)[type](https://docs.unified.to/accounting/invoice/model.md)[updated\_at](https://docs.unified.to/accounting/invoice/model.md)

Writable fields:

[\-none-](https://docs.unified.to/accounting/invoice/model.md)

#### ACCOUNTING BILL

End-API object:

 ap-bill

Unified API Methods:

[List](https://docs.unified.to/accounting/bill/List%5Fall%5Fbills.md)[Get](https://docs.unified.to/accounting/bill/Retrieve%5Fa%5Fbill.md)

Webhooks:

 Virtual

List options:

end\_ltlimitoffsetstart\_gteupdated\_gte

Readable fields:

[bill\_number](https://docs.unified.to/accounting/bill/model.md)[cancelled\_at](https://docs.unified.to/accounting/bill/model.md)[contact\_id](https://docs.unified.to/accounting/bill/model.md)[created\_at](https://docs.unified.to/accounting/bill/model.md)[due\_at](https://docs.unified.to/accounting/bill/model.md)[id](https://docs.unified.to/accounting/bill/model.md)[lineitems](https://docs.unified.to/accounting/bill/model.md)[notes](https://docs.unified.to/accounting/bill/model.md)[posted\_at](https://docs.unified.to/accounting/bill/model.md)[purchaseorder\_ids](https://docs.unified.to/accounting/bill/model.md)[status](https://docs.unified.to/accounting/bill/model.md)[tax\_amount](https://docs.unified.to/accounting/bill/model.md)[total\_amount](https://docs.unified.to/accounting/bill/model.md)[updated\_at](https://docs.unified.to/accounting/bill/model.md)

Writable fields:

[\-none-](https://docs.unified.to/accounting/bill/model.md)

#### ACCOUNTING ACCOUNT

End-API object:

 gl-account

Unified API Methods:

[List](https://docs.unified.to/accounting/account/List%5Fall%5Faccounts.md)[Get](https://docs.unified.to/accounting/account/Retrieve%5Fan%5Faccount.md)[Create](https://docs.unified.to/accounting/account/Create%5Fan%5Faccount.md)[Update](https://docs.unified.to/accounting/account/Update%5Fan%5Faccount.md)

Webhooks:

 Virtual

List options:

limitoffsetupdated\_gte

Readable fields:

[created\_at](https://docs.unified.to/accounting/account/model.md)[customer\_defined\_code](https://docs.unified.to/accounting/account/model.md)[description](https://docs.unified.to/accounting/account/model.md)[id](https://docs.unified.to/accounting/account/model.md)[is\_payable](https://docs.unified.to/accounting/account/model.md)[name](https://docs.unified.to/accounting/account/model.md)[status](https://docs.unified.to/accounting/account/model.md)[updated\_at](https://docs.unified.to/accounting/account/model.md)

Writable fields:

[customer\_defined\_code](https://docs.unified.to/accounting/account/model.md)[description](https://docs.unified.to/accounting/account/model.md)[name](https://docs.unified.to/accounting/account/model.md)[status](https://docs.unified.to/accounting/account/model.md)

#### ACCOUNTING TAXRATE

End-API object:

 tax-zone

Unified API Methods:

[List](https://docs.unified.to/accounting/taxrate/List%5Fall%5Ftaxrates.md)[Get](https://docs.unified.to/accounting/taxrate/Retrieve%5Fa%5Ftaxrate.md)

Webhooks:

 Virtual

List options:

limitoffsetsort\_by\_created\_atsort\_by\_nameupdated\_gte

Readable fields:

[components](https://docs.unified.to/accounting/taxrate/model.md)[created\_at](https://docs.unified.to/accounting/taxrate/model.md)[id](https://docs.unified.to/accounting/taxrate/model.md)[is\_active](https://docs.unified.to/accounting/taxrate/model.md)[name](https://docs.unified.to/accounting/taxrate/model.md)[rate](https://docs.unified.to/accounting/taxrate/model.md)[total\_rate](https://docs.unified.to/accounting/taxrate/model.md)[updated\_at](https://docs.unified.to/accounting/taxrate/model.md)

Writable fields:

[\-none-](https://docs.unified.to/accounting/taxrate/model.md)

#### ACCOUNTING JOURNAL

End-API object:

 journal-entry

Unified API Methods:

[List](https://docs.unified.to/accounting/journal/List%5Fall%5Fjournals.md)[Get](https://docs.unified.to/accounting/journal/Retrieve%5Fa%5Fjournal.md)

Webhooks:

 Virtual

List options:

limitoffsetsort\_by\_created\_atsort\_by\_nameupdated\_gte

Readable fields:

[created\_at](https://docs.unified.to/accounting/journal/model.md)[description](https://docs.unified.to/accounting/journal/model.md)[id](https://docs.unified.to/accounting/journal/model.md)[posted\_at](https://docs.unified.to/accounting/journal/model.md)[reference](https://docs.unified.to/accounting/journal/model.md)[source](https://docs.unified.to/accounting/journal/model.md)[status](https://docs.unified.to/accounting/journal/model.md)[updated\_at](https://docs.unified.to/accounting/journal/model.md)

Writable fields:

[\-none-](https://docs.unified.to/accounting/journal/model.md)

#### ACCOUNTING PURCHASEORDER

End-API object:

 purchase-order

Unified API Methods:

[List](https://docs.unified.to/accounting/purchaseorder/List%5Fall%5Fpurchaseorders.md)[Get](https://docs.unified.to/accounting/purchaseorder/Retrieve%5Fa%5Fpurchaseorder.md)

Webhooks:

 Virtual

List options:

limitoffsetsort\_by\_created\_atsort\_by\_updated\_atupdated\_gte

Readable fields:

[contact\_id](https://docs.unified.to/accounting/purchaseorder/model.md)[created\_at](https://docs.unified.to/accounting/purchaseorder/model.md)[id](https://docs.unified.to/accounting/purchaseorder/model.md)[lineitems](https://docs.unified.to/accounting/purchaseorder/model.md)[posted\_at](https://docs.unified.to/accounting/purchaseorder/model.md)[shipping\_address](https://docs.unified.to/accounting/purchaseorder/model.md)[status](https://docs.unified.to/accounting/purchaseorder/model.md)[total\_amount](https://docs.unified.to/accounting/purchaseorder/model.md)[updated\_at](https://docs.unified.to/accounting/purchaseorder/model.md)

Writable fields:

[\-none-](https://docs.unified.to/accounting/purchaseorder/model.md)

#### PAYMENT PAYMENT

End-API object:

 payment

Unified API Methods:

[List](https://docs.unified.to/payment/payment/List%5Fall%5Fpayments.md)[Get](https://docs.unified.to/payment/payment/Retrieve%5Fa%5Fpayment.md)

Webhooks:

 Virtual

List options:

contact\_idend\_ltinvoice\_idlimitoffsetstart\_gteupdated\_gte

Readable fields:

[account\_id](https://docs.unified.to/payment/payment/model.md)[allocations](https://docs.unified.to/payment/payment/model.md)[contact\_id](https://docs.unified.to/payment/payment/model.md)[created\_at](https://docs.unified.to/payment/payment/model.md)[id](https://docs.unified.to/payment/payment/model.md)[invoice\_id](https://docs.unified.to/payment/payment/model.md)[notes](https://docs.unified.to/payment/payment/model.md)[paid\_at](https://docs.unified.to/payment/payment/model.md)[payment\_method](https://docs.unified.to/payment/payment/model.md)[reference](https://docs.unified.to/payment/payment/model.md)[total\_amount](https://docs.unified.to/payment/payment/model.md)[type](https://docs.unified.to/payment/payment/model.md)[updated\_at](https://docs.unified.to/payment/payment/model.md)

Writable fields:

[\-none-](https://docs.unified.to/payment/payment/model.md)

#### HRIS EMPLOYEE

End-API object:

 employee technician

Unified API Methods:

[List](https://docs.unified.to/hris/employee/List%5Fall%5Femployees.md)[Get](https://docs.unified.to/hris/employee/Retrieve%5Fan%5Femployee.md)

Webhooks:

 Virtual

List options:

limitoffsetqueryupdated\_gte

Readable fields:

[address](https://docs.unified.to/hris/employee/model.md)[bio](https://docs.unified.to/hris/employee/model.md)[created\_at](https://docs.unified.to/hris/employee/model.md)[emails](https://docs.unified.to/hris/employee/model.md)[employment\_status](https://docs.unified.to/hris/employee/model.md)[first\_name](https://docs.unified.to/hris/employee/model.md)[groups](https://docs.unified.to/hris/employee/model.md)[hired\_at](https://docs.unified.to/hris/employee/model.md)[id](https://docs.unified.to/hris/employee/model.md)[last\_name](https://docs.unified.to/hris/employee/model.md)[manager\_id](https://docs.unified.to/hris/employee/model.md)[name](https://docs.unified.to/hris/employee/model.md)[telephones](https://docs.unified.to/hris/employee/model.md)[terminated\_at](https://docs.unified.to/hris/employee/model.md)[title](https://docs.unified.to/hris/employee/model.md)[updated\_at](https://docs.unified.to/hris/employee/model.md)

Writable fields:

[\-none-](https://docs.unified.to/hris/employee/model.md)

#### HRIS GROUP

End-API object:

 business-unit

Unified API Methods:

[List](https://docs.unified.to/hris/group/List%5Fall%5Fgroups.md)[Get](https://docs.unified.to/hris/group/Retrieve%5Fa%5Fgroup.md)

Webhooks:

 Virtual

List options:

limitoffsetquerysort\_by\_created\_atsort\_by\_namesort\_by\_updated\_atupdated\_gte

Readable fields:

[created\_at](https://docs.unified.to/hris/group/model.md)[description](https://docs.unified.to/hris/group/model.md)[id](https://docs.unified.to/hris/group/model.md)[is\_active](https://docs.unified.to/hris/group/model.md)[name](https://docs.unified.to/hris/group/model.md)[type](https://docs.unified.to/hris/group/model.md)[updated\_at](https://docs.unified.to/hris/group/model.md)

Writable fields:

[\-none-](https://docs.unified.to/hris/group/model.md)

#### PASSTHROUGH

Unified API Methods:

[POST](https://docs.unified.to/passthrough/overview.md)[GET](https://docs.unified.to/passthrough/overview.md)[PUT](https://docs.unified.to/passthrough/overview.md)[DELETE](https://docs.unified.to/passthrough/overview.md)

List options:

\-none-

Readable fields:

[\-none-](https://docs.unified.to/passthrough/undefined/model.md)

Writable fields:

[\-none-](https://docs.unified.to/passthrough/undefined/model.md)
