ServiceTitan MCP Server

non_job_appointments_get_list

Retrieve a filtered list of non-job appointments from ServiceTitan based on criteria like date ranges, technician ID, or activity status, including pagination and sorting options for precise results.

Input Schema

NameRequiredDescriptionDefault
activeOnlyNoWhether the result should contains only active non-job appointments
createdBeforeNoFormat - date-time (as date-time in RFC3339). Return items created before certain date/time (in UTC)
createdOnOrAfterNoFormat - date-time (as date-time in RFC3339). Return items created on or after certain date/time (in UTC)
idsNoPerform lookup by multiple IDs (maximum 50)
includeTotalNoWhether total count should be returned
modifiedBeforeNoFormat - date-time (as date-time in RFC3339). Return items modified before certain date/time (in UTC)
modifiedOnOrAfterNoFormat - date-time (as date-time in RFC3339). Return items modified on or after certain date/time (in UTC)
pageNoFormat - int32. The logical number of page to return, starting from 1
pageSizeNoFormat - int32. How many records to return (50 by default)
showOnTechnicianScheduleNoWhether the non-job appointment shows on the technicians schedule even if there is no timesheet
sortNoApplies sorting by the specified field: "?sort=+FieldName" for ascending order, "?sort=-FieldName" for descending order. Available fields are: Id, CreatedOn, ModifiedOn.
startsOnOrAfterNoFormat - date-time (as date-time in RFC3339). When the Start of non-job appointment should be at or after
startsOnOrBeforeNoFormat - date-time (as date-time in RFC3339). When the Start of non-job appointment should be at or before
technicianIdNoFormat - int64. Unique id of the technician this non-job appointment applies to
tenantYesFormat - int64. Tenant ID
timesheetCodeIdNoFormat - int64. Unique Id of timesheet code must apply to

Input Schema (JSON Schema)

{ "$schema": "http://json-schema.org/draft-07/schema#", "additionalProperties": false, "properties": { "activeOnly": { "anyOf": [ { "anyOf": [ { "not": {} }, { "type": "boolean" } ] }, { "type": "null" } ], "description": "Whether the result should contains only active non-job appointments" }, "createdBefore": { "anyOf": [ { "anyOf": [ { "not": {} }, { "format": "date-time", "type": "string" } ] }, { "type": "null" } ], "description": "Format - date-time (as date-time in RFC3339). Return items created before certain date/time (in UTC)" }, "createdOnOrAfter": { "anyOf": [ { "anyOf": [ { "not": {} }, { "format": "date-time", "type": "string" } ] }, { "type": "null" } ], "description": "Format - date-time (as date-time in RFC3339). Return items created on or after certain date/time (in UTC)" }, "ids": { "anyOf": [ { "anyOf": [ { "not": {} }, { "type": "string" } ] }, { "type": "null" } ], "description": "Perform lookup by multiple IDs (maximum 50)" }, "includeTotal": { "anyOf": [ { "anyOf": [ { "not": {} }, { "type": "boolean" } ] }, { "type": "null" } ], "description": "Whether total count should be returned" }, "modifiedBefore": { "anyOf": [ { "anyOf": [ { "not": {} }, { "format": "date-time", "type": "string" } ] }, { "type": "null" } ], "description": "Format - date-time (as date-time in RFC3339). Return items modified before certain date/time (in UTC)" }, "modifiedOnOrAfter": { "anyOf": [ { "anyOf": [ { "not": {} }, { "format": "date-time", "type": "string" } ] }, { "type": "null" } ], "description": "Format - date-time (as date-time in RFC3339). Return items modified on or after certain date/time (in UTC)" }, "page": { "anyOf": [ { "anyOf": [ { "not": {} }, { "type": "integer" } ] }, { "type": "null" } ], "description": "Format - int32. The logical number of page to return, starting from 1" }, "pageSize": { "anyOf": [ { "anyOf": [ { "not": {} }, { "type": "integer" } ] }, { "type": "null" } ], "description": "Format - int32. How many records to return (50 by default)" }, "showOnTechnicianSchedule": { "anyOf": [ { "anyOf": [ { "not": {} }, { "type": "boolean" } ] }, { "type": "null" } ], "description": "Whether the non-job appointment shows on the technicians schedule even if there is no timesheet" }, "sort": { "anyOf": [ { "anyOf": [ { "not": {} }, { "type": "string" } ] }, { "type": "null" } ], "description": "Applies sorting by the specified field:\n\"?sort=+FieldName\" for ascending order,\n\"?sort=-FieldName\" for descending order.\n\nAvailable fields are: Id, CreatedOn, ModifiedOn." }, "startsOnOrAfter": { "anyOf": [ { "anyOf": [ { "not": {} }, { "format": "date-time", "type": "string" } ] }, { "type": "null" } ], "description": "Format - date-time (as date-time in RFC3339). When the Start of non-job appointment should be at or after" }, "startsOnOrBefore": { "anyOf": [ { "anyOf": [ { "not": {} }, { "format": "date-time", "type": "string" } ] }, { "type": "null" } ], "description": "Format - date-time (as date-time in RFC3339). When the Start of non-job appointment should be at or before" }, "technicianId": { "anyOf": [ { "anyOf": [ { "not": {} }, { "type": "integer" } ] }, { "type": "null" } ], "description": "Format - int64. Unique id of the technician this non-job appointment applies to" }, "tenant": { "description": "Format - int64. Tenant ID", "type": "integer" }, "timesheetCodeId": { "anyOf": [ { "anyOf": [ { "not": {} }, { "type": "integer" } ] }, { "type": "null" } ], "description": "Format - int64. Unique Id of timesheet code must apply to" } }, "required": [ "tenant" ], "type": "object" }

You must be authenticated.

Other Tools from ServiceTitan MCP Server

Related Tools

ID: mrnu4dtu2r