contacts_getcontactrelationship_list
Retrieve relationships for a specific contact in ServiceTitan, filtering by related entity, type, creation date, or sorting order, with pagination support.
Input Schema
Name | Required | Description | Default |
---|---|---|---|
contactId | Yes | Format - guid. | |
createdBefore | No | Format - date-time (as date-time in RFC3339). Return items created before certain date/time (in UTC) | |
createdOnOrAfter | No | Format - date-time (as date-time in RFC3339). Return items created on or after certain date/time (in UTC) | |
includeTotal | No | Whether total count should be returned | |
page | No | Format - int32. The logical number of page to return, starting from 1 | |
pageSize | No | Format - int32. How many records to return (50 by default) | |
relatedEntityId | No | Format - int64. Filters by related entity id | |
sort | No | Applies sorting by the specified field: "?sort=+FieldName" for ascending order, "?sort=-FieldName" for descending order. Available fields are: ID, ModifiedOn, CreatedOn. | |
tenant | Yes | Format - int64. Tenant ID | |
typeName | No | Relationship type name: Customer, Location, Booking | |
typeSlug | No | Relationship type slug: customer, location, booking |
Input Schema (JSON Schema)
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"contactId": {
"description": "Format - guid.",
"format": "uuid",
"type": "string"
},
"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)"
},
"includeTotal": {
"anyOf": [
{
"anyOf": [
{
"not": {}
},
{
"type": "boolean"
}
]
},
{
"type": "null"
}
],
"description": "Whether total count should be returned"
},
"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)"
},
"relatedEntityId": {
"anyOf": [
{
"anyOf": [
{
"not": {}
},
{
"type": "integer"
}
]
},
{
"type": "null"
}
],
"description": "Format - int64. Filters by related entity id"
},
"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, ModifiedOn, CreatedOn."
},
"tenant": {
"description": "Format - int64. Tenant ID",
"type": "integer"
},
"typeName": {
"anyOf": [
{
"anyOf": [
{
"not": {}
},
{
"type": "string"
}
]
},
{
"type": "null"
}
],
"description": "Relationship type name: Customer, Location, Booking"
},
"typeSlug": {
"anyOf": [
{
"anyOf": [
{
"not": {}
},
{
"type": "string"
}
]
},
{
"type": "null"
}
],
"description": "Relationship type slug: customer, location, booking"
}
},
"required": [
"contactId",
"tenant"
],
"type": "object"
}