ServiceTitan Component
ServiceTitan is a comprehensive field service management solution that helps businesses manage their operations, workforce, and customer service.
Component key: servicetitanDescription
ServiceTitan is a comprehensive field service management solution that helps businesses manage their operations, workforce, and customer service.
Use the ServiceTitan component to manage Technicians, Jobs, Appointments, and more.
API Documentation: ServiceTitan API Reference
Connections
OAuth 2.0
To authenticate ServiceTitan integrations with OAuth 2.0 requires a developer account and the configuration of an application from the ServiceTitan Developer Portal.
To Create an app:
- Login to the Developer Portal
- Select My Apps at the top of the page
- Select + New App
- Fill all the required fields and scopes
- Under Client Credentials Management”, select I, the app developer, will configure the credentials on behalf of each tenant
- Click Create App
For Existing apps:
- Login to the Developer Portal
- Select My Apps at the top of the page
- Click Edit on your application
- Under Client Credentials Management”, select I, the app developer, will configure the credentials on behalf of each tenant
- Click Save
To obtain a Client Secret and Client ID:
If you haven’t done so already, please add the client’s Tenant ID to your application. Once the Tenant Admin has allowed access and connected to your application through their “API Application Access” settings, you can begin the process of obtaining the tenant’s client ID and client secret in your developer portal:
- Login to the Developer Portal
- Select My Apps at the top of the page
- Click View Connections for your app
- Click Generate under Client Secret to create a new Client Secret
- Reference the tenant’s Client ID on this page as well
Data Sources
Select Appointment
Select an Appointment from a dropdown menu (up to 10,000 Appointments) | key: selectAppointment | type: picklist
Data Source Payload
{
"result": [
{
"key": "1",
"label": "#1 (ID: 1)"
}
]
}
Select Booking
Select a booking from a dropdown menu (up to 10,000 bookings) | key: selectBooking | type: picklist
Data Source Payload
{
"result": [
{
"key": "1",
"label": "Booking 1 (ID: 1)"
},
{
"key": "2",
"label": "Booking 2 (ID: 2)"
}
]
}
Select Customer
Select a customer from a dropdown menu (up to 10,000 customers) | key: selectCustomers | type: picklist
Data Source Payload
{
"result": [
{
"key": "1",
"label": "John Doe (ID: 1)"
},
{
"key": "2",
"label": "Jane Doe (ID: 2)"
}
]
}
Select Installed Equipment
Select an Installed Equipment from a dropdown menu (up to 10,000 Installed Equipments) | key: selectInstalledEquipment | type: picklist
Data Source Payload
{
"result": [
{
"key": "1",
"label": "Installed Equipment 1 (ID: 1)"
},
{
"key": "2",
"label": "Installed Equipment 2 (ID: 2)"
}
]
}
Select Invoice
Select an Invoice from a dropdown menu (up to 10,000 Invoices) | key: selectInvoice | type: picklist
Data Source Payload
{
"result": [
{
"key": "1",
"label": "#1234"
}
]
}
Select Job
Select a job from a dropdown menu (up to 10,000 jobs) | key: selectJob | type: picklist
Data Source Payload
{
"result": [
{
"key": "1",
"label": "#1"
},
{
"key": "2",
"label": "#2"
},
{
"key": "3",
"label": "#3"
}
]
}
Select Location
Select a Location from a dropdown menu (up to 10,000 Locations) | key: selectLocation | type: picklist
Data Source Payload
{
"result": [
{
"key": "1",
"label": "Location 1 (ID: 1)"
},
{
"key": "2",
"label": "Location 2 (ID: 2)"
},
{
"key": "3",
"label": "Location 3 (ID: 3)"
}
]
}
Select Project
Select a Project from a dropdown menu (up to 10,000 Projects) | key: selectProject | type: picklist
Data Source Payload
{
"result": [
{
"key": "1",
"label": "Project 1 (ID: 1)"
},
{
"key": "2",
"label": "Project 2 (ID: 2)"
}
]
}
Select Technician
Select a Technician from a dropdown menu (up to 10,000 Technicians) | key: selectTechnician | type: picklist
Data Source Payload
{
"result": [
{
"key": "1",
"label": "John Doe (ID: 1)"
},
{
"key": "2",
"label": "Jane Doe (ID: 2)"
}
]
}
Actions
Assign Technician to Appointment
Assigns the list of technicians to the appointment | key: assignTechnicians
Output Example Payload
{
"data": {
"id": 0,
"jobId": 0,
"appointmentNumber": "string",
"start": "string",
"end": "string",
"arrivalWindowStart": "string",
"arrivalWindowEnd": "string",
"status": {},
"specialInstructions": "string",
"createdOn": "string",
"modifiedOn": "string"
}
}
Cancel Job
Cancels a Job | key: cancelJob
Output Example Payload
{
"data": {}
}
Create Appointment
Adds a new appointment to an existing job | key: createAppointment
Output Example Payload
{
"data": {
"id": 0,
"jobId": 0,
"appointmentNumber": "string",
"start": "string",
"end": "string",
"arrivalWindowStart": "string",
"arrivalWindowEnd": "string",
"status": {},
"specialInstructions": "string",
"createdOn": "string",
"modifiedOn": "string",
"customerId": 0,
"unused": true
}
}
Create Booking by Provider
Create a booking | key: createBookingByProvider
Output Example Payload
{
"data": {
"id": 0,
"source": "string",
"createdOn": "string",
"name": "string",
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string"
},
"customerType": {},
"start": "string",
"summary": "string",
"campaignId": 0,
"businessUnitId": 0,
"isFirstTimeClient": true,
"uploadedImages": [
"string"
],
"isSendConfirmationEmail": true,
"status": {},
"dismissingReasonId": 0,
"jobId": 0,
"externalId": "string",
"priority": {},
"jobTypeId": 0,
"bookingProviderId": 0,
"modifiedOn": "string"
}
}
Create Customer
Create a New Customer | key: createCustomer
Output Example Payload
{
"data": {
"id": 0,
"active": true,
"name": "string",
"type": {},
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string",
"latitude": 0,
"longitude": 0
},
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"balance": 0,
"tagTypeIds": [
0
],
"doNotMail": true,
"doNotService": true,
"createdOn": "string",
"createdById": 0,
"modifiedOn": "string",
"mergedToId": 0,
"externalData": [
{
"key": "string",
"value": "string"
}
],
"locations": [
{
"taxZoneId": 0,
"id": 0,
"customerId": 0,
"active": true,
"name": "string",
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string",
"latitude": 0,
"longitude": 0
},
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"createdOn": "string",
"createdById": 0,
"modifiedOn": "string",
"mergedToId": 0,
"zoneId": 0,
"tagTypeIds": [
0
],
"externalData": [
{
"key": "string",
"value": "string"
}
],
"contacts": [
{
"id": 0,
"type": {},
"value": "string",
"memo": "string"
}
]
}
],
"contacts": [
{
"id": 0,
"type": {},
"value": "string",
"memo": "string"
}
]
}
}
Create Customer Contact
Create a contact for a customer | key: createCustomerContact
Output Example Payload
{
"data": {
"id": 0,
"type": {},
"value": "string",
"memo": "string",
"modifiedOn": "string",
"phoneSettings": {
"phoneNumber": "string",
"doNotText": true
}
}
}
Create Installed Equipment
Create a new Installed equipment | key: createInstalledEquipment
Output Example Payload
{
"data": {
"id": 0,
"equipmentId": 0,
"locationId": 0,
"customerId": 0,
"invoiceItemId": 0,
"name": "string",
"installedOn": "string",
"createdOn": "string",
"modifiedOn": "string",
"serialNumber": "string",
"memo": "string",
"manufacturer": "string",
"model": "string",
"cost": 0,
"manufacturerWarrantyStart": "string",
"manufacturerWarrantyEnd": "string",
"serviceProviderWarrantyStart": "string",
"serviceProviderWarrantyEnd": "string",
"tags": [
{
"id": 0,
"ownerId": 0,
"typeId": 0,
"typeName": "string",
"memo": "string",
"color": "string",
"textColor": "string",
"code": "string"
}
],
"customFields": [
{
"id": 0,
"typeId": 0,
"name": "string",
"value": "string"
}
],
"attachments": [
{
"alias": "string",
"fileName": "string",
"type": {},
"url": "string"
}
]
}
}
Create Installed Equipment Attachment
Create a new installed equipment attachment | key: createInstalledEquipmentAttachment
Output Example Payload
{
"data": {
"path": "InstalledEquipment/Documents/e2374d0c-16b8-4bb7-b3b5-1bd0ac1df1f4.csv"
}
}
Create Invoices
Create adjustment invoice | key: createInvoices
Output Example Payload
{
"data": {}
}
Create Job
Create a job | key: createJob
Output Example Payload
{
"data": {
"id": 0,
"jobNumber": "string",
"projectId": 0,
"customerId": 0,
"locationId": 0,
"jobStatus": "string",
"completedOn": "string",
"businessUnitId": 0,
"jobTypeId": 0,
"priority": "string",
"campaignId": 0,
"summary": "string",
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"appointmentCount": 0,
"firstAppointmentId": 0,
"lastAppointmentId": 0,
"recallForId": 0,
"warrantyId": 0,
"jobGeneratedLeadSource": {
"jobId": 0,
"employeeId": 0
},
"noCharge": true,
"notificationsEnabled": true,
"createdOn": "string",
"createdById": 0,
"modifiedOn": "string",
"tagTypeIds": [
0
],
"leadCallId": 0,
"bookingId": 0,
"soldById": 0,
"externalData": [
{
"key": "string",
"value": "string"
}
],
"customerPo": "string"
}
}
Create Location
Creates a new location | key: createLocation
Output Example Payload
{
"data": {
"id": 0,
"customerId": 0,
"active": true,
"name": "string",
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string",
"latitude": 0,
"longitude": 0
},
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"createdOn": "string",
"createdById": 0,
"modifiedOn": "string",
"mergedToId": 0,
"zoneId": 0,
"tagTypeIds": [
0
],
"externalData": [
{
"key": "string",
"value": "string"
}
],
"taxZoneId": 0,
"contacts": [
{
"id": 0,
"type": {},
"value": "string",
"memo": "string"
}
]
}
}
Create Payment
Create a payment in Service Titan | key: createPayment
Output Example Payload
{
"data": {
"id": 0,
"typeId": 0,
"active": true,
"memo": "string",
"paidOn": "string",
"authCode": "string",
"checkNumber": "string",
"exportId": "string",
"transactionStatus": {},
"status": {},
"splits": [
{
"invoiceId": 0,
"amount": 0
}
]
}
}
Create Project
Create a new project | key: createProject
Output Example Payload
{
"data": {
"id": 0,
"number": "string",
"name": "string",
"summary": "string",
"status": "string",
"statusId": 0,
"subStatus": "string",
"subStatusId": 0,
"customerId": 0,
"locationId": 0,
"projectManagerIds": [
0
],
"businessUnitIds": [
0
],
"startDate": "string",
"targetCompletionDate": "string",
"actualCompletionDate": "string",
"modifiedOn": "string",
"createdOn": "string",
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"externalData": [
{
"key": "string",
"value": "string"
}
],
"jobIds": [
0
]
}
}
Create Technician
Create new technician | key: createTechnician
Output Example Payload
{
"data": {
"id": 0
}
}
Delete Appointment
Delete appointment by ID | key: deleteAppointment
Output Example Payload
{
"data": {}
}
Delete Customer Contact
Removes a contact from a customer | key: deletCustomersContact
Output Example Payload
{
"data": {}
}
Delete Invoice Item
Delete an invoice item | key: deleteInvoiceItem
Output Example Payload
{
"data": {}
}
Get Appointment
Retrieve an appointment by ID | key: getAppointment
Output Example Payload
{
"data": {
"id": 0,
"jobId": 0,
"appointmentNumber": "string",
"start": "string",
"end": "string",
"arrivalWindowStart": "string",
"arrivalWindowEnd": "string",
"status": {},
"specialInstructions": "string",
"createdOn": "string",
"modifiedOn": "string",
"customerId": 0,
"unused": true
}
}
Get Booking by Provider
Retrieve a booking by ID | key: getBookingByProvider
Output Example Payload
{
"data": {
"id": 0,
"source": "string",
"createdOn": "string",
"name": "string",
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string"
},
"customerType": {},
"start": "string",
"summary": "string",
"campaignId": 0,
"businessUnitId": 0,
"isFirstTimeClient": true,
"uploadedImages": [
"string"
],
"isSendConfirmationEmail": true,
"status": {},
"dismissingReasonId": 0,
"jobId": 0,
"externalId": "string",
"priority": {},
"jobTypeId": 0,
"bookingProviderId": 0,
"modifiedOn": "string"
}
}
Get Booking by Tenant
Retrieve a booking by ID | key: getBookingByTenant
Output Example Payload
{
"data": {
"id": 0,
"source": "string",
"createdOn": "string",
"name": "string",
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string"
},
"customerType": {},
"start": "string",
"summary": "string",
"campaignId": 0,
"businessUnitId": 0,
"isFirstTimeClient": true,
"uploadedImages": [
"string"
],
"isSendConfirmationEmail": true,
"status": {},
"dismissingReasonId": 0,
"jobId": 0,
"externalId": "string",
"priority": {},
"jobTypeId": 0,
"bookingProviderId": 0,
"modifiedOn": "string"
}
}
Get Customer
Retrieve a Customer by ID | key: getCustomer
Output Example Payload
{
"data": {
"id": 0,
"active": true,
"name": "string",
"type": {},
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string",
"latitude": 0,
"longitude": 0
},
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"balance": 0,
"tagTypeIds": [
0
],
"doNotMail": true,
"doNotService": true,
"createdOn": "string",
"createdById": 0,
"modifiedOn": "string",
"mergedToId": 0,
"externalData": [
{
"key": "string",
"value": "string"
}
]
}
}
Get Installed Equipment
Retrieve a Installed Equipment by ID | key: getInstalledEquipment
Output Example Payload
{
"data": {
"id": 0,
"equipmentId": 0,
"locationId": 0,
"customerId": 0,
"invoiceItemId": 0,
"name": "string",
"installedOn": "string",
"createdOn": "string",
"modifiedOn": "string",
"serialNumber": "string",
"memo": "string",
"manufacturer": "string",
"model": "string",
"cost": 0,
"manufacturerWarrantyStart": "string",
"manufacturerWarrantyEnd": "string",
"serviceProviderWarrantyStart": "string",
"serviceProviderWarrantyEnd": "string",
"tags": [
{
"id": 0,
"ownerId": 0,
"typeId": 0,
"typeName": "string",
"memo": "string",
"color": "string",
"textColor": "string",
"code": "string"
}
],
"customFields": [
{
"id": 0,
"typeId": 0,
"name": "string",
"value": "string"
}
],
"attachments": [
{
"alias": "string",
"fileName": "string",
"type": {},
"url": "string"
}
]
}
}
Get Job
Retrieve a job by ID | key: getJob
Output Example Payload
{
"data": {
"id": 0,
"jobNumber": "string",
"projectId": 0,
"customerId": 0,
"locationId": 0,
"jobStatus": "string",
"completedOn": "string",
"businessUnitId": 0,
"jobTypeId": 0,
"priority": "string",
"campaignId": 0,
"summary": "string",
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"appointmentCount": 0,
"firstAppointmentId": 0,
"lastAppointmentId": 0,
"recallForId": 0,
"warrantyId": 0,
"jobGeneratedLeadSource": {
"jobId": 0,
"employeeId": 0
},
"noCharge": true,
"notificationsEnabled": true,
"createdOn": "string",
"createdById": 0,
"modifiedOn": "string",
"tagTypeIds": [
0
],
"leadCallId": 0,
"bookingId": 0,
"soldById": 0,
"externalData": [
{
"key": "string",
"value": "string"
}
],
"customerPo": "string"
}
}
Get Location
Retrieve a location by ID | key: getLocation
Output Example Payload
{
"data": {
"id": 0,
"customerId": 0,
"active": true,
"name": "string",
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string",
"latitude": 0,
"longitude": 0
},
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"createdOn": "string",
"createdById": 0,
"modifiedOn": "string",
"mergedToId": 0,
"zoneId": 0,
"tagTypeIds": [
0
],
"externalData": [
{
"key": "string",
"value": "string"
}
],
"taxZoneId": 0
}
}
Get Project
Retrieve a project by ID | key: getProject
Output Example Payload
{
"data": {
"id": 0,
"number": "string",
"name": "string",
"summary": "string",
"status": "string",
"statusId": 0,
"subStatus": "string",
"subStatusId": 0,
"customerId": 0,
"locationId": 0,
"projectManagerIds": [
0
],
"businessUnitIds": [
0
],
"startDate": "string",
"targetCompletionDate": "string",
"actualCompletionDate": "string",
"modifiedOn": "string",
"createdOn": "string",
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"externalData": [
{
"key": "string",
"value": "string"
}
],
"jobIds": [
0
]
}
}
Get Technician
Retrieve a Technician by ID | key: getTechnician
Output Example Payload
{
"data": {
"id": 0,
"userId": 0,
"name": "string",
"roleIds": [
0
],
"businessUnitId": 0,
"mainZoneId": 0,
"zoneIds": [
0
],
"createdOn": "string",
"modifiedOn": "string",
"email": "string",
"phoneNumber": "string",
"loginName": "string",
"home": {
"street": "string",
"unit": "string",
"country": "string",
"city": "string",
"state": "string",
"zip": "string",
"streetAddress": "string",
"latitude": 0,
"longitude": 0
},
"dailyGoal": 0,
"isManagedTech": true,
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"active": true,
"aadUserId": "string",
"burdenRate": 0,
"team": "string",
"jobFilter": {}
}
}
List Appointment Assignment
Retrieve a list of appointment assignments | key: listAppointmentsAssignment
Output Example Payload
{
"data": {
"page": 0,
"pageSize": 0,
"hasMore": true,
"totalCount": 0,
"data": [
{
"id": 0,
"technicianId": 0,
"technicianName": "string",
"assignedById": 0,
"assignedOn": "string",
"status": {},
"isPaused": true,
"jobId": 0,
"appointmentId": 0
}
]
}
}
List Appointments
Retrieve a list of appointments | key: listAppointments
Output Example Payload
{
"data": {
"page": 0,
"pageSize": 0,
"hasMore": true,
"totalCount": 0,
"data": [
{
"id": 0,
"jobId": 0,
"appointmentNumber": "string",
"start": "string",
"end": "string",
"arrivalWindowStart": "string",
"arrivalWindowEnd": "string",
"status": {},
"specialInstructions": "string",
"createdOn": "string",
"modifiedOn": "string",
"customerId": 0,
"unused": true
},
{
"id": 0,
"jobId": 0,
"appointmentNumber": "string",
"start": "string",
"end": "string",
"arrivalWindowStart": "string",
"arrivalWindowEnd": "string",
"status": {},
"specialInstructions": "string",
"createdOn": "string",
"modifiedOn": "string",
"customerId": 0,
"unused": true
}
]
}
}
List Bookings by Provider
Retrieves a list of bookings | key: listBookingByProvider
Output Example Payload
{
"data": {
"page": 0,
"pageSize": 0,
"hasMore": true,
"totalCount": 0,
"data": [
{
"id": 0,
"source": "string",
"createdOn": "string",
"name": "string",
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string"
},
"customerType": {},
"start": "string",
"summary": "string",
"campaignId": 0,
"businessUnitId": 0,
"isFirstTimeClient": true,
"uploadedImages": [
"string"
],
"isSendConfirmationEmail": true,
"status": {},
"dismissingReasonId": 0,
"jobId": 0,
"externalId": "string",
"priority": {},
"jobTypeId": 0,
"bookingProviderId": 0,
"modifiedOn": "string"
},
{
"id": 0,
"source": "string",
"createdOn": "string",
"name": "string",
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string"
},
"customerType": {},
"start": "string",
"summary": "string",
"campaignId": 0,
"businessUnitId": 0,
"isFirstTimeClient": true,
"uploadedImages": [
"string"
],
"isSendConfirmationEmail": true,
"status": {},
"dismissingReasonId": 0,
"jobId": 0,
"externalId": "string",
"priority": {},
"jobTypeId": 0,
"bookingProviderId": 0,
"modifiedOn": "string"
}
]
}
}
List Bookings by Tenant
Retrieves a list of bookings | key: listBookingByTenant
Output Example Payload
{
"data": {
"page": 0,
"pageSize": 0,
"hasMore": true,
"totalCount": 0,
"data": [
{
"id": 0,
"source": "string",
"createdOn": "string",
"name": "string",
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string"
},
"customerType": {},
"start": "string",
"summary": "string",
"campaignId": 0,
"businessUnitId": 0,
"isFirstTimeClient": true,
"uploadedImages": [
"string"
],
"isSendConfirmationEmail": true,
"status": {},
"dismissingReasonId": 0,
"jobId": 0,
"externalId": "string",
"priority": {},
"jobTypeId": 0,
"bookingProviderId": 0,
"modifiedOn": "string"
},
{
"id": 0,
"source": "string",
"createdOn": "string",
"name": "string",
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string"
},
"customerType": {},
"start": "string",
"summary": "string",
"campaignId": 0,
"businessUnitId": 0,
"isFirstTimeClient": true,
"uploadedImages": [
"string"
],
"isSendConfirmationEmail": true,
"status": {},
"dismissingReasonId": 0,
"jobId": 0,
"externalId": "string",
"priority": {},
"jobTypeId": 0,
"bookingProviderId": 0,
"modifiedOn": "string"
}
]
}
}
List Business Units
Gets a list of business units | key: listBusinessUnits
Output Example Payload
{
"data": {
"page": 0,
"pageSize": 0,
"hasMore": true,
"totalCount": 0,
"data": [
{
"id": 0,
"active": true,
"name": "string",
"officialName": "string",
"email": "string",
"currency": "string",
"phoneNumber": "string",
"invoiceHeader": "string",
"invoiceMessage": "string",
"defaultTaxRate": 0,
"authorizationParagraph": "string",
"acknowledgementParagraph": "string",
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string"
},
"materialSku": "string",
"quickbooksClass": "string",
"accountCode": "string",
"franchiseId": "string",
"conceptCode": "string",
"corporateContractNumber": "string",
"tenant": {
"id": 0,
"name": "string",
"accountCode": "string",
"franchiseId": "string",
"conceptCode": "string",
"modifiedOn": "string"
},
"createdOn": "string",
"modifiedOn": "string",
"externalData": [
{
"key": "string",
"value": "string"
}
]
}
]
}
}
List Customer Contacts
Gets a list of contacts for the specified customer | key: listCustomersContact
Output Example Payload
{
"data": {
"page": 0,
"pageSize": 0,
"hasMore": true,
"totalCount": 0,
"data": [
{
"id": 0,
"type": {},
"value": "string",
"memo": "string",
"modifiedOn": "string",
"phoneSettings": {
"phoneNumber": "string",
"doNotText": true
}
},
{
"id": 0,
"type": {},
"value": "string",
"memo": "string",
"modifiedOn": "string",
"phoneSettings": {
"phoneNumber": "string",
"doNotText": true
}
}
]
}
}
List Customers
Retrieve a list of Customers | key: listCustomers
Output Example Payload
{
"data": {
"page": 0,
"pageSize": 0,
"hasMore": true,
"totalCount": 0,
"data": [
{
"id": 0,
"active": true,
"name": "string",
"type": {},
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string",
"latitude": 0,
"longitude": 0
},
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"balance": 0,
"tagTypeIds": [
0
],
"doNotMail": true,
"doNotService": true,
"createdOn": "string",
"createdById": 0,
"modifiedOn": "string",
"mergedToId": 0,
"externalData": [
{
"key": "string",
"value": "string"
}
]
},
{
"id": 0,
"active": true,
"name": "string",
"type": {},
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string",
"latitude": 0,
"longitude": 0
},
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"balance": 0,
"tagTypeIds": [
0
],
"doNotMail": true,
"doNotService": true,
"createdOn": "string",
"createdById": 0,
"modifiedOn": "string",
"mergedToId": 0,
"externalData": [
{
"key": "string",
"value": "string"
}
]
}
]
}
}
List Installed Equipment
Retrieve a list of installed equipment | key: listInstalledEquipment
Output Example Payload
{
"data": {
"page": 0,
"pageSize": 0,
"hasMore": true,
"totalCount": 0,
"data": [
{
"id": 0,
"equipmentId": 0,
"locationId": 0,
"customerId": 0,
"invoiceItemId": 0,
"name": "string",
"installedOn": "string",
"createdOn": "string",
"modifiedOn": "string",
"serialNumber": "string",
"memo": "string",
"manufacturer": "string",
"model": "string",
"cost": 0,
"manufacturerWarrantyStart": "string",
"manufacturerWarrantyEnd": "string",
"serviceProviderWarrantyStart": "string",
"serviceProviderWarrantyEnd": "string",
"tags": [
{
"id": 0,
"ownerId": 0,
"typeId": 0,
"typeName": "string",
"memo": "string",
"color": "string",
"textColor": "string",
"code": "string"
}
]
}
]
}
}
List Installed Equipment Attachments
Retrieve installed Equipment attachments | key: listInstalledEquipmentAttachments
Output Example Payload
{
"data": {
"type": "Buffer",
"data": [
69,
120,
97,
109,
112,
108,
101,
70,
105,
108,
101
]
}
}
List Invoices
Retrieves a list of invoices | key: listInvoices
Output Example Payload
{
"data": {
"page": 0,
"pageSize": 0,
"hasMore": true,
"totalCount": 0,
"data": [
{
"id": 0,
"syncStatus": "string",
"summary": "string",
"referenceNumber": "string",
"invoiceDate": "string",
"dueDate": "string",
"subTotal": "string",
"salesTax": "string",
"salesTaxCode": {
"id": 0,
"name": "string",
"taxRate": 0
},
"total": "string",
"balance": "string",
"invoiceType": {
"id": 0,
"name": "string"
},
"customer": {
"id": 0,
"name": "string"
},
"customerAddress": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string"
},
"location": {
"id": 0,
"name": "string"
},
"locationAddress": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string"
},
"businessUnit": {
"id": 0,
"name": "string"
},
"termName": "string",
"createdBy": "string",
"batch": {
"id": 0,
"number": "string",
"name": "string"
},
"depositedOn": "string",
"createdOn": "string",
"modifiedOn": "string",
"adjustmentToId": 0,
"job": {
"id": 0,
"number": "string",
"type": "string"
},
"projectId": 0,
"royalty": {
"status": "string",
"date": "string",
"sentOn": "string",
"memo": "string"
},
"employeeInfo": {
"id": 0,
"name": "string",
"modifiedOn": "string"
},
"commissionEligibilityDate": "string",
"sentStatus": "NotSent",
"reviewStatus": "NeedsReview",
"assignedTo": {
"id": 0,
"name": "string"
},
"items": [
{
"id": 0,
"description": "string",
"quantity": "string",
"cost": "string",
"totalCost": "string",
"inventoryLocation": "string",
"price": "string",
"type": "Service",
"skuName": "string",
"skuId": 0,
"total": "string",
"inventory": true,
"taxable": true,
"generalLedgerAccount": {
"id": 0,
"name": "string",
"number": "string",
"type": "string",
"detailType": "string"
},
"costOfSaleAccount": {
"id": 0,
"name": "string",
"number": "string",
"type": "string",
"detailType": "string"
},
"assetAccount": {
"id": 0,
"name": "string",
"number": "string",
"type": "string",
"detailType": "string"
},
"membershipTypeId": 0,
"itemGroup": {
"rootId": 0,
"name": "string"
},
"displayName": "string",
"soldHours": 0,
"modifiedOn": "string",
"serviceDate": "string",
"order": 0,
"businessUnit": {
"id": 0,
"name": "string"
}
}
],
"customFields": [
{
"name": "string",
"value": "string"
}
]
},
{
"id": 0,
"syncStatus": "string",
"summary": "string",
"referenceNumber": "string",
"invoiceDate": "string",
"dueDate": "string",
"subTotal": "string",
"salesTax": "string",
"salesTaxCode": {
"id": 0,
"name": "string",
"taxRate": 0
},
"total": "string",
"balance": "string",
"invoiceType": {
"id": 0,
"name": "string"
},
"customer": {
"id": 0,
"name": "string"
},
"customerAddress": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string"
},
"location": {
"id": 0,
"name": "string"
},
"locationAddress": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string"
},
"businessUnit": {
"id": 0,
"name": "string"
},
"termName": "string",
"createdBy": "string",
"batch": {
"id": 0,
"number": "string",
"name": "string"
},
"depositedOn": "string",
"createdOn": "string",
"modifiedOn": "string",
"adjustmentToId": 0,
"job": {
"id": 0,
"number": "string",
"type": "string"
},
"projectId": 0,
"royalty": {
"status": "string",
"date": "string",
"sentOn": "string",
"memo": "string"
},
"employeeInfo": {
"id": 0,
"name": "string",
"modifiedOn": "string"
},
"commissionEligibilityDate": "string",
"sentStatus": "NotSent",
"reviewStatus": "NeedsReview",
"assignedTo": {
"id": 0,
"name": "string"
},
"items": [
{
"id": 0,
"description": "string",
"quantity": "string",
"cost": "string",
"totalCost": "string",
"inventoryLocation": "string",
"price": "string",
"type": "Service",
"skuName": "string",
"skuId": 0,
"total": "string",
"inventory": true,
"taxable": true,
"generalLedgerAccount": {
"id": 0,
"name": "string",
"number": "string",
"type": "string",
"detailType": "string"
},
"costOfSaleAccount": {
"id": 0,
"name": "string",
"number": "string",
"type": "string",
"detailType": "string"
},
"assetAccount": {
"id": 0,
"name": "string",
"number": "string",
"type": "string",
"detailType": "string"
},
"membershipTypeId": 0,
"itemGroup": {
"rootId": 0,
"name": "string"
},
"displayName": "string",
"soldHours": 0,
"modifiedOn": "string",
"serviceDate": "string",
"order": 0,
"businessUnit": {
"id": 0,
"name": "string"
}
}
],
"customFields": [
{
"name": "string",
"value": "string"
}
]
}
]
}
}
List Job Cancel Reasons
Retrieve a list of job cancel reasons | key: listJobCancelReasons
Output Example Payload
{
"data": {
"page": 0,
"pageSize": 0,
"hasMore": true,
"totalCount": 0,
"data": [
{
"id": 0,
"name": "string",
"active": true,
"createdOn": "string",
"modifiedOn": "string"
}
]
}
}
List Jobs
Retrieve a list of jobs | key: listJobs
Output Example Payload
{
"data": {
"page": 0,
"pageSize": 0,
"hasMore": true,
"totalCount": 0,
"data": [
{
"id": 0,
"jobNumber": "string",
"projectId": 0,
"customerId": 0,
"locationId": 0,
"jobStatus": "string",
"completedOn": "string",
"businessUnitId": 0,
"jobTypeId": 0,
"priority": "string",
"campaignId": 0,
"summary": "string",
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"appointmentCount": 0,
"firstAppointmentId": 0,
"lastAppointmentId": 0,
"recallForId": 0,
"warrantyId": 0,
"jobGeneratedLeadSource": {
"jobId": 0,
"employeeId": 0
},
"noCharge": true,
"notificationsEnabled": true,
"createdOn": "string",
"createdById": 0,
"modifiedOn": "string",
"tagTypeIds": [
0
],
"leadCallId": 0,
"bookingId": 0,
"soldById": 0,
"externalData": [
{
"key": "string",
"value": "string"
}
],
"customerPo": "string"
},
{
"id": 0,
"jobNumber": "string",
"projectId": 0,
"customerId": 0,
"locationId": 0,
"jobStatus": "string",
"completedOn": "string",
"businessUnitId": 0,
"jobTypeId": 0,
"priority": "string",
"campaignId": 0,
"summary": "string",
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"appointmentCount": 0,
"firstAppointmentId": 0,
"lastAppointmentId": 0,
"recallForId": 0,
"warrantyId": 0,
"jobGeneratedLeadSource": {
"jobId": 0,
"employeeId": 0
},
"noCharge": true,
"notificationsEnabled": true,
"createdOn": "string",
"createdById": 0,
"modifiedOn": "string",
"tagTypeIds": [
0
],
"leadCallId": 0,
"bookingId": 0,
"soldById": 0,
"externalData": [
{
"key": "string",
"value": "string"
}
],
"customerPo": "string"
}
]
}
}
List Locations
Retrieve a list of Locations | key: listLocations
Output Example Payload
{
"data": {
"page": 0,
"pageSize": 0,
"hasMore": true,
"totalCount": 0,
"data": [
{
"id": 0,
"customerId": 0,
"active": true,
"name": "string",
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string",
"latitude": 0,
"longitude": 0
},
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"createdOn": "string",
"createdById": 0,
"modifiedOn": "string",
"mergedToId": 0,
"zoneId": 0,
"tagTypeIds": [
0
],
"externalData": [
{
"key": "string",
"value": "string"
}
],
"taxZoneId": 0
},
{
"id": 0,
"customerId": 0,
"active": true,
"name": "string",
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string",
"latitude": 0,
"longitude": 0
},
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"createdOn": "string",
"createdById": 0,
"modifiedOn": "string",
"mergedToId": 0,
"zoneId": 0,
"tagTypeIds": [
0
],
"externalData": [
{
"key": "string",
"value": "string"
}
],
"taxZoneId": 0
}
]
}
}
List Payments
Retrieve a list of payments | key: listPayments
Output Example Payload
{
"data": {
"page": 0,
"pageSize": 0,
"hasMore": true,
"totalCount": 0,
"data": [
{
"id": 0,
"syncStatus": "string",
"referenceNumber": "string",
"date": "string",
"type": "string",
"typeId": "string",
"total": "string",
"unappliedAmount": "string",
"memo": "string",
"customer": {
"id": 0,
"name": "string"
},
"businessUnit": {
"id": 0,
"name": "string"
},
"batch": {
"id": 0,
"number": "string",
"name": "string"
},
"createdBy": "string",
"generalLedgerAccount": {
"id": 0,
"name": "string",
"number": "string",
"type": "string",
"detailType": "string"
},
"appliedTo": [
{
"appliedId": 0,
"appliedTo": 0,
"appliedAmount": "string",
"appliedOn": "string",
"appliedBy": "string",
"appliedToReferenceNumber": "string"
}
],
"customFields": [
{
"name": "string",
"value": "string"
}
],
"authCode": "string",
"checkNumber": "string",
"modifiedOn": "string",
"createdOn": "string"
}
]
}
}
List Projects
Retrieve a list of Projects | key: listProjects
Output Example Payload
{
"data": {
"page": 0,
"pageSize": 0,
"hasMore": true,
"totalCount": 0,
"data": [
{
"id": 0,
"number": "string",
"name": "string",
"summary": "string",
"status": "string",
"statusId": 0,
"subStatus": "string",
"subStatusId": 0,
"customerId": 0,
"locationId": 0,
"projectManagerIds": [
0
],
"businessUnitIds": [
0
],
"startDate": "string",
"targetCompletionDate": "string",
"actualCompletionDate": "string",
"modifiedOn": "string",
"createdOn": "string",
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"externalData": [
{
"key": "string",
"value": "string"
}
],
"jobIds": [
0
]
},
{
"id": 0,
"number": "string",
"name": "string",
"summary": "string",
"status": "string",
"statusId": 0,
"subStatus": "string",
"subStatusId": 0,
"customerId": 0,
"locationId": 0,
"projectManagerIds": [
0
],
"businessUnitIds": [
0
],
"startDate": "string",
"targetCompletionDate": "string",
"actualCompletionDate": "string",
"modifiedOn": "string",
"createdOn": "string",
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"externalData": [
{
"key": "string",
"value": "string"
}
],
"jobIds": [
0
]
}
]
}
}
List Technicians
Retrieve a list of technicians | key: listTechnicians
Output Example Payload
{
"data": {
"page": 0,
"pageSize": 0,
"hasMore": true,
"totalCount": 0,
"data": [
{
"id": 0,
"userId": 0,
"name": "string",
"roleIds": [
0
],
"businessUnitId": 0,
"mainZoneId": 0,
"zoneIds": [
0
],
"createdOn": "string",
"modifiedOn": "string",
"email": "string",
"phoneNumber": "string",
"loginName": "string",
"home": {
"street": "string",
"unit": "string",
"country": "string",
"city": "string",
"state": "string",
"zip": "string",
"streetAddress": "string",
"latitude": 0,
"longitude": 0
},
"dailyGoal": 0,
"isManagedTech": true,
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"active": true,
"aadUserId": "string",
"burdenRate": 0,
"team": "string",
"jobFilter": {}
},
{
"id": 0,
"userId": 0,
"name": "string",
"roleIds": [
0
],
"businessUnitId": 0,
"mainZoneId": 0,
"zoneIds": [
0
],
"createdOn": "string",
"modifiedOn": "string",
"email": "string",
"phoneNumber": "string",
"loginName": "string",
"home": {
"street": "string",
"unit": "string",
"country": "string",
"city": "string",
"state": "string",
"zip": "string",
"streetAddress": "string",
"latitude": 0,
"longitude": 0
},
"dailyGoal": 0,
"isManagedTech": true,
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"active": true,
"aadUserId": "string",
"burdenRate": 0,
"team": "string",
"jobFilter": {}
}
]
}
}
List User Roles
Gets a list of user roles | key: listUserRoles
Output Example Payload
{
"data": {
"page": 0,
"pageSize": 0,
"hasMore": true,
"totalCount": 0,
"data": [
{
"id": 0,
"active": true,
"name": "string",
"createdOn": "string",
"employeeType": "Employee"
}
]
}
}
Raw Request
Send raw HTTP request to ServiceDesk Plus | key: rawRequest
Unassign Technician to Appointment
Unassigns the list of technicians from the appointment | key: unassignTechnicians
Output Example Payload
{
"data": {
"id": 0,
"jobId": 0,
"appointmentNumber": "string",
"start": "string",
"end": "string",
"arrivalWindowStart": "string",
"arrivalWindowEnd": "string",
"status": {},
"specialInstructions": "string",
"createdOn": "string",
"modifiedOn": "string"
}
}
Update Booking
Update a booking | key: updateBooking
Output Example Payload
{
"data": {
"id": 0,
"source": "string",
"createdOn": "string",
"name": "string",
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string"
},
"customerType": {},
"start": "string",
"summary": "string",
"campaignId": 0,
"businessUnitId": 0,
"isFirstTimeClient": true,
"uploadedImages": [
"string"
],
"isSendConfirmationEmail": true,
"status": {},
"dismissingReasonId": 0,
"jobId": 0,
"externalId": "string",
"priority": {},
"jobTypeId": 0,
"bookingProviderId": 0,
"modifiedOn": "string"
}
}
Update Customer
Update a customer | key: updateCustomer
Output Example Payload
{
"data": {
"id": 0,
"active": true,
"name": "string",
"type": {},
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string",
"latitude": 0,
"longitude": 0
},
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"balance": 0,
"tagTypeIds": [
0
],
"doNotMail": true,
"doNotService": true,
"createdOn": "string",
"createdById": 0,
"modifiedOn": "string",
"mergedToId": 0,
"externalData": [
{
"key": "string",
"value": "string"
}
],
"locations": [
{
"taxZoneId": 0,
"id": 0,
"customerId": 0,
"active": true,
"name": "string",
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string",
"latitude": 0,
"longitude": 0
},
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"createdOn": "string",
"createdById": 0,
"modifiedOn": "string",
"mergedToId": 0,
"zoneId": 0,
"tagTypeIds": [
0
],
"externalData": [
{
"key": "string",
"value": "string"
}
],
"contacts": [
{
"id": 0,
"type": {},
"value": "string",
"memo": "string"
}
]
}
],
"contacts": [
{
"id": 0,
"type": {},
"value": "string",
"memo": "string"
}
]
}
}
Update Customer Contact
Updates a contact on the customers | key: updateCustomerContact
Output Example Payload
{
"data": {
"id": 0,
"type": {},
"value": "string",
"memo": "string",
"modifiedOn": "string",
"phoneSettings": {
"phoneNumber": "string",
"doNotText": true
}
}
}
Update Installed Equipment
Update installed equipment by ID | key: updateInstalledEquipment
Output Example Payload
{
"data": {
"id": 0,
"equipmentId": 0,
"locationId": 0,
"customerId": 0,
"invoiceItemId": 0,
"name": "string",
"installedOn": "string",
"createdOn": "string",
"modifiedOn": "string",
"serialNumber": "string",
"memo": "string",
"manufacturer": "string",
"model": "string",
"cost": 0,
"manufacturerWarrantyStart": "string",
"manufacturerWarrantyEnd": "string",
"serviceProviderWarrantyStart": "string",
"serviceProviderWarrantyEnd": "string",
"tags": [
{
"id": 0,
"ownerId": 0,
"typeId": 0,
"typeName": "string",
"memo": "string",
"color": "string",
"textColor": "string",
"code": "string"
}
],
"customFields": [
{
"id": 0,
"typeId": 0,
"name": "string",
"value": "string"
}
],
"attachments": [
{
"alias": "string",
"fileName": "string",
"type": {},
"url": "string"
}
]
}
}
Update Invoice
Update Invoice | key: updateInvoice
Output Example Payload
{
"data": {}
}
Update Invoice Custom Fields
Update custom fields for specified Invoices | key: updateInvoiceCustomFields
Output Example Payload
{
"data": {}
}
Update Invoice Items
Update invoice items | key: updateInvoiceItems
Output Example Payload
{
"data": {}
}
Update Job
Update a job | key: updateJob
Output Example Payload
{
"data": {
"id": 0,
"jobNumber": "string",
"projectId": 0,
"customerId": 0,
"locationId": 0,
"jobStatus": "string",
"completedOn": "string",
"businessUnitId": 0,
"jobTypeId": 0,
"priority": "string",
"campaignId": 0,
"summary": "string",
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"appointmentCount": 0,
"firstAppointmentId": 0,
"lastAppointmentId": 0,
"recallForId": 0,
"warrantyId": 0,
"jobGeneratedLeadSource": {
"jobId": 0,
"employeeId": 0
},
"noCharge": true,
"notificationsEnabled": true,
"createdOn": "string",
"createdById": 0,
"modifiedOn": "string",
"tagTypeIds": [
0
],
"leadCallId": 0,
"bookingId": 0,
"soldById": 0,
"externalData": [
{
"key": "string",
"value": "string"
}
],
"customerPo": "string"
}
}
Update Location
Update a location | key: updateLocation
Output Example Payload
{
"data": {
"id": 0,
"customerId": 0,
"active": true,
"name": "string",
"address": {
"street": "string",
"unit": "string",
"city": "string",
"state": "string",
"zip": "string",
"country": "string",
"latitude": 0,
"longitude": 0
},
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"createdOn": "string",
"createdById": 0,
"modifiedOn": "string",
"mergedToId": 0,
"zoneId": 0,
"tagTypeIds": [
0
],
"externalData": [
{
"key": "string",
"value": "string"
}
],
"taxZoneId": 0
}
}
Update Payment
Update a specified payment | key: updatePayment
Output Example Payload
{
"data": {
"id": 0,
"typeId": 0,
"active": true,
"memo": "string",
"paidOn": "string",
"authCode": "string",
"checkNumber": "string",
"exportId": "string",
"transactionStatus": {},
"status": {},
"splits": [
{
"invoiceId": 0,
"amount": 0
}
]
}
}
Update Payment Custom Fields
Update custom fields for specified payments | key: updatePaymentCustomFields
Output Example Payload
{
"data": {}
}
Update Project
Update a project | key: updateProject
Output Example Payload
{
"data": {
"id": 0,
"number": "string",
"name": "string",
"summary": "string",
"status": "string",
"statusId": 0,
"subStatus": "string",
"subStatusId": 0,
"customerId": 0,
"locationId": 0,
"projectManagerIds": [
0
],
"businessUnitIds": [
0
],
"startDate": "string",
"targetCompletionDate": "string",
"actualCompletionDate": "string",
"modifiedOn": "string",
"createdOn": "string",
"customFields": [
{
"typeId": 0,
"name": "string",
"value": "string"
}
],
"externalData": [
{
"key": "string",
"value": "string"
}
],
"jobIds": [
0
]
}
}
Update Technician
Update a technician | key: updateTechnician
Output Example Payload
{
"data": {
"id": 0
}
}