invoices_getlist
Retrieve and filter invoices by IDs, dates, statuses, job details, or custom fields using ServiceTitan MCP Server. Supports pagination, sorting, and advanced querying for efficient invoice management.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| adjustmentToId | No | Format - int64. When searching for adjustment invoices, this field will search for invoices that are adjustments to the specified invoice ID. | |
| assignedToIds | No | AssignedTo IDs associated with invoices. | |
| balanceFilter.Balance | No | Format - decimal. | |
| balanceFilter.Comparer | No | Values: [Equals, NotEquals, Greater, Less] | |
| batchId | No | Format - int64. Batch ID associated with invoices. | |
| batchNumber | No | Format - int32. Batch number associated with invoices. | |
| businessUnitId | No | Format - int64. Business unit ID associated with invoices. | |
| 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) | |
| customField.Fields | No | Dictionary of name-value pairs | |
| customField.Operator | No | Operator to be used between the name-value pairs. Can be "Or" or "And", default is "And".\ Values: [And, Or] | |
| customerId | No | Format - int64. Customer ID associated with invoices. | |
| dueDateBefore | No | Format - date-time (as date-time in RFC3339). Retrieve all invoices with a due date before the input value | |
| dueDateOnOrAfter | No | Format - date-time (as date-time in RFC3339). Retrieve all invoices with a due date on after or equal the input value | |
| ids | No | Comma-delimited list of invoice IDs. | |
| includeTotal | No | Whether total count should be returned | |
| invoicedOnBefore | No | Format - date-time (as date-time in RFC3339). | |
| invoicedOnOrAfter | No | Format - date-time (as date-time in RFC3339). | |
| jobId | No | Format - int64. Job ID associated with invoices. This will be null if the invoice is not linked to a job. | |
| jobNumber | No | Job number associated with invoices. This will be null if the invoice is not linked to a job. | |
| modifiedBefore | No | Format - date-time (as date-time in RFC3339). Return items modified before certain date/time (in UTC) | |
| modifiedOnOrAfter | No | Format - date-time (as date-time in RFC3339). Return items modified on or after certain date/time (in UTC) | |
| number | No | Reference number associated with invoices. | |
| orderBy | No | Field on which you want to order the returned list of invoices. | |
| orderByDirection | No | Order direction of the retuned list of invoices. Values of "desc" or "descending" will order the list in descending order, otherwise the list will be ordered in ascending order. | |
| 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) | |
| reviewStatuses | No | Review statuses associated with invoices. | |
| sort | No | Applies sorting by the specified field: "?sort=+FieldName" for ascending order, "?sort=-FieldName" for descending order.' | |
| statuses | No | Transaction status, which can be one of: Pending, Posted, Exported. By default, all transaction statuses are included. If you want to filter by more than one status, add a new "statuses" query parameter for each status you want to include. For example: &statuses=Pending&statuses=Posted | |
| tenant | Yes | Format - int64. Tenant ID | |
| totalGreater | No | Format - decimal. Retrieve all invoices with a total greater than or equal to the input value. | |
| totalLess | No | Format - decimal. Retrieve all invoices with a total less than or equal to the input value. |
Input Schema (JSON Schema)
{
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"properties": {
"adjustmentToId": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Format - int64. When searching for adjustment invoices, this field will search for invoices that are adjustments to the specified invoice ID."
},
"assignedToIds": {
"anyOf": [
{
"items": {
"type": "integer"
},
"type": "array"
},
{
"type": "null"
}
],
"description": "AssignedTo IDs associated with invoices."
},
"balanceFilter.Balance": {
"description": "Format - decimal.",
"type": [
"number",
"null"
]
},
"balanceFilter.Comparer": {
"description": "Values: [Equals, NotEquals, Greater, Less]",
"type": [
"string",
"null"
]
},
"batchId": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Format - int64. Batch ID associated with invoices."
},
"batchNumber": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Format - int32. Batch number associated with invoices."
},
"businessUnitId": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Format - int64. Business unit ID associated with invoices."
},
"createdBefore": {
"description": "Format - date-time (as date-time in RFC3339). Return items created before certain date/time (in UTC)",
"type": [
"string",
"null"
]
},
"createdOnOrAfter": {
"description": "Format - date-time (as date-time in RFC3339). Return items created on or after certain date/time (in UTC)",
"type": [
"string",
"null"
]
},
"customField.Fields": {
"anyOf": [
{
"additionalProperties": {
"type": "string"
},
"type": "object"
},
{
"type": "null"
}
],
"description": "Dictionary of name-value pairs"
},
"customField.Operator": {
"description": "Operator to be used between the name-value pairs. Can be \"Or\" or \"And\", default is \"And\".\\\nValues: [And, Or]",
"type": [
"string",
"null"
]
},
"customerId": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Format - int64. Customer ID associated with invoices."
},
"dueDateBefore": {
"description": "Format - date-time (as date-time in RFC3339). Retrieve all invoices with a due date before the input value",
"type": [
"string",
"null"
]
},
"dueDateOnOrAfter": {
"description": "Format - date-time (as date-time in RFC3339). Retrieve all invoices with a due date on after or equal the input value",
"type": [
"string",
"null"
]
},
"ids": {
"description": "Comma-delimited list of invoice IDs.",
"type": [
"string",
"null"
]
},
"includeTotal": {
"description": "Whether total count should be returned",
"type": [
"boolean",
"null"
]
},
"invoicedOnBefore": {
"description": "Format - date-time (as date-time in RFC3339).",
"type": [
"string",
"null"
]
},
"invoicedOnOrAfter": {
"description": "Format - date-time (as date-time in RFC3339).",
"type": [
"string",
"null"
]
},
"jobId": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Format - int64. Job ID associated with invoices. This will be null if the invoice is not linked to a job."
},
"jobNumber": {
"description": "Job number associated with invoices. This will be null if the invoice is not linked to a job.",
"type": [
"string",
"null"
]
},
"modifiedBefore": {
"description": "Format - date-time (as date-time in RFC3339). Return items modified before certain date/time (in UTC)",
"type": [
"string",
"null"
]
},
"modifiedOnOrAfter": {
"description": "Format - date-time (as date-time in RFC3339). Return items modified on or after certain date/time (in UTC)",
"type": [
"string",
"null"
]
},
"number": {
"description": "Reference number associated with invoices.",
"type": [
"string",
"null"
]
},
"orderBy": {
"description": "Field on which you want to order the returned list of invoices.",
"type": [
"string",
"null"
]
},
"orderByDirection": {
"description": "Order direction of the retuned list of invoices. Values of \"desc\" or \"descending\" will order the list in descending order, otherwise the list will be ordered in ascending order.",
"type": [
"string",
"null"
]
},
"page": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Format - int32. The logical number of page to return, starting from 1"
},
"pageSize": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"description": "Format - int32. How many records to return (50 by default)"
},
"reviewStatuses": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"description": "Review statuses associated with invoices."
},
"sort": {
"description": "Applies sorting by the specified field:\n\"?sort=+FieldName\" for ascending order,\n\"?sort=-FieldName\" for descending order.'",
"type": [
"string",
"null"
]
},
"statuses": {
"anyOf": [
{
"items": {
"type": "string"
},
"type": "array"
},
{
"type": "null"
}
],
"description": "Transaction status, which can be one of: Pending, Posted, Exported.\nBy default, all transaction statuses are included. If you want to filter by more\nthan one status, add a new \"statuses\" query parameter for each status you want to include.\nFor example: &statuses=Pending&statuses=Posted"
},
"tenant": {
"description": "Format - int64. Tenant ID",
"type": "integer"
},
"totalGreater": {
"description": "Format - decimal. Retrieve all invoices with a total greater than or equal to the input value.",
"type": [
"number",
"null"
]
},
"totalLess": {
"description": "Format - decimal. Retrieve all invoices with a total less than or equal to the input value.",
"type": [
"number",
"null"
]
}
},
"required": [
"tenant"
],
"type": "object"
}