openapi: 3.2.0
info:
version: '3'
title: ServiceChannel API - v.3 Work Orders API
description: The ServiceChannel API is a RESTful and stateless API.
servers:
- url: https://sb2api.servicechannel.com/v3
security:
- oauth2: []
tags:
- name: Work Orders
paths:
/workorders:
get:
tags:
- Work Orders
summary: Search Work Orders
description: 'Performs search of workorders by specified filter expression and returns list of work orders with all details.
One page contains 50 items by default ("pageSize"=50). To get next 50 items use the "page" parameter (for example page=2 and so on).'
operationId: GETv3_workorders?locationId={locationId}&storeId={storeId}
parameters:
- name: locationId
in: query
description: UID of location.
required: false
schema:
type: integer
format: int32
- name: storeId
in: query
description: StoreId of location. Used to find location for which search will be performed. Applicable to subscribers only.
required: false
schema:
type: string
- name: otherLocationId
in: query
description: UID of location, exact search by default
required: false
schema:
type: array
items: {}
- name: id
in: query
description: UID of work order, exact search by default
required: false
schema:
type: array
items: {}
- name: category
in: query
description: Category of work order, exact search by default
required: false
schema:
type: array
items: {}
- name: categoryId
in: query
description: CategoryId, ID of categories to return work orders for
required: false
schema:
type: array
items: {}
- name: status
in: query
description: Status of work order, exact search by default
required: false
schema:
type: array
items: {}
- name: extendedStatus
in: query
description: Extended status of work order, exact search by default
required: false
schema:
type: array
items: {}
- name: number
in: query
description: Work order number, 'starts with' search criteria by default
required: false
schema:
type: array
items: {}
- name: serviceId
in: query
description: '''starts with'' search criteria by default'
required: false
schema:
type: array
items: {}
- name: priority
in: query
description: Priority of work order, exact search by default
required: false
schema:
type: array
items: {}
- name: purchaseNumber
in: query
description: Purchase number of work order, 'starts with' search criteria by default
required: false
schema:
type: array
items: {}
- name: trade
in: query
description: Trade, 'starts with' search criteria by default
required: false
schema:
type: array
items: {}
- name: tradeId
in: query
description: TradeId, ID of trades to return work orders for
required: false
schema:
type: array
items: {}
- name: scheduledDate
in: query
description: Scheduled date
required: false
schema:
type: array
items: {}
- name: expirationDate
in: query
description: Expiration date
required: false
schema:
type: array
items: {}
- name: callDate
in: query
description: Call date
required: false
schema:
type: array
items: {}
- name: sort
in: query
description: Sort resources by the specified property in the response.
required: false
schema:
type: string
- name: page
in: query
description: Results page number.
required: false
schema:
type: integer
format: int32
- name: pageSize
in: query
description: Number of objects on the results page. The default and maximum per page is 50.
required: false
schema:
type: integer
format: int32
responses:
'200':
description: Request succeeded and the requested information is in the response.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.WorkOrder'
text/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.WorkOrder'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
403 - Account has not been activated for GPS use;\n
503 - Validation fails. Request is empty or null;\n
601 - Location Id is invalid;\n
606 - Cannot find location by StoreId;\n
1000 - Invalid Setup Id;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions; "
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: "Indicates that a generic error has occurred on the server.\n
Error codes:\n
501 - Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding."
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
post:
tags:
- Work Orders
summary: Create a Work order
description: 'Creates a new Work order. Returns Work order Id for successful request.
Available for provider and subscriber usage.
Additional info:
Updates GL code based on passed Category param according to settings in Admin module {go to Admin => Accounting => GlCodes to see user GL codes}.
Similar logic is used when you create Work order through next path: Dashboard => Request Service.'
operationId: POSTv3_workorders
responses:
'201':
description: Created indicates that the request resulted in a new resource created before the response was sent.
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
100 - No provider was found for specified location and trade;\n
300 - Missed contract data;\n
301 - Contract not found for specified subscribers location, provider and trade;\n
400 - Invalid Subscriber Id specified;\n
503 - Work order cannot be created, provider could not be determined (missing providerID or IssueRequestInfo);\n
600 - Invalid Location Id specified;\n
603 - Subscriber has no specified Location;\n
700 - Invalid Trade Name specified;\n
702 - Subscriber has no specified Trade;\n
800 - Missed required argument 'UserId';\n
801 - Missed required argument 'CreatedBy';\n
900 - Missed problem description options;\n
901 - Missed required argument 'ProblemSource';\n
902 - Missed required argument 'Description';\n
903 - Missed required argument 'ProblemCode';\n
904 - Invalid WorkOrder status;\n
905 - Invalid 'Nte' value;\n
906 - Invalid 'CallerName' value;\n
907 - Invalid 'CallDate' value;\n
908 - Invalid 'ScheduledDate' value;\n
909 - Invalid 'ScheduledDate', greater than max allowed by subscriber;\n
910 - Missed required argument 'Category';\n
911 - Invalid 'Category';\n
912 - Missed required argument 'Priority';\n
913 - Invalid 'Priority';\n
914 - Invalid 'Currency' value;\n
915 - Invalid Setup Id;\n
916 - At least one attachment required to create this WorkOrder;\n
918 - Assets required to create this WorkOrder;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: "Indicates that a generic error has occurred on the server.\n
Error codes:\n
501 - Sequence contains no elements"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.CreateWoRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.CreateWoRequest'
description: A new Work order
required: true
/workorders/{workorderId}/status:
put:
tags:
- Work Orders
summary: Update a Work order Status
description: 'Updates Work Order status with optional Note. Returns Work order Id for successful request.
This method can only be used for users with ''WorkOrderStatusChange'' permissions.
Available for provider and subscriber usage.'
operationId: PUTv3_workorders_{workorderId}_status
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderStatusResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderStatusResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
100 - You don't have location access to perform this operation;\n
User has no permissions to perform this action;\n
502 - WorkOrder not found;\n
503 - Request data is empty; User data not found;\n
904 - Invalid WorkOrder status;\n
User has no permission to set selected status;\n
921 - Cannot update invoiced Work order;\n
9001 - Decline reason id is required;\n
9002 - This decline reason doesn't allow custom text"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: Indicates that a generic error has occurred on the server.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoStatusRequestExt'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoStatusRequestExt'
description: The update request. Work order Status.
required: true
/workorders/{workorderId}/priority:
put:
tags:
- Work Orders
summary: Update Work order Priority
description: 'Updates Work Order priority. Returns Work order Id for successful request.
This method can only be used for users with ''WorkOrderFullEdit'' permissions.'
operationId: PUTv3_workorders_{workorderId}_priority
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
100 - You don't have location access to perform this operation;\n
502 - Data not found. Returned if target Work order is not found database;\n
503 - Request data is empty;\n
913 - Priority isn't found in user settings;\n
Priority length cannot be longer then 100 or shorter then 1 characters;\n
921 - Cannot update invoiced Work order;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: Indicates that a generic error has occurred on the server.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoFieldsRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoFieldsRequest'
description: The update request. Work order Priority.
required: true
/workorders/{workorderId}/category:
put:
tags:
- Work Orders
summary: Update the work order category
description: 'Updates the category of the specified work order (WO) with the passed value. Note that you cannot update the category of an invoiced service request.
If the WO category does not have a GL code mapping with the WO trade, you will get an error message listing valid categories for this trade based on existing GL codes. You can retrieve valid categories for a specific trade by sending the GET /categories/glcodes request.
***Note:*** Only users who have permission to edit work orders can use this method.
**Example Request**
PUT /workorders/{workorderId}/category
{
"Value": "Repair",
"Actor": "James Smith",
"Id": 12345
}'
operationId: PUTv3_workorders_{workorderId}_category
parameters:
- name: workorderId
in: path
description: Unique numeric identifier of the work order you want to update the category for.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: The category of the specified work order is updated, and the unique work order ID is returned in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
'400':
description: "The request is not accepted due to bad syntax, missing parameters, insufficient data, etc.\n
Error codes:\n 100 — User has no rights to perform this action\n 502 — Work order is not found\n 921 — Cannot update invoiced work order"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "The request is not authorized.\n
Error codes:\n 504 — API call rejected by security permissions"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: The server was unable to complete the request due to an internal error.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoCategoryRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoCategoryRequest'
description: Request to update the work order category.
required: true
/workorders/{workorderId}/nte:
put:
tags:
- Work Orders
summary: Update Work order NTE
description: 'Updates Work Order NTE. Returns Work order Id for successful request.
This method can only be used for users with ''WorkOrderFullEdit'' permissions.'
operationId: PUTv3_workorders_{workorderId}_nte
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n \t
Error codes:\n \t
100 - You don't have location access to perform this operation;\n \t
502 - Data not found. Returned if target Work order is not found database;\n \t
503 - Request data is empty;\n \t
905 - Invalid Work order NTE specified. Returned if nte exceeds user limit or its value is not a number;\n \t
921 - Cannot update invoiced Work order;\n \t
931 - NTE cannot be adjusted, please use subtotal and tax;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: Indicates that a generic error has occurred on the server.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoNteRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoNteRequest'
description: The update request. Work order NTE.
required: true
/workorders/{workOrderId}/projectApproval:
put:
tags:
- Work Orders
summary: Update Work orders NTE project approval
description: 'Update Work orders NTE project approval. Returns successfully updated id.
This method can only be used for users with ''WorkOrderFullEdit'' permissions.'
operationId: PUTv3_workorders_{workOrderId}_projectApproval
parameters:
- name: workOrderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n \t
Error codes:\n \t
100 - You don't have location access to perform this operation;\n \t
502 - Data not found. Returned if target Work order is not found database;\n \t
503 - Request data is empty;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: Indicates that a generic error has occurred on the server.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.UpdateWorkOrdersProjectApprovalRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.UpdateWorkOrdersProjectApprovalRequest'
description: The update request. Work orders NTE/Link project approval.
required: true
post:
tags:
- Work Orders
summary: Create Work orders project approval
description: 'Create Work orders project approval. Returns successfully updated id.
This method can only be used for users with ''WorkOrderFullEdit'' permissions.'
operationId: POSTv3_workorders_{workOrderId}_projectApproval
parameters:
- name: workOrderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n \t
Error codes:\n \t
100 - You don't have location access to perform this operation;\n \t
502 - Data not found. Returned if target Work order is not found database;\n \t
503 - Request data is empty;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: Indicates that a generic error has occurred on the server.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.CreateWorkOrdersProjectApprovalRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.CreateWorkOrdersProjectApprovalRequest'
description: The create request. Work orders project approval.
required: true
/workorders/{workorderId}/scheduledate:
put:
tags:
- Work Orders
summary: Update Work order Scheduled Date
description: 'Updates Work Order Scheduled Date. Returns Work order Id for successful request.
Available for provider and subscriber usage.
This method can only be used for users with ''WorkOrderScheduledDateChange'' permissions.'
operationId: PUTv3_workorders_{workorderId}_scheduledate?rescheduleReasonCode={rescheduleReasonCode}
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
- name: rescheduleReasonCode
in: query
description: Numeric reschedule reason code. Optional.
required: false
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
100 - You don't have location access to perform this operation;\n
502 - Data not found. Returned if target Work order is not found database;\n
503 - Request data is empty;\n
908 - Invalid Work order scheduled date specified. Returned if invalid date format was specified,\n scheduled date is smaller then Work order CallDate or bigger then Work order ExpirationDate;\n
921 - Cannot update invoiced Work order;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: Indicates that a generic error has occurred on the server.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoFieldsRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoFieldsRequest'
description: The update request. Work order Scheduled Date.
required: true
/workorders/{workorderId}/description:
put:
tags:
- Work Orders
summary: Update Work order Description
description: 'Updates Work Order Description. Returns Work order Id for successful request.
This method can only be used for users with ''WorkOrderFullEdit'' permissions.'
operationId: PUTv3_workorders_{workorderId}_description
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
100 - You don't have location access to perform this operation;\n
502 - Data not found. Returned if target Work order is not found database;\n
503 - Request data is empty;\n
902 - Invalid Work order Problem Description specified. Returned if description exceeds max len (8000 chars) or is empty;\n
921 - Cannot update invoiced Work order;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: Indicates that a generic error has occurred on the server.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoFieldsRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoFieldsRequest'
description: The update request. Work order Description.
required: true
/workorders/{workorderId}/trade:
put:
tags:
- Work Orders
summary: Change Work order Trade
operationId: PUTv3_workorders_{workorderId}_trade
parameters:
- name: workorderId
in: path
description: ''
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
100 - You don't have location access to perform this operation;\n
502 - Data not found. Returned if target Work order is not found database;\n
503 - Request data is empty;\n
921 - Cannot update invoiced Work order;\n
934 - Invalid Work order Trade specified. Returned if trade exceeds max len (50 chars) or is empty"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: Indicates that a generic error has occurred on the server.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoFieldsRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoFieldsRequest'
required: true
/workorders/{workorderId}/resolution:
post:
tags:
- Work Orders
summary: Add Work order Resolution
description: Adds Resolution to Work order. Returns Resolution Id for successful request.
operationId: POSTv3_workorders_{workorderId}_resolution
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
responses:
'201':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.UpdateWorkOrderResolutionResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.UpdateWorkOrderResolutionResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
100 - User has no permissions to perform this action;\n
502 - Work order is not found;\n
503 - Request data is empty;\n
904 - Work Order is in status that not allow to perform this action;\n
933 - Workorder is on hold, no actions allowed;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: Indicates that a generic error has occurred on the server.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.UpdateWorkOrderResolutionRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.UpdateWorkOrderResolutionRequest'
description: The update request. Work order Resolution.
required: true
/workorders/{workorderId}/caller:
put:
tags:
- Work Orders
summary: Update Work order Caller
description: 'Updates Work order Caller. Returns Work order Id for successful request.
This method can only be used for users with ''WorkOrderFullEdit'' permissions.'
operationId: PUTv3_workorders_{workorderId}_caller
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
100 - You don't have location access to perform this operation;\n
502 - Data not found. Returned if target Work order is not found database;\n
503 - Request data is empty;\n
906 - Invalid Work order Caller Name specified. Returned if Caller Name exceeds max len (100 chars) or is empty;\n
921 - Cannot update invoiced Work order;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: Indicates that a generic error has occurred on the server.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoFieldsRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoFieldsRequest'
description: The update request. Work order Caller.
required: true
/workorders/{workorderId}/ponumber:
put:
tags:
- Work Orders
summary: Update Work order Purchase Number
description: 'Updates Work order Purchase Number. Returns Work order Id for successful request.
This method can only be used for users with ''WorkOrderFullEdit'' permissions.'
operationId: PUTv3_workorders_{workorderId}_ponumber
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
100 - You don't have location access to perform this operation;\n
502 - Data not found. Returned if target Work order is not found database;\n
503 - Request data is empty;\n
920 - Invalid Work order purchase number specified. Returned if duplicate PO number is found for this subscriber or if value exceeds max len (20 chars);\n
921 - Cannot update invoiced Work order;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: Indicates that a generic error has occurred on the server.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoFieldsRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoFieldsRequest'
description: The update request. Work order Purchase Number.
required: true
/workorders/{workOrderId}/projectedCompletionDate:
put:
tags:
- Work Orders
summary: Update Work Order Projected Completion Date
description: 'Updates Work Order Projected Completion Date. Returns Work order Id for successful request.
Available for provider and subscriber usage.
This method can only be used for work orders of subscribers that have "ShowEstimatedCompletionDate" and "ShowEstimatedCompletionDate2_0" and "ShowEstimatedCompletionDate3_0" features enabled.'
operationId: PUTv3_workorders_{workOrderId}_projectedCompletionDate
parameters:
- name: workOrderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.UpdateWorkOrderProjectedCompletionDateResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.UpdateWorkOrderProjectedCompletionDateResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
100 - User has no rights to perform this action;\n
502 - Data not found. Returned if target Work order is not found database;\n
503 - Request is invalid;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: Indicates that a generic error has occurred on the server.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.WorkOrder.UpdateWorkOrderProjectedCompletionDateRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.WorkOrder.UpdateWorkOrderProjectedCompletionDateRequest'
description: The update request. Work order Projected Completion Date.
required: true
/workorders/{workorderId}/wonumber:
put:
tags:
- Work Orders
summary: Update Work order Number
description: 'Updates Work order Number.
This method can only be used for users with ''WorkOrderFullEdit'' permissions.'
operationId: PUTv3_workorders_{workorderId}_wonumber
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
100 - You don't have location access to perform this operation;\n
502 - Data not found. Returned if target Work order is not found database;\n
503 - Request data is empty;\n
923 - Invalid Work order number specified. Returned if duplicate number is found for this provider or if value exceeds max len (20 chars);\n
921 - Cannot update invoiced Work order;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: Indicates that a generic error has occurred on the server.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoFieldsRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoFieldsRequest'
description: The update request. Work order Number.
required: true
/workorders/{workorderId}/projectid:
put:
tags:
- Work Orders
summary: Update ProjectId
description: Updates ProjectId.
operationId: PUTv3_workorders_{workorderId}_projectid
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
100 - You don't have location access to perform this operation;\n
502 - Data not found. Returned if target Work order is not found database;\n
503 - Request data is empty;\n
923 - Invalid Work order number specified. Returned if duplicate number is found for this provider or if value exceeds max len (20 chars);\n
921 - Cannot update invoiced Work order;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: Indicates that a generic error has occurred on the server.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoProjectIdRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoProjectIdRequest'
description: The update request. ProjectId.
required: true
/workorders/{workorderId}/projectid/unlink:
put:
tags:
- Work Orders
summary: Unlink ProjectId
description: Unlink ProjectId.
operationId: PUTv3_workorders_{workorderId}_projectid_unlink
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
100 - You don't have location access to perform this operation;\n
502 - Data not found. Returned if target Work order is not found database;\n
503 - Request data is empty;\n
923 - Invalid Work order number specified. Returned if duplicate number is found for this provider or if value exceeds max len (20 chars);\n
921 - Cannot update invoiced Work order;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: Indicates that a generic error has occurred on the server.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
/workorders/{workorderId}/weatherTypeId:
put:
tags:
- Work Orders
summary: Update weather type
description: 'Updates weather type.
This method can only be used for users with ''WorkOrderFullEdit'' permissions.'
operationId: PUTv3_workorders_{workorderId}_weatherTypeId?subscriberId={subscriberId}
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
- name: subscriberId
in: query
description: The subscriber Id to use (if logged in as a provider).
required: false
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
100 - You don't have location access to perform this operation;\n
502 - Data not found. Returned if target Work order is not found database;\n
503 - Request data is empty;\n
923 - Invalid Work order number specified. Returned if duplicate number is found for this provider or if value exceeds max len (20 chars);\n
921 - Cannot update invoiced Work order;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: Indicates that a generic error has occurred on the server.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoWeatherTypeIdRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoWeatherTypeIdRequest'
description: The update request. WeatherTypeId (put Value as empty to remove weather type).
required: true
/workorders/{workorderId}/issueChoice:
put:
tags:
- Work Orders
summary: Update issue choice on WO
operationId: PUTv3_workorders_{workorderId}_issueChoice?subscriberId={subscriberId}&locationId={locationId}
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
- name: subscriberId
in: query
description: The subscriber Id to use (if logged in as a provider).
required: true
schema:
type: integer
format: int32
- name: locationId
in: query
description: UID of location
required: false
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded.
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.
Error codes:
\n 503 - Validation fails;
\n 1000 - Invalid setupId(dashboard) for current user;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: Indicates that a generic error has occurred on the server.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.IssueChoiceRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.IssueChoiceRequest'
description: The request to perform action with.
required: true
/workorders/{workorderId}/reassign:
put:
tags:
- Work Orders
summary: Reassign Work Order
description: 'Reassign Work Order to another provider. Returns Work order Id for successful request.
Available for provider and subscriber usage.'
operationId: PUTv3_workorders_{workorderId}_reassign
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
1301 - Request data is empty;\n
101 - Invalid Provider Id;\n
Provider not found for selected trade and location;\n
503 - Invalid Work order reassignment reason;\n
Request data is empty;\n
Required provider id not found;
Work order could not be reassigned. Only 'OPEN' and 'IN PROGRESS' statuses allowed;\n
Provider or trade should be changed;\n
Reassignment is blocked for work orders containing parts or materials;\n
905 - Invalid 'Nte' value;\n
Nte value exceeds user limit;\n
921 - Cannot update invoiced Work order;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'403':
description: "Indicates that the server refuses to fulfill the request.\n
Error codes:\n
804 - API call rejected by lack of provider permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.WorkOrder.ReassignWorkOrder.ReassignWorkOrderRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.WorkOrder.ReassignWorkOrder.ReassignWorkOrderRequest'
description: The request to perform action with.
required: true
/workorders/reassign/reasons:
get:
tags:
- Work Orders
summary: Work order reassignment reasons
description: 'List Work order reassignment reasons.
Available for provider and subscriber usage.
SubscriberId is used to determine provider access to the action (''WorkOrderReassign'' EffectiveProviderPermissions, calculated flag. Calculated by ProviderAuthorizationHandler)'
operationId: GETv3_workorders_reassign_reasons?subscriberId={subscriberId}
parameters:
- name: subscriberId
in: query
description: This parameter is required only for provider.
required: false
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrderReassignmentReason'
text/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrderReassignmentReason'
'400':
description: Bad Request - the request could not be understood or was missing required parameters.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'403':
description: "Indicates that the server refuses to fulfill the request.\n
Error codes:\n
804 - API call rejected by lack of provider permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
/workorders/{workorderId}:
get:
tags:
- Work Orders
summary: Retrieve a Work order
description: A single Work order object with all its details.
operationId: GETv3_workorders_{workorderId}
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrder'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrder'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
503 - Request data is empty;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'404':
description: Indicates that the requested resource does not exist on the server.
deprecated: false
x-access: Any
/workorders/issueinfo/{workorderId}:
get:
tags:
- Work Orders
summary: Retrieve a Work order related information
description: A single issue info.
operationId: GETv3_workorders_issueinfo_{workorderId}
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.IssueLists.IssueTicketInformation'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.IssueLists.IssueTicketInformation'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
503 - Request data is empty;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'404':
description: Indicates that the requested resource does not exist on the server.
deprecated: false
x-access: Any
/workorders/{workorderId}/validateCheckIn:
get:
tags:
- Work Orders
summary: Validate Check-In action
operationId: GETv3_workorders_{workorderId}_validateCheckIn?WorkTypeId={WorkTypeId}&Latitude={Latitude}&Longitude={Longitude}
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
- name: workTypeId
in: query
description: "Optional, type work Id. 1 - 'Repair', 2 - 'Travel'\n Default value is 1 ('Repair'). Supports custom types."
required: false
schema:
type: integer
format: int32
- name: latitude
in: query
description: Global position. Latitude
required: true
schema:
type: number
format: double
- name: longitude
in: query
description: Global position. Longitude
required: true
schema:
type: number
format: double
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.CheckInOut.CheckInValidateResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.CheckInOut.CheckInValidateResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
502 - WorkOrder not found;\n
503 - Request data is empty;\n
Provide your location to perform checkin/checkout;\n
917 - Invalid Tracking Number;\n
921 - Cannot update work order in 'completed' status;\n
Cannot update invoiced work order;\n
924 - Work order has been invoiced and cannot be changed;\n
941 - Can't do check in: out of ... mile range;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'405':
description: Indicates that the request method is not allowed on the requested resource.
deprecated: false
x-access: Any
/workorders/{workorderId}/validateCheckOut:
get:
tags:
- Work Orders
summary: Validate Check-Out action
operationId: GETv3_workorders_{workorderId}_validateCheckOut?WorkTypeId={WorkTypeId}&Latitude={Latitude}&Longitude={Longitude}
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
- name: workTypeId
in: query
description: "Optional, type work Id. 1 - 'Repair', 2 - 'Travel'\n Default value is 1 ('Repair'). Supports custom types."
required: false
schema:
type: integer
format: int32
- name: latitude
in: query
description: Global position. Latitude
required: true
schema:
type: number
format: double
- name: longitude
in: query
description: Global position. Longitude
required: true
schema:
type: number
format: double
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.CheckInOut.CheckInValidateResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.CheckInOut.CheckInValidateResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
502 - WorkOrder not found;\n
503 - Request data is empty;\n
Provide your location to perform checkin/checkout;\n
917 - Invalid Tracking Number;\n
921 - Cannot update work order in 'completed' status;\n
Cannot update invoiced work order;\n
924 - Work order has been invoiced and cannot be changed;\n
941 - Can't do check out: out of ... mile range;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'405':
description: Indicates that the request method is not allowed on the requested resource.
deprecated: false
x-access: Any
/workorders/{workorderId}/universalCheckIn:
post:
tags:
- Work Orders
summary: Perform a check-in
description: 'Creates a check-in record of the indicated work type: travel, repair, or custom. Returns `MechanicId` for a successful request.
See the Check-In/Out guide for code snippets and detailed instructions.
***Note:*** Special permission is required for the Travel and Repair work types.
**Example Request**
POST /workorders/{workorderId}/universalCheckIn
{
"WorkTypeId": 1,
"UserId": 1544987,
"TechsCount": 2,
"Latitude": 40.736618,
"Longitude": -73.991806,
"CheckInTime": "2018-10-23T08:30:00Z"
}'
operationId: POSTv3_workorders_{workorderId}_universalCheckIn
parameters:
- name: workorderId
in: path
description: The unique ID of the work order for which you want to report a check-in.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: The check-in record is created.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.CheckInOut.CheckInOutResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.CheckInOut.CheckInOutResponse'
'400':
description: "The request is not accepted due to bad syntax, missing parameters, insufficient data, etc.\n
Error codes:\n 502 - Work order not found\n 503 - Required data missing or incorrect\n 503 - Provide your location to perform check-in or check-out\n 503 - Work type not found\n 503 - Check-in or check-out premature\n 503 - Check-in or check-out time should be close to current location time\n 503 - Check-in or check-out out of date\n 804 - User has no permission to perform this action\n 917 - Invalid WO tracking number\n 921 - Cannot update work order in one of the completed statuses\n 924 - Work order has been invoiced and cannot be changed\n 924 - No changes can be made to this maintenance work order because it is expired or premature\n 924 - Cannot check in/out of work order in … status\n 924 - Client not participating in GPS check-in process; use IVR\n 924 - Store has no GPS coordinates\n 941 - Can’t perform check-in or check-out: out of ... mile range"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "The request is not authorized.\n
Error codes:\n 504 - Missing or incorrect authentication credentials"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'405':
description: The method is not allowed.
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.CheckInRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.CheckInRequest'
description: The check-in object that needs to be created.
required: true
/workorders/{workorderId}/universalCheckOut:
post:
tags:
- Work Orders
summary: Perform a check-out
description: 'Creates a check-out record of the indicated work type: travel, repair, or custom. Returns `MechanicId` for a successful request.
See the Check-In/Out guide for code snippets and detailed instructions.
***Note:*** Special permission is required for the Travel and Repair work types.
**Example Request**
POST /workorders/{workorderId}/universalCheckOut
{
"WorkTypeId": 1,
"PrimaryStatus": "InProgress",
"ExtendedStatus": "string",
"ActionStatus": "Complete",
"Resolution": "We need more time to complete this job.",
"UserId": 1544987,
"Latitude": 40.736618,
"Longitude": -73.991806,
"CheckOutTime": "2018-10-23T09:30:00Z"
}'
operationId: POSTv3_workorders_{workorderId}_universalCheckOut
parameters:
- name: workorderId
in: path
description: The unique ID of the work order for which you want to report a check-out.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: The check-out record is created.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.CheckInOut.CheckInOutResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.CheckInOut.CheckInOutResponse'
'400':
description: "The request is not accepted due to bad syntax, missing parameters, insufficient data, etc.\n
Error codes:\n 502 - Work order not found\n 503 - Required data missing or incorrect\n 503 - Provide your location to perform check-in or check-out\n 503 - User has not checked in\n 503 - Work type not found\n 503 - Check-in or check-out premature\n 503 - Check-in or check-out time should be close to current location time\n 503 - Check-in or check-out out of date\n 503 - Invalid SignatureAttachmentId\n 503 - Invalid UnableObtainSignatureNoteId\n 503 - You can set either SignatureAttachmentId or UnableObtainSignatureNoteId but not both\n 503 - No access to electronic signatures\n 804 - User has no permission to perform this action\n 904 - User does not have … extended status that belongs to … primary status\n 917 - Invalid WO tracking number\n 921 - Cannot update work order in one of the completed statuses\n 925 - Work order has been invoiced and cannot be changed\n 925 - No changes can be made to this maintenance work order because it is expired or premature\n 925 - Cannot check in/out of work order in … status\n 925 - Client not participating in GPS check-in process; use IVR\n 925 - Store has no GPS coordinates\n 942 - Can’t perform check-in or check-out: out of ... mile range"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "The request is not authorized.\n
Error codes:\n 504 - Missing or incorrect authentication credentials"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'405':
description: The method is not allowed.
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.CheckOutRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.CheckOutRequest'
description: The check-out object that needs to be created.
required: true
/workorders/{workOrderId}/checklists-responses:
get:
tags:
- Work Orders
summary: Get checklist responses for a work order
description: Returns checklist responses submitted for the specified work order.
operationId: GETv3_workorders_{workOrderId}_checklists-responses?getAll={getAll}
parameters:
- name: workOrderId
in: path
description: Unique identifier of the work order to return checklist responses for.
required: true
schema:
type: integer
format: int32
- name: getAll
in: query
description: Flag to get responses from all completed checklists.
required: false
schema:
type: boolean
default: false
responses:
'200':
description: Checklist responses for the specified work order are returned.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Checklists.ChecklistResponses.GetResponsesByWorkOrderResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Checklists.ChecklistResponses.GetResponsesByWorkOrderResponse'
'400':
description: "The request is not accepted due to bad syntax, missing parameters, insufficient data, etc.\n
Error codes:\n 502 — Work order is not found"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "The request is not authorized.\n
Error codes:\n 504 — API call rejected by security permissions"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: The server was unable to complete the request due to an internal error.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
/odata/workorders/filter:
post:
tags:
- Work Orders
summary: Retrieve work orders
description: 'Returns a list of work orders created within the last 90 days if not specified otherwise in `$filter`. The maximum date range between the work order `CallDate` and the current date is 365 days.
The default number of work orders in the response is 50. To retrieve more work orders, use the `$skip` parameter.
***Note***: You can also get a list of work orders by using one of the following methods: GET /odata/workorders, GET /workorders.'
operationId: POSTv3_odata_workorders_filter
responses:
'200':
description: The list of work orders is in the response.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrder'
text/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrder'
'401':
description: "The request is not authorized.\n
Error codes:\n 504 — API call rejected by security permissions"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'406':
description: The request is already processed.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: "The server was unable to complete the request due to an internal error.\n
Error codes:\n 501 — Object reference is not set to an instance of an object"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ODataRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ODataRequest'
required: true
/workorders/statistics:
get:
tags:
- Work Orders
summary: Statistics Collection
description: Retrieves list of all Work order Statistics. Only for providers usage.
operationId: GETv3_workorders_statistics?daysPeriod={daysPeriod}
parameters:
- name: daysPeriod
in: query
description: Days Period to perform action with (30 by default).
required: false
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrderStatisticsResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrderStatisticsResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
503 - Only for providers usage;
Request data is empty;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
/workorders/categories:
get:
tags:
- Work Orders
summary: Categories Collection
description: Retrieves list of all Work order categories.
operationId: GETv3_workorders_categories?SubscriberId={SubscriberId}&SortExpr={SortExpr}
parameters:
- name: subscriberId
in: query
description: This parameter is required only for provider.
required: false
schema:
type: integer
format: int32
- name: sortExpr
in: query
description: Gets or sets sort expression.
required: false
schema:
type: string
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Category.CategoryResponse'
text/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Category.CategoryResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
503 - Request data is empty;\n
SubscriberId is incorrect;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
/workorders/statuses:
get:
tags:
- Work Orders
summary: Get work order statuses
description: 'Returns available work order statuses for the specified subscriber.
Use the returned ID value as an alternative to the primary status name when updating a status via the PUT/workorders/{workorderId}/status method.'
operationId: GETv3_workorders_statuses?subscriberId={subscriberId}&tradeId={tradeId}
parameters:
- name: subscriberId
in: query
description: Unique numeric identifier of the subscriber. This parameter is required only for providers.
required: false
schema:
type: integer
format: int32
- name: tradeId
in: query
description: "Numeric identifier of the trade. Works only if the *LimitStatusesByTrade* FF is on. It returns extended statuses that are available for the specified trade. Entering the `tradeId` will show which statuses are available based on the **Excluded Trades** setting in Admin.\n
To get a trade ID, run the [GET/trades/GetExistsTrades](https://developer.servicechannel.com/swagger/index.html#/Trades/GETv3_trades_GetExistsTrades) method."
required: false
schema:
type: integer
format: int32
responses:
'200':
description: The request succeeded, and the requested information is in response.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.GetStatusResponse'
text/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.GetStatusResponse'
'400':
description: The request was not accepted due to bad syntax, missing parameters, insufficient data, etc.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "The requested resource requires authentication.\n
Error codes:\n 504 — API call rejected by security permissions"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
/workorders/{workorderId}/statuses:
get:
tags:
- Work Orders
summary: Get work order statuses that relate to a specific work order
description: 'Returns work order statuses based on the user role and Admin permissions.
Use the returned ID value as an alternative to the primary status name when updating a status via the PUT/workorders/{workorderId}/status method.'
operationId: GETv3_workorders_{workorderId}_statuses?subscriberId={subscriberId}&tradeId={tradeId}
parameters:
- name: workorderId
in: path
description: Numeric identifier of a work order to retrieve statuses for.
required: true
schema:
type: integer
format: int32
- name: subscriberId
in: query
description: Unique numeric identifier of the subscriber. This parameter is required only for providers.
required: false
schema:
type: integer
format: int32
- name: tradeId
in: query
description: "Numeric identifier of the trade. Works only if the *LimitStatusesByTrade* FF is on. It returns extended statuses that are available for the specified trade. Entering the `tradeId` will show which statuses are available based on the **Excluded Trades** setting in Admin.\n
To get a trade ID, run the [GET/trades/GetExistsTrades](https://developer.servicechannel.com/swagger/index.html#/Trades/GETv3_trades_GetExistsTrades) method."
required: false
schema:
type: integer
format: int32
responses:
'200':
description: The request succeeded, and the requested information is in response.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.GetStatusResponse'
text/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.GetStatusResponse'
'400':
description: "The request was not accepted due to bad syntax, missing parameters, insufficient data, etc.\n
Error codes:\n 502 — Work order is not found"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "The requested resource requires authentication.\n
Error codes:\n 504 — API call rejected by security permissions"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
/workorders/starred:
get:
tags:
- Work Orders
summary: Starred Work Order Ids Collection
description: Retrieves list of work order ids starred by the current user.
operationId: GETv3_workorders_starred
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
type: array
items:
format: int32
type: integer
text/json:
schema:
type: array
items:
format: int32
type: integer
'400':
description: Bad Request - the request could not be understood or was missing required parameters.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
/workorders/label:
get:
tags:
- Work Orders
summary: Get work order labels
description: Returns a list of labels which are used on work orders. The response body contains label names, label IDs, and the total number of labels.
operationId: GETv3_workorders_label?keyword={keyword}&page={page}&pageSize={pageSize}
parameters:
- name: keyword
in: query
description: Keyword contained in labels.
required: false
schema:
type: string
- name: page
in: query
description: Results page number. Page numbering starts from 1.
required: false
schema:
type: integer
format: int32
- name: pageSize
in: query
description: Number of labels on the results page.
required: false
schema:
type: integer
format: int32
responses:
'200':
description: The list of labels is in the response.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.GetWorkOrderLabelResponse'
text/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.GetWorkOrderLabelResponse'
'400':
description: The request was not accepted due to bad syntax, missing parameters, insufficient data, etc.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "The request is not authorized. \n
Error codes:\n 504 — API call rejected by security permissions"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
/workorders/{workorderId}/label:
put:
tags:
- Work Orders
summary: Update a work order label
description: 'Adds a label to the specified work order.
***Note***: If the work order already has a label, this method will replace the label with a new one.'
operationId: PUTv3_workorders_{workorderId}_label
parameters:
- name: workorderId
in: path
description: Unique numeric identifier of the work order
required: true
schema:
type: integer
format: int32
responses:
'200':
description: The request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.UpdateLabelResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.UpdateLabelResponse'
'400':
description: "The request was not accepted due to bad syntax, missing parameters, insufficient data, etc.\n
Error codes:\n 502 — Work order label is not found"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "The request is not authorized.\n
Error codes:\n 504 — API call rejected by security permissions"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: "Something went wrong, and the server was unable to complete your request.\n
Error codes:\n 501 — Internal Error"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrderLabelRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrderLabelRequest'
description: "Object to add a label to the work order. \n
• To add an extisting label to the work order, fill in all object parameters. \n To get the label ID and name, use the [GET /workorders/label](/swagger/ui/index?version=3#/WorkOrders/GETv3_workorders_label%3Fkeyword%3D%7Bkeyword%7D%26page%3D%7Bpage%7D%26pageSize%3D%7BpageSize%7D) method.\n
• To add a new label to the work order, fill in all object parameters except for `LabelId`.\n After successfully adding a new label, its ID and name can be found using the [GET /workorders/label](/swagger/ui/index?version=3#/WorkOrders/GETv3_workorders_label%3Fkeyword%3D%7Bkeyword%7D%26page%3D%7Bpage%7D%26pageSize%3D%7BpageSize%7D) method."
required: true
delete:
tags:
- Work Orders
summary: Delete a work order label
description: Removes a label from the specified work order.
operationId: DELETEv3_workorders_{workorderId}_label
parameters:
- name: workorderId
in: path
description: Unique numeric identifier of the work order
required: true
schema:
type: integer
format: int32
responses:
'200':
description: The request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.UpdateLabelResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.UpdateLabelResponse'
'400':
description: The request was not accepted due to bad syntax, missing parameters, insufficient data, etc.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "The request is not authorized.\n
Error codes:\n 504 — API call rejected by security permissions"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrderLabelRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrderLabelRequest'
description: "Object to delete a label from the work order.\n
To get the label ID and name, use the [GET /workorders/label](/swagger/ui/index?version=3#/WorkOrders/GETv3_workorders_label%3Fkeyword%3D%7Bkeyword%7D%26page%3D%7Bpage%7D%26pageSize%3D%7BpageSize%7D) method."
required: true
/workorders/labels:
post:
tags:
- Work Orders
summary: Create work order labels
operationId: POSTv3_workorders_labels
responses:
'200':
description: The request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Labels.CreateWorkOrdersLablesResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Labels.CreateWorkOrdersLablesResponse'
'400':
description: The request was not accepted due to bad syntax, missing parameters, insufficient data, etc.@
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "The request is not authorized.\n
Error codes:\n 504 — API call rejected by security permissions"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'403':
description: "You are not authorized to request this resource, or the resource is unavailable for some reason.\n
Error codes: \n 100 — User has no rights to perform this action."
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: "Something went wrong, and the server was unable to complete your request.\n
Error codes:\n 501 — Internal Error"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.Labels.CreateWorkOrdersLabelsRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.Labels.CreateWorkOrdersLabelsRequest'
description: Object to add labels for a subscriber.
required: true
/workorders/{workorderId}/labels:
put:
tags:
- Work Orders
summary: Add labels to work order
operationId: PUTv3_workorders_{workorderId}_labels
parameters:
- name: workorderId
in: path
description: Unique numeric identifier of the work order.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: The request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Labels.AddWorkOrderLabelsResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Labels.AddWorkOrderLabelsResponse'
'400':
description: The request was not accepted due to bad syntax, missing parameters, insufficient data, etc.@
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "The request is not authorized.\n
Error codes:\n 504 — API call rejected by security permissions"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'403':
description: "You are not authorized to request this resource, or the resource is unavailable for some reason.\n
Error codes: \n 100 — User has no rights to perform this action."
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'404':
description: Indicates that the requested resource does not exist on the server.
'500':
description: "Something went wrong, and the server was unable to complete your request.\n
Error codes:\n 501 — Internal Error"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.Labels.AddWorkOrderLabelsRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.Labels.AddWorkOrderLabelsRequest'
description: Object to add labels to the work order.
required: true
delete:
tags:
- Work Orders
summary: Delete labels from work order
operationId: DELETEv3_workorders_{workorderId}_labels
parameters:
- name: workorderId
in: path
description: Unique numeric identifier of the work order
required: true
schema:
type: integer
format: int32
responses:
'200':
description: The request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Labels.DeleteWorkOrderLabelsResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Labels.DeleteWorkOrderLabelsResponse'
'400':
description: The request was not accepted due to bad syntax, missing parameters, insufficient data, etc.@
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "The request is not authorized.\n
Error codes:\n 504 — API call rejected by security permissions"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'403':
description: "You are not authorized to request this resource, or the resource is unavailable for some reason.\n
Error codes: \n 100 — User has no rights to perform this action."
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'404':
description: Indicates that the requested resource does not exist on the server.
'500':
description: "Something went wrong, and the server was unable to complete your request.\n
Error codes:\n 501 — Internal Error"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.Labels.DeleteWorkOrderLabelsRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.Labels.DeleteWorkOrderLabelsRequest'
description: Object to remove labels from the work order.
required: true
/workorders/{workorderId}/servicenowid:
put:
tags:
- Work Orders
summary: Update work order servicenowid
description: Update work order servicenowid.
operationId: PUTv3_workorders_{workorderId}_servicenowid
parameters:
- name: workorderId
in: path
description: Work order id
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse'
'400':
description: Bad Request - the request could not be understood or was missing required parameters.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'403':
description: "You are not authorized to request this resource, or the resource is unavailable for some reason.\n
Error codes: \n 804 — User has no permissions to perform this action."
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrderServiceNowIdRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrderServiceNowIdRequest'
description: Model for add/update label to work order
required: true
/workorders/{workorderId}/addstripecharge:
post:
tags:
- Work Orders
summary: Create Stripe charge
description: 'Creates charge through Stripe with provider stripe account as destination.
Also increases NTE by charge amount.'
operationId: POSTv3_workorders_{workorderId}_addstripecharge
parameters:
- name: workorderId
in: path
description: Work order id
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded.
'400':
description: Bad Request - the request could not be understood or was missing required parameters.
Error codes:
502 - WorkOrder not found;
503 - Request data is empty;WO don't have provider;WorkOrder does not belong to subscriber;Amount is not positive;
904 - WorkOrder is completed;
101 - Provider don't have Stripe account;
501 - Stripe API error
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: Indicates that the requested resource requires authentication.
Error codes:
504 - API call rejected by security permissions;
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: Error while processing request.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Subscribers
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.AddStripeChargeRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.AddStripeChargeRequest'
description: request
required: true
/workorders/{workorderId}/link:
put:
tags:
- Work Orders
summary: Creates link between two Work Orders
description: 'Current Work Order marked as a parent, linking Work Order marked as follow Up.
If you set ''workorderIdToLink'' parameter then ''WorkorderIds'' parameter of requested body will be ignored.
Available for provider and subscriber usage.'
operationId: PUTv3_workorders_{workorderId}_link?workorderIdToLink={workorderIdToLink}
parameters:
- name: workorderId
in: path
description: Parent Work Order id
required: true
schema:
type: integer
format: int32
- name: workorderIdToLink
in: query
description: Work Order Id that links to parent. Optional.
required: false
schema:
type: integer
format: int32
responses:
'204':
description: Indicates that the request succeeded
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.
Error codes:
\n 917 - Wrong Parent Work Order Id;
\n 932 - Wrong Linked Work Order Id;
\n 601 - Location doesn't match"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: Indicates that the requested resource requires authentication.
Error codes:
504 - API call rejected by security permissions;
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.LinkWorkordersRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.LinkWorkordersRequest'
description: Link Workorders Request
required: true
/workorders/{workorderId}/unlink:
put:
tags:
- Work Orders
summary: Removes link between two Work Orders
description: 'Current Work Order is parent, followUp Work Order is linked Work Order
If you set ''linkedWorkorderId'' parameter then ''WorkorderIds'' parameter of requested body will be ignored.
Available for provider and subscriber usage.'
operationId: PUTv3_workorders_{workorderId}_unlink?linkedWorkorderId={linkedWorkorderId}
parameters:
- name: workorderId
in: path
description: Parent Work Order id
required: true
schema:
type: integer
format: int32
- name: linkedWorkorderId
in: query
description: Work Order Id that Unlinks from parent. Optional.
required: false
schema:
type: integer
format: int32
responses:
'204':
description: Indicates that the request succeeded
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.
Error codes:
\n 917 - Wrong Parent Work Order Id;
\n 932 - Wrong Linked Work Order Id"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: Indicates that the requested resource requires authentication.
Error codes:
504 - API call rejected by security permissions;
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.UnlinkWorkordersRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.UnlinkWorkordersRequest'
description: UnLink Workorders Request
required: true
/workorders/{workorderId}/feedback:
post:
tags:
- Work Orders
summary: Leave feedback for a work order
operationId: POSTv3_workorders_{workorderId}_feedback
parameters:
- name: workorderId
in: path
description: ''
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded.
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.
Error codes:
\n 935 - Invalid Star Score;
\n 936 - Work Order was rated another user"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: Indicates that the requested resource requires authentication.
Error codes:
504 - API call rejected by security permissions;
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.LeaveFeedbackRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.LeaveFeedbackRequest'
required: true
/workorders/feedback/list:
get:
tags:
- Work Orders
summary: Get work orders feedbacks
operationId: GETv3_workorders_feedback_list?workOrdersIds[0]={workOrdersIds[0]}&workOrdersIds[1]={workOrdersIds[1]}
parameters:
- name: workOrdersIds
in: query
description: ''
required: true
style: form
explode: true
schema:
type: array
items:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded.
'400':
description: Bad Request - the request could not be understood or was missing required parameters.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: Indicates that the requested resource requires authentication.
Error codes:
504 - API call rejected by security permissions;
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
/workorders/providerforreassignment:
get:
tags:
- Work Orders
summary: Retrieve a Provider
description: A single Provider object with all its details.
operationId: GETv3_workorders_providerforreassignment?workorderId={workorderId}&providerId={providerId}&locationId={locationId}&trade={trade}
parameters:
- name: workorderId
in: query
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
- name: providerId
in: query
description: Numeric Id of the previously assigned Provider.
required: true
schema:
type: integer
format: int32
- name: locationId
in: query
description: Numeric Id of the Location.
required: true
schema:
type: integer
format: int32
- name: trade
in: query
description: Trade.
required: true
schema:
type: string
responses:
'204':
description: Indicates that the request has been successfully processed and that the response is intentionally blank.
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
503 - Request data is empty;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
/workorders/solvedissue:
post:
tags:
- Work Orders
summary: Submit solved issue during troubleshooting
operationId: POSTv3_workorders_solvedissue
responses:
'201':
description: Indicates that the request has succeeded and has led to the creation of a resource.
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
503 - Request data is empty;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'404':
description: Indicates that the requested resource does not exist on the server.
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.Dashboard.Requests.SubmitSolvedIssueModel'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.Dashboard.Requests.SubmitSolvedIssueModel'
required: true
/worktypes:
get:
tags:
- Work Orders
summary: Work types Collection
description: Retrieves list of Work types.
operationId: GETv3_worktypes?subscriberId={subscriberId}
parameters:
- name: subscriberId
in: query
description: This parameter is required only for provider.
required: false
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.V4.Workorders.WorkTypeResponse'
text/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.V4.Workorders.WorkTypeResponse'
'400':
description: Bad Request - the request could not be understood or was missing required parameters.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
/workorders/{workorderId}/techniciansAssigned:
get:
tags:
- Work Orders
summary: Retrieve list of technicians assigned to the specified work order
operationId: GETv3_workorders_{workorderId}_techniciansAssigned
parameters:
- name: workorderId
in: path
description: ''
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
'401':
description: "Indicates that the requested resource requires authentication. \n
Error codes: \n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'403':
description: "Indicates that the server refuses to fulfill the request. \n
Error codes: \n
504 - Work order doesn't belong to the current user"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'404':
description: "Not Found - the requested resource could not be found but may be available in the future. \n
Error codes: \n
502 - Work order is not found;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: "Indicates that a generic error has occurred on the server. \n
Error codes: \n
501 - Timeout expired. The timeout period elapsed prior to completion of the operation or the server is not responding."
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Subscribers
/workorders/{workorderId}/refrigerantUseStatus:
get:
tags:
- Work Orders
summary: Retrieve the status of refrigerant use on a work order
description: 'Returns the status of refrigerant use on the specified work order:
• `null`: There is no information on the use of refrigerant.
• `true`: Refrigerant was used upon execution of the service request.
• `false`: Refrigerant wasn''t used when performing work on the service request.
Once you try out this method, you can use the `refrigerantWasUsed` value as an input parameter for updating the status of refrigerant use in the PUT / workorders/{workorderId}/markRefrigerantUse method or for updating the leak inspection information in the PUT /workorders/{workOrderId}/UpdateWorkOrderLeakInspectionInfo method.'
operationId: GETv3_workorders_{workorderId}_refrigerantUseStatus
parameters:
- name: workorderId
in: path
description: The unique numeric identifier of the work order to return the status of refrigerant use for.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: The status of refrigerant use on the specified work order is in the response.
content:
application/json:
schema:
default: false
type: boolean
text/json:
schema:
default: false
type: boolean
'401':
description: The requested resource requires authentication.
Error codes:
504 — API call rejected by security permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'404':
description: The requested resource does not exist on the server.
deprecated: false
x-access: Any
/workorders/{workOrderId}/leakWasDetected:
get:
tags:
- Work Orders
summary: Retrieve the leak detection result on a work order
description: 'Returns the information about the leak detected on the specified work order. This answer is saved when the user answers the question “Did you find a leak?” while entering a leak inspection on a refrigerated work order.
***Note***: The *RTMultiLeakFlow* feature flag should be enabled.
The possible values in the response are the following:
• `true`: The user detected a refrigerant leak and set the answer to "Yes".
• `false`: The user didn’t detect any refrigerant leak and set the answer to "No".
• `null`: There is no information about the detected leak. The *RTMultiLeakFlow* feature is not turned on, or the specified work order is not of refrigerant type.
Learn from ServiceChannel University how providers can enter a leak inspection in the SC Provider app and in ProviderAutomation.
Once you try out this method, you can use the `leakWasDetected` value as an input parameter for updating the leak inspection information in the PUT /workorders/{workOrderId}/UpdateWorkOrderLeakInspectionInfo method.'
operationId: GETv3_workorders_{workOrderId}_leakWasDetected
parameters:
- name: workOrderId
in: path
description: Unique numeric identifier of the work order.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: The leak detection result on the specified work order is in the response.
content:
application/json:
schema:
default: false
type: boolean
text/json:
schema:
default: false
type: boolean
'400':
description: The request was not accepted due to bad syntax, missing parameters, insufficient data, etc.
Error codes:
502 — Work order is not found
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: The requested resource requires authentication.
Error codes:
504 — API call rejected by security permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'404':
description: The requested resource does not exist on the server.
deprecated: false
x-access: Any
/workorders/{workorderId}/markRefrigerantUse:
put:
tags:
- Work Orders
summary: Update the status of refrigerant use on a work order
description: 'Updates the status of refrigerant use on the specified work order.
Set the `refrigerantWasUsed` parameter to either `true` or `false` to mark whether refrigerant was used on the service request or not.'
operationId: PUTv3_workorders_{workorderId}_markRefrigerantUse?refrigerantWasUsed={refrigerantWasUsed}&actor={actor}
parameters:
- name: workorderId
in: path
description: Unique numeric identifier of the work order to update the status of refrigerant use for.
required: true
schema:
type: integer
format: int32
- name: refrigerantWasUsed
in: query
description: Defines if refrigerant was used on the work order.To get the current `refrigerantWasUsed` value, use the [GET /workorders/{workOrderId}/refrigerantUseStatus](https://developer.servicechannel.com/swagger/index.html#/WorkOrders/GETv3_workorders_%7BworkorderId%7D_refrigerantUseStatus) method.
required: false
schema:
type: boolean
default: false
- name: actor
in: query
description: Name of the person on whose behalf you are performing the action.
required: false
schema:
type: string
responses:
'204':
description: The status of refrigerant use on the specified work order is updated.
'400':
description: The request is not accepted due to bad syntax, missing parameters, insufficient data, etc.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: The requested resource requires authentication.
Error codes:
504 — API call rejected by security permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'404':
description: The requested resource does not exist on the server.
deprecated: false
x-access: Any
/workorders/{workOrderId}/UpdateWorkOrderLeakInspectionInfo:
put:
tags:
- Work Orders
summary: Update the leak inspection information
description: 'Update the leak inspection information on the specified work order.
***Note***: The *RTMultiLeakFlow* feature flag should be enabled.'
operationId: PUTv3_workorders_{workOrderId}_UpdateWorkOrderLeakInspectionInfo?refrigerantWasUsed={refrigerantWasUsed}&leakWasDetected={leakWasDetected}
parameters:
- name: workOrderId
in: path
description: Unique numeric identifier of the work order.
required: true
schema:
type: integer
format: int32
- name: refrigerantWasUsed
in: query
description: Defines if refrigerant was used on the work order. To get the current `refrigerantWasUsed` value, use the [GET /workorders/{workOrderId}/refrigerantUseStatus](https://developer.servicechannel.com/swagger/index.html#/WorkOrders/GETv3_workorders_%7BworkorderId%7D_refrigerantUseStatus) method.
required: true
schema:
type: boolean
default: false
- name: leakWasDetected
in: query
description: Defines if a leak was detected on the work order. To get the current `leakWasDetected` value, use the [GET /workorders/{workOrderId}/leakWasDetected](https://developer.servicechannel.com/swagger/index.html#/WorkOrders/GETv3_workorders_%7BworkOrderId%7D_leakWasDetected) method.
required: true
schema:
type: boolean
default: false
responses:
'204':
description: The leak inspection info on the specified work order is updated.
'400':
description: "The request is not accepted due to bad syntax, missing parameters, insufficient data, etc.\n
Error codes:\n 701 - Invalid trade"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "The requested resource requires authentication.\n
Error codes:\n 504 — API call rejected by security permissions"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'404':
description: The requested resource does not exist on the server.
deprecated: false
x-access: Any
/workorders/{workOrderId}/weatherEvent:
get:
tags:
- Work Orders
summary: Get the Weather Event associated to a work order (if set)
description: Retrieves the set Weather Event related to a work order.
operationId: GETv3_workorders_{workOrderId}_weatherEvent?subscriberId={subscriberId}
parameters:
- name: workOrderId
in: path
description: The Id of the work order.
required: true
schema:
type: integer
format: int32
- name: subscriberId
in: query
description: This parameter is required only for provider.
required: false
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Api.Model.Workorders.WeatherEventType'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Api.Model.Workorders.WeatherEventType'
'400':
description: Bad Request - the request could not be understood or was missing required parameters.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
/workorders/{workorderId}/SetMoeNumber:
put:
tags:
- Work Orders
summary: Mark if refrigerant was used
operationId: PUTv3_workorders_{workorderId}_SetMoeNumber?moeNumber={moeNumber}
parameters:
- name: workorderId
in: path
description: Work Order id
required: true
schema:
type: integer
format: int32
- name: moeNumber
in: query
description: MOE Number
required: true
schema:
type: string
responses:
'200':
description: Indicates that the request succeeded
'400':
description: Bad Request - the request could not be understood or was missing required parameters.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: Indicates that the requested resource requires authentication.
Error codes:
504 - API call rejected by security permissions;
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'404':
description: Indicates that the requested resource does not exist on the server.
deprecated: false
x-access: Any
/workorders/{workorderId}/features:
get:
tags:
- Work Orders
summary: Checks features of Work order subscriber
operationId: GETv3_workorders_{workorderId}_features?features[0]={features[0]}&features[1]={features[1]}
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
- name: features
in: query
description: Features to check
required: true
style: form
explode: true
schema:
type: array
items:
type: string
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ApplicationAccess.FeatureResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ApplicationAccess.FeatureResponse'
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
503 - Request data is empty;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "Indicates that the requested resource requires authentication.\n
Error codes:\n
504 - API call rejected by security permissions;"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'502':
description: Indicates that the requested resource was not found on the server.
deprecated: false
x-access: Any
/workorders/{workOrderId}/analytics:
get:
tags:
- Work Orders
summary: Get analytics on a work order
description: 'Retrieves analytics on the specified work order.
Analytics are based on the following flags:
• **IVR**. Tracks the proper Check-In/Out process and indicates whether the work order has both Check-In and Check-Out records and completes with a Check-Out.
• **SLA**. Tracks estimated time of arrival (ETA) and indicates whether the work order met the original ETA.
• **FirstTimeCompletionFlag**. Indicates whether the work order was completed on the first visit (the work order has only one Check-In and one Check-Out records within 24 hours).
***Note***: You can get analytics from any work order. However, the analytics are mostly relevant for the work orders in the **Completed** status, as these flags rest on the Check-In/Out information.'
operationId: GETv3_workorders_{workOrderId}_analytics
parameters:
- name: workOrderId
in: path
description: Unique numeric identifier of the work order to get analytics from.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Analytics on the specified work order are in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrderAnalyticsResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrderAnalyticsResponse'
'401':
description: "The request is not authorized.\n
Error codes:\n 504 — API call rejected by security permissions"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'404':
description: "The request URI is incorrect, or the resource does not exist.\n
Error codes: \n 502 — Data not found\n The resource you are looking for has been removed, had its name changed, or is temporarily unavailable"
'500':
description: "Something went wrong, and the server was unable to complete your request.\n
Error codes:\n 501 — Internal Error"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
/workorders/isTechnicianCertificateUsedOnWorkOrders:
get:
tags:
- Work Orders
summary: Check if the certificate is linked to WOs
description: 'Verifies whether there are work orders associated with the certificate ID. Returns either `true` or `false` in the response. Use this method to see if the certificate can be deleted.
For providers only.'
operationId: GETv3_workorders_isTechnicianCertificateUsedOnWorkOrders?certificateId={certificateId}
parameters:
- name: certificateId
in: query
description: "Numeric ID of the certificate assigned to the technician.\n
To get the certificate ID, run the `Get/RefrigerantCertifications` method in [Contractor Tools API Swagger](https://ctoolsapi.servicechannel.com/swagger/index.html?urls.primaryName=ContractorTools.API%20v1).\n
***Note:*** The tech’s certificates are uploaded and managed in the tech’s profile in Provider Automation or the SC Provider mobile app."
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Refrigerant certification is verified against existing work orders.
content:
application/json:
schema:
default: false
type: boolean
text/json:
schema:
default: false
type: boolean
'400':
description: "The request is not accepted due to bad syntax, missing parameters, insufficient data, etc.\n
Error codes:\n 100 — Only for provider usage"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "The requested resource requires authentication.\n
Error codes:\n 504 — API call rejected by security permissions"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: "Something went wrong, and the server was unable to complete your request.\n
Error codes:\n 501 — Internal error"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Providers
/workorders/{workOrderId}/technicianCertificate:
put:
tags:
- Work Orders
summary: Assign the tech’s certificate to the work order
description: Associates the existing certificate of the technician with the work order. The WO should belong to the HVAC or Refrigeration trade. The method also adds the technician as the responsible tech who performed the service.
operationId: PUTv3_workorders_{workOrderId}_technicianCertificate
parameters:
- name: workOrderId
in: path
description: Unique numeric identifier of the work order to be associated with the certificate.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: The certificate of the technician was successfully assigned to the work order.
'400':
description: "The request is not accepted due to bad syntax, missing parameters, insufficient data, etc.\n
Error codes:\n 502 — Work order is not found\n 601 — Invalid location ID\n 701 — Invalid trade\n 1301 — Request data is empty\n 3901 — Invalid certificate ID"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "The requested resource requires authentication.\n
Error codes:\n 504 — API call rejected by security permissions"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'404':
description: The requested resource does not exist on the server.
content:
application/json:
schema:
default: false
type: boolean
text/json:
schema:
default: false
type: boolean
'500':
description: Something went wrong, and the server was unable to complete your request.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoTechnicianCertificateRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ChangeWoTechnicianCertificateRequest'
description: Request to be sent to assign the certificate to the work order.
required: true
/workorders/{workOrderId}/accept:
put:
tags:
- Work Orders
summary: Accept a work order
description: 'Allows a provider to accept a work order with an optional note.
When a work order is successfully accepted, it changes its status from *Open* to *In Progress / Dispatch Confirmed*.
***Note***: Providers only can use this method.'
operationId: PUTv3_workorders_{workOrderId}_accept
parameters:
- name: workOrderId
in: path
description: Unique numeric identifier of the work order.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Work order is successfully accepted.
'400':
description: "The request was not accepted due to bad syntax, missing parameters, insufficient data, etc. \n
Error codes:\n 502 — Work order is not found\n 804 — User has no permission to perform this action \n 904 — Work order is in status that does not allow to perform this action \n 5202 — This work order was already accepted\n 5203 — Acceptance of the work order failed"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "The requested resource requires authentication.\n
Error codes:\n 504 — API call rejected by security permissions"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'404':
description: Invalid work order ID.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: 'Something went wrong, and the server was unable to complete your request. '
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Providers
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.AcceptWorkOrderRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.AcceptWorkOrderRequest'
description: Request to add a note to the work order while accepting it.
/workorders/{workOrderId}/decline:
put:
tags:
- Work Orders
summary: Decline a work order
description: 'Allows a provider to decline a work order with a note.
When a provider declines a work order, the order changes its status from *Open* to *Open / Declined* or becomes automatically reassigned to another provider if the *WOMultipleAutoReassign* feature flag is turned on for the subscriber.
***Note***: Providers only can use this method.'
operationId: PUTv3_workorders_{workOrderId}_decline
parameters:
- name: workOrderId
in: path
description: Unique numeric identifier of the work order.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Work order is declined.
'400':
description: "The request was not accepted due to bad syntax, missing parameters, insufficient data, etc.\n
Error codes:\n 502 — Work order is not found\n 804 — User has no permission to perform this action\n 904 — Work order is in status that does not allow to perform this action\n 5201 — Work order decline failed\n 9002 — This decline reason does not allow custom text\n 9003 — Invalid decline reason ID"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "The requested resource requires authentication. \n
Error codes:\n 504 — API call rejected by security permissions"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'500':
description: Something went wrong, and the server was unable to complete your request.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Providers
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.DeclineWorkOrderRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.DeclineWorkOrderRequest'
description: "Request to add information about the work order decline. \n
Required parameters: \n • `DeclineReasonId` (if the *DeclineHistoryWO* feature flag is on)\n • `CustomDeclineReason` (if the decline reason has `AskCustomReason`=true)"
required: true
/workorders/{workOrderId}/checklistFailureState:
get:
tags:
- Work Orders
summary: Gets the work order checklist failure state
operationId: GETv3_workorders_{workOrderId}_checklistFailureState
parameters:
- name: workOrderId
in: path
description: The work order identifier.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: The work order checklist failure state is returned for the workOrderId.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.ChecklistFailureState'
text/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.ChecklistFailureState'
'401':
description: "The request is not authorized.\n
Error codes:\n 504 — API call rejected by security permissions"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'404':
description: "The request URI is incorrect, or the resource does not exist.\n
Error codes: \n 502 — Data not found\n The resource you are looking for has been removed, had its name changed, or is temporarily unavailable"
'500':
description: The server was unable to complete the request due to an internal error.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Subscribers
/workorders/{workorderId}/GPSRadius:
get:
tags:
- Work Orders
summary: Retrieve a GPS radius for a work order
description: 'Returns the geolocation radius of the location for the specified work order.
The GPS radius is calculated based on Site Access rules. If the rules are not set up, the default GPS radius is 2 miles.'
operationId: GETv3_workorders_{workorderId}_GPSRadius
parameters:
- name: workorderId
in: path
description: Unique numeric identifier of the work order.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: The request succeeded, and the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.GetGPSRadiusResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.GetGPSRadiusResponse'
'400':
description: "The request was not accepted due to bad syntax, missing parameters, insufficient data, etc.\n
Error codes:\n 502 — Work order was not found \n 917 — Invalid tracking number"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "The requested resource requires authentication.\n Error codes:\n
504 - API call rejected by security permissions"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
/workorders/{workorderId}/followers:
post:
tags:
- Work Orders
summary: Add Followers to Work order
description: Add Followers to Work order.
operationId: POSTv3_workorders_{workorderId}_followers
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
responses:
'201':
description: Created indicates that the request resulted in a new resource created before the response was sent.
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
503 - Request data is empty;\n
There is no followers in request;\n
Empty tracking number (workorder Id);"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "The request is not authorized.\n
Error codes:\n 504 - Missing or incorrect authentication credentials"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'404':
description: Indicates that the requested resource does not exist on the server.
deprecated: false
x-access: Any
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.AddFollowersRequest'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.AddFollowersRequest'
description: The request model to perform action with.
required: true
delete:
tags:
- Work Orders
summary: Remove Follower from Work order
description: Remove Follower from Work order.
operationId: DELETEv3_workorders_{workorderId}_followers?email={email}
parameters:
- name: workorderId
in: path
description: Numeric Id of the Work order to perform action with.
required: true
schema:
type: integer
format: int32
- name: email
in: query
description: The follower email address.
required: true
schema:
type: string
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
'400':
description: "Bad Request - the request could not be understood or was missing required parameters.\n
Error codes:\n
503 - Request data is empty;\n
There is no followers in request;
Empty tracking number (workorder Id);"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: "The request is not authorized.\n
Error codes:\n 504 - Missing or incorrect authentication credentials"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'404':
description: Indicates that the requested resource does not exist on the server.
deprecated: false
x-access: Any
/subscribers/{subscriberId}/workorders/{workorderId}/reassign:
put:
tags:
- Work Orders
operationId: PUTv3_subscribers_{subscriberId}_workorders_{workorderId}_reassign
parameters:
- name: subscriberId
in: path
required: true
schema:
type: integer
format: int32
- name: workorderId
in: path
required: true
schema:
type: integer
format: int32
responses:
'200':
description: OK
content:
application/json:
schema:
$ref: '#/components/schemas/System.Object'
text/json:
schema:
$ref: '#/components/schemas/System.Object'
'401':
description: "The request is not authorized.\n
Error codes:\n 504 - Missing or incorrect authentication credentials"
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
text/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'404':
description: Indicates that the requested resource does not exist on the server.
deprecated: false
x-access: Any
summary: PUTv3 subscribers {subscriber id} workorders {workorder id} reassign
x-summary-source: derived
/odata/workorders:
get:
tags:
- Work Orders
summary: Retrieve work orders
description: 'Returns a list of work orders created within the last 90 days if not specified otherwise in `$filter`. The maximum date range between the work order `CallDate` and the current date is 365 days.
The default number of work orders in the response is 50. To retrieve more work orders, use the `$skip` parameter.
***Note***: You can also get a list of work orders by using one of the following methods: GET /workorders, POST /odata/workorders/filter.'
operationId: WorkOrders_GetWorkOrders
parameters:
- name: $expand
in: query
description: Expand a navigation property.
required: false
schema:
type: string
- name: $select
in: query
description: Select a set of properties to return.
required: false
schema:
type: string
- name: $filter
in: query
description: Filter a collection of resources addressed by a request URL.
required: false
schema:
type: string
- name: $orderby
in: query
description: Order resources by the specified property in the response.
required: false
schema:
type: string
- name: $top
in: query
description: Return the specified number of items in the response.
required: false
schema:
type: integer
- name: $skip
in: query
description: Skip the specified number of items in the response.
required: false
schema:
type: integer
- name: $count
in: query
description: Include the count of the matching resources in the response.
required: false
schema:
type: boolean
responses:
'200':
description: The list of work orders is in the response.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrder'
'400':
description: The request is not accepted due to bad syntax, missing parameters, insufficient data, etc.
The query specified in the URI is not valid.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'401':
description: The request is not authorized.
Error codes:
504 � API call rejected by security permissions
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
'502':
description: The server, while acting as a gateway or proxy, received an invalid response from the upstream server.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ErrorResponse'
deprecated: false
x-access: Any
/odata/workorders({workorderId}):
get:
tags:
- Work Orders
summary: Retrieve a Work Orders
operationId: WorkOrders_Get
parameters:
- name: workorderId
in: path
description: ''
required: true
schema:
type: integer
format: int32
- name: $expand
in: query
description: Expand a navigation property.
required: false
schema:
type: string
- name: $select
in: query
description: Select a set of properties to return.
required: false
schema:
type: string
- name: $filter
in: query
description: Filter a collection of resources addressed by a request URL.
required: false
schema:
type: string
- name: $orderby
in: query
description: Order resources by the specified property in the response.
required: false
schema:
type: string
- name: $top
in: query
description: Return the specified number of items in the response.
required: false
schema:
type: integer
- name: $skip
in: query
description: Skip the specified number of items in the response.
required: false
schema:
type: integer
- name: $count
in: query
description: Include the count of the matching resources in the response.
required: false
schema:
type: boolean
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrder'
deprecated: false
x-access: Any
/odata/workorders({workorderId})/Service.CheckInActivity(loadBlocked={loadBlocked}):
get:
tags:
- Work Orders
summary: Retrieve a Work Order CheckIn Activity
operationId: WorkOrders_CheckInActivity
parameters:
- name: loadBlocked
in: path
description: To retrieve all check-in/out attempts, including unsuccessful ones, set the value to true. Default value is false.
required: true
schema:
type: boolean
default: false
- name: workorderId
in: path
description: ''
required: true
schema:
type: integer
format: int32
- name: $expand
in: query
description: Expand a navigation property.
required: false
schema:
type: string
- name: $select
in: query
description: Select a set of properties to return.
required: false
schema:
type: string
- name: $filter
in: query
description: Filter a collection of resources addressed by a request URL.
required: false
schema:
type: string
- name: $orderby
in: query
description: Order resources by the specified property in the response.
required: false
schema:
type: string
- name: $top
in: query
description: Return the specified number of items in the response.
required: false
schema:
type: integer
- name: $skip
in: query
description: Skip the specified number of items in the response.
required: false
schema:
type: integer
- name: $count
in: query
description: Include the count of the matching resources in the response.
required: false
schema:
type: boolean
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.CheckInIActivity'
deprecated: false
x-access: Any
/odata/locations({locationId})/workorders:
get:
tags:
- Work Orders
summary: Retrieve a Work Orders
description: 'Retrieve a Work Orders.
One page contains 50 items by default. To get next 50 items use the "$skip" parameter (for example $skip=50 and so on).
The filter expressions by defaul is "$filter CallDate ge (Now+90 days)".
The maximum CallDate value is 365 days even if provided.'
operationId: WorkOrders_GetWorkOrdersForLocation
parameters:
- name: locationId
in: path
description: ''
required: true
schema:
type: integer
format: int32
- name: $expand
in: query
description: Expand a navigation property.
required: false
schema:
type: string
- name: $select
in: query
description: Select a set of properties to return.
required: false
schema:
type: string
- name: $filter
in: query
description: Filter a collection of resources addressed by a request URL.
required: false
schema:
type: string
- name: $orderby
in: query
description: Order resources by the specified property in the response.
required: false
schema:
type: string
- name: $top
in: query
description: Return the specified number of items in the response.
required: false
schema:
type: integer
- name: $skip
in: query
description: Skip the specified number of items in the response.
required: false
schema:
type: integer
- name: $count
in: query
description: Include the count of the matching resources in the response.
required: false
schema:
type: boolean
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrder'
deprecated: false
x-access: Any
/odata/locations({locationId})/workorders/Service.GetDuplicates():
get:
tags:
- Work Orders
summary: Retrieve a Duplicate Work Orders
description: 'Retrieve a Duplicate Work Orders
One page contains 50 items by default. To get next 50 items use the "$skip" parameter (for example $skip=50 and so on).'
operationId: WorkOrders_GetDuplicateWorkOrders
parameters:
- name: $expand
in: query
description: Expand a navigation property.
required: false
schema:
type: string
- name: $select
in: query
description: Select a set of properties to return.
required: false
schema:
type: string
- name: $filter
in: query
description: Filter a collection of resources addressed by a request URL.
required: false
schema:
type: string
- name: $orderby
in: query
description: Order resources by the specified property in the response.
required: false
schema:
type: string
- name: $top
in: query
description: Return the specified number of items in the response.
required: false
schema:
type: integer
- name: $skip
in: query
description: Skip the specified number of items in the response.
required: false
schema:
type: integer
- name: $count
in: query
description: Include the count of the matching resources in the response.
required: false
schema:
type: boolean
- name: locationId
in: path
description: Location identifier
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrder'
deprecated: false
x-access: Any
/odata/locations({locationId})/workorders/Service.GetRecalls():
get:
tags:
- Work Orders
summary: Retrieve Work Order Recalls
description: 'Retrieve Work Order Recalls
One page contains 50 items by default. To get next 50 items use the "$skip" parameter (for example $skip=50 and so on).'
operationId: WorkOrders_GetRecallWorkOrders
parameters:
- name: $expand
in: query
description: Expand a navigation property.
required: false
schema:
type: string
- name: $select
in: query
description: Select a set of properties to return.
required: false
schema:
type: string
- name: $filter
in: query
description: Filter a collection of resources addressed by a request URL.
required: false
schema:
type: string
- name: $orderby
in: query
description: Order resources by the specified property in the response.
required: false
schema:
type: string
- name: $top
in: query
description: Return the specified number of items in the response.
required: false
schema:
type: integer
- name: $skip
in: query
description: Skip the specified number of items in the response.
required: false
schema:
type: integer
- name: $count
in: query
description: Include the count of the matching resources in the response.
required: false
schema:
type: boolean
- name: locationId
in: path
description: Location identifier
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrder'
deprecated: false
x-access: Any
/odata/workorders/Service.NearBy(latitude={latitude},longitude={longitude}):
get:
tags:
- Work Orders
summary: Retrieve a Work Orders near by a site
description: 'Retrieve a Work Orders near by a site orderred by Location distance (by default).
One page contains 50 items by default. To get next 50 items use the "$skip" parameter (for example $skip=50 and so on).
The filter expressions by defaul is "$filter CallDate ge (Now+90 days)".
The maximum CallDate value is 365 days even if provided.'
operationId: WorkOrders_GetWorkOrdersNearBy
parameters:
- name: longitude
in: path
description: Longitude of a site
required: true
schema:
type: number
format: double
- name: latitude
in: path
description: Latitude of a site
required: true
schema:
type: number
format: double
- name: $expand
in: query
description: Expand a navigation property.
required: false
schema:
type: string
- name: $select
in: query
description: Select a set of properties to return.
required: false
schema:
type: string
- name: $filter
in: query
description: Filter a collection of resources addressed by a request URL.
required: false
schema:
type: string
- name: $orderby
in: query
description: Order resources by the specified property in the response.
required: false
schema:
type: string
- name: $top
in: query
description: Return the specified number of items in the response.
required: false
schema:
type: integer
- name: $skip
in: query
description: Skip the specified number of items in the response.
required: false
schema:
type: integer
- name: $count
in: query
description: Include the count of the matching resources in the response.
required: false
schema:
type: boolean
responses:
'200':
description: Indicates that the request succeeded and that the requested information is in the response.
content:
application/json:
schema:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrder'
deprecated: false
x-access: Any
components:
schemas:
ServiceChannel.Services.Messaging.Workorders.WorkOrderLabelResponse:
description: Parameters of labels
type: object
properties:
Id:
format: int32
description: Unique numeric identifier of the label
type: integer
Value:
description: Label name
type: string
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.WorkOrder:
description: Workorder object for Messages exchange.
type: object
properties:
Id:
format: int32
description: Work Order identifier.
type: integer
Number:
description: Work Order Number.
type: string
PurchaseNumber:
description: Purchase number of work order.
type: string
Subscriber:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.Subscriber'
description: Subscriber info.
Provider:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.Provider'
description: Provider info.
Location:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.Location'
description: Location info.
LocationId:
format: int32
description: LocationId for use in ODATA calls without expanding Location property (ref. PLAT-55878).
type: integer
Status:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.WorkOrderStatus'
description: Workorder Status.
IssueTicketInfo:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.IssueTicketInfo'
description: Issue ticket info.
Caller:
description: Caller.
type: string
CreatedBy:
description: Created by user.
type: string
CallDate:
format: date-time
description: Call date.
type: string
CallDate_DTO:
format: date-time
description: Call date (DateTimeOffset).
type: string
EstimatedCompletionDate:
format: date-time
description: Estimated completion date.
type: string
OriginalEstimatedCompletionDate:
format: date-time
description: Original estimated completion date.
type: string
ProjectedCompletionDate:
format: date-time
description: Projected completion date.
type: string
OriginalProjectedCompletionDate:
format: date-time
description: Original projected completion date.
type: string
Priority:
description: Priority.
type: string
Trade:
description: Trade.
type: string
TradeId:
format: int32
description: Trade Id.
type: integer
ApprovalCode:
description: Approval code.
type: string
ScheduledDate:
format: date-time
description: Scheduled date.
type: string
ScheduledDate_DTO:
format: date-time
description: Scheduled date (DateTimeOffset).
type: string
CompletedDate:
format: date-time
description: Completed date.
type: string
CompletedDate_DTO:
format: date-time
description: Completed date (DateTimeOffset).
type: string
ExpirationDate:
format: date-time
description: Gets or sets ExpirationDate.
type: string
ExpirationDate_DTO:
format: date-time
description: Expiration date (DateTimeOffset).
type: string
UpdatedDate:
format: date-time
description: Updated Date.
type: string
UpdatedDate_DTO:
format: date-time
description: Updated date (DateTimeOffset).
type: string
CreatedDate:
format: date-time
description: Created Date.
type: string
CreatedDate_DTO:
format: date-time
description: Created date (DateTimeOffset).
type: string
Description:
description: Description.
type: string
CategoryId:
format: int32
description: Category Id.
type: integer
Category:
description: Category.
type: string
Nte:
format: double
description: NTE (Not To Exceed) amount.
type: number
Currency:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.Currency'
description: Currency.
ProblemCode:
description: Problem code.
type: string
Resolution:
description: Resolution.
type: string
Asset:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.AssetResponse'
description: Asset response.
AssetCount:
format: int32
description: Asset count.
type: integer
Attachments:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.AttachmentsDescriptor'
description: Attachments descriptor.
Notes:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.NotesDescriptor'
description: Notes descriptor.
PostedId:
format: int32
description: Gets or sets PostedId.
type: integer
IsCheckInDenied:
description: Gets or sets a value indicating whether IsDenied.
default: false
type: boolean
IsInvoiced:
description: Gets or sets IsInvoiced.
default: false
type: boolean
readOnly: true
CheckInDeniedReason:
description: Gets or sets Reason.
type: string
IsExpired:
description: Gets or sets IsExpired.
default: false
type: boolean
IsEnabledForMobile:
description: Gets or sets value that allowed clients to manage their vendors to participate in the mobile App process.
default: false
type: boolean
HasWorkActivity:
description: Indicates if work activity exists.
default: false
type: boolean
Source:
description: Source.
type: string
CallerId:
format: int32
description: Caller Id.
type: integer
AutoComplete:
description: Indicates if auto complete is enabled.
default: false
type: boolean
Labels:
description: Work order labels.
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.WorkOrderLabel'
AutoInvoice:
description: Indicates if auto invoice is enabled.
default: false
type: boolean
ProjectedCompletionDate_DTO:
format: date-time
description: Projected completion date (DateTimeOffset).
type: string
OriginalProjectedCompletionDate_DTO:
format: date-time
description: Original projected completion date (DateTimeOffset).
type: string
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.NoteInfo:
description: Information about a note.
type: object
properties:
Id:
format: int64
description: Note identifier.
type: integer
DocumentId:
description: Associated document identifier.
type: string
Number:
format: int32
description: Note number.
type: integer
NoteData:
description: Note content.
type: string
DateCreated:
format: date-time
description: Date the note was created.
type: string
ActionRequired:
description: Indicates if action is required.
default: false
type: boolean
MailedTo:
description: Recipients of the note.
type: string
CreatedBy:
description: Creator of the note.
type: string
ServiceChannel.Services.Messaging.CheckInOut.CheckInValidateResponse:
description: Check-In Validate Response
type: object
properties:
IsBadgeScanRequired:
description: Is Badge Scan Required
default: false
type: boolean
IsLoginTypeAllowed:
description: Is Current Login type Allowed to perform check-in action
default: false
type: boolean
IsOutsideAcceptableTimeframe:
description: Is Outside Acceptable Timeframe
default: false
type: boolean
IsOutsideGeolocation:
description: Is Outside Geolocation
default: false
type: boolean
OutsideOperationalHoursMessage:
description: Outside Operational Hours Message
type: string
IsMaskRequired:
description: Is Mask Required
default: false
type: boolean
CheckInOutsideGPSAllowed:
description: Is Check In Outside Geolocation Radius Allowed
default: false
type: boolean
CheckOutOutsideGPSAllowed:
description: Is Check Out Outside Geolocation Radius Allowed
default: false
type: boolean
IsCompliantNonCompliantCheckInEnabled:
description: Is Compliant Non-Compliant Check In/Out Enabled
default: false
type: boolean
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.Location:
description: Location associated with a work order.
type: object
properties:
Id:
format: int32
description: Unique location identifier.
type: integer
SubscriberId:
format: int32
description: Unique subscriber identifier.
type: integer
StoreId:
description: Alphanumeric identifier of the store in the client's system. Assigned by and unique per subscriber.
type: string
Name:
description: Location name.
type: string
ShortName:
description: Shortened location name.
type: string
Latitude:
format: double
description: Global position. Latitude.
type: number
Longitude:
format: double
description: Global position. Longitude.
type: number
Distance:
format: double
description: Distance from GPS coordinate to this location.
type: number
Address1:
description: Additional location address.
type: string
Address2:
description: Main location address.
type: string
City:
description: Location city.
type: string
State:
description: State where the location is situated.
type: string
Zip:
description: Location ZIP or postal code.
type: string
TimeZoneInfoId:
format: int32
description: Numeric identifier of the location time zone.
type: integer
Notes:
description: Location notes.
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.LocationNote'
TimeShiftToEST:
format: int32
description: Time shift to Eastern Standard Time.
type: integer
AddressTypeId:
format: int32
description: Address format pattern Id.
type: integer
IsInternational:
description: Indicates if the location is international.
default: false
type: boolean
ServiceChannel.Services.Messaging.Invoices.InvoiceTaxesDetails:
description: Object containing the list of taxes. You can add taxes as a fixed amount or as a percentage.
type: object
properties:
LaborTaxPercent:
format: double
description: Amount of the labor tax in percentage (for countries other than USA and Canada).
type: number
MaterialTaxPercent:
format: double
description: Amount of the material tax in percentage (for countries other than USA and Canada).
type: number
TravelTaxPercent:
format: double
description: Amount of the travel tax in percentage (for countries other than USA and Canada).
type: number
FreightTaxPercent:
format: double
description: Amount of the freight tax in percentage (for countries other than USA and Canada).
type: number
OtherTaxPercent:
format: double
description: Amount of other taxes in percentage (for countries other than USA and Canada).
type: number
LaborTax:
format: double
description: Amount of the labor tax.
type: number
MaterialTax:
format: double
description: Amount of the material tax.
type: number
TravelTax:
format: double
description: Amount of the travel tax.
type: number
FreightTax:
format: double
description: Amount of the freight tax.
type: number
OtherTax:
format: double
description: Amount of other taxes.
type: number
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.NotesDescriptor:
description: Notes information for a work order.
type: object
properties:
WorkOrderId:
format: int32
description: Work order identifier.
type: integer
Last:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.NoteInfo'
description: Last note information.
Count:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.CountDescriptor'
description: Notes count descriptor.
ServiceChannel.Services.Messaging.RefrigerantTracking.AddWorkOrderPartRefrigerantItem:
description: Object for adding part use records in bulk
type: object
properties:
AssetId:
format: int32
description: Unique numeric identifier of the asset to which the new part use records should be added. Only one asset can be processed in the request. For a non-refrigerant part use, the `AssetId` is not required.
type: integer
RecId:
format: int32
description: Unique numeric identifier of the work order associated with the `AssetId`. Only one work order can be processed in the request.
type: integer
Quantity:
format: double
description: Quantity of parts used.
type: number
UnitCost:
format: double
description: Cost of each part.
type: number
IsRefrigerant:
description: 'Specifies whether the part you are trying to add is classified as a refrigerant. Possible input values: `true` and `false`.'
default: false
type: boolean
IsInventoryPart:
description: "Specifies whether the part you are trying to add is listed in the inventory catalog for the location or the part is supplied by the vendor. Possible input values:\n • `true`: Indicates an inventory part\n • `false`: Indicates a vendor-supplied part"
default: false
type: boolean
UseDate:
format: date-time
description: Date and time when the part was used. The format is `YYYY-MM-DDThh:mm:ss.sssZ`.
type: string
UseDateStr:
description: Date and time when the part was used. The format is `YYYY-MM-DDThh:mm:ss.sssZ`.
type: string
ReasonCode:
format: int32
description: "Reason code name for the refrigerant part use — as configured by the subscriber. Possible values:\n • `Leak`\n • `Repair`\n • `Adjustment`\n • `System Expansion`\n • `Removal`\n • `Initial Charge`\n • `Retrofit`\n • `Removed Reused` \n
To get the list of reason codes for the subscriber, use the [GET/refrigeranttracking/{subscriberId}/GetRefrigerantUseReasonCodes](https://developer.servicechannel.com/swagger/index.html#/RefrigerantTracking/GETv3_refrigeranttracking_%7BsubscriberId%7D_GetRefrigerantUseReasonCodes) method."
type: integer
ReasonCodeId:
format: int32
description: Unique numeric identifier of the refrigerant use reason code. To get the list of reason code IDs for the subscriber, use the [GET/refrigeranttracking/{subscriberId}/GetRefrigerantUseReasonCodes](https://developer.servicechannel.com/swagger/index.html#/RefrigerantTracking/GETv3_refrigeranttracking_%7BsubscriberId%7D_GetRefrigerantUseReasonCodes) method.
type: integer
PartNumber:
description: Part number. Shouldn’t exceed 50 characters.
type: string
PartName:
description: Part name. Shouldn’t exceed 100 characters.
type: string
PartGroup:
description: Part group. Required only if the `IsRefrigerant` is set to `true`.
type: string
PartGroupId:
format: int32
description: Unique numeric identifier of the part group. Required only if the `IsRefrigerant` is set to `true`.
type: integer
SupplierName:
description: Name of a company that supplies the part.
type: string
Description:
description: Part description. Any additional information on the part. Shouldn’t exceed 250 characters.
type: string
RefrigerantChargeOptionsId:
format: int32
description: "Unique numeric identifier of the charge method used. Possible values:\n • `1`: Calculation\n • `2`: Established\n • `3`: Manufacturer Tag\n • `4`: Measurement\n • `5`: MFG Info (Established Range)\n • `6`: Onsite Documentation\n • `7`: Approximate\n
To get charge options and their IDs, use the [GET/refrigeranttracking/ChargeDescriptions](https://developer.servicechannel.com/swagger/index.html#/RefrigerantTracking/GETv3_refrigeranttracking_ChargeDescriptions) method."
type: integer
RefrigerantChargeVendor:
description: Provider who identified the initial charge of the system. Only applicable when the `ReasonCode` is set to `Initial Charge`.
type: string
InventoryLocationId:
format: int32
description: Unique numeric identifier of the inventory location where the inventory part is stored.
type: integer
InventoryLocationGuid:
description: GUID of the inventory location.
type: string
InventoryPartId:
format: int32
description: Unique numeric identifier of the inventory part. To get the inventory part ID, use the [GET/Setup/parts](https://inventoryapi.servicechannel.com/swagger/index.html) method.
type: integer
RefrigerantUseReason:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.RefrigerantTracking.RefrigerantUseReasonCode'
RefrigerantRemovalStatus:
description: "Status that describes what was done with the removed refrigerant in the event of the retrofit plan:\n • `Destroyed`\n • `Reused`\n • `Reclaimed`\n • `Banked`\n • `ChargeLost`\n • `Sold`\n
***Note:*** Applicable for the retrofit plan.\n
Not recommended for use in this request."
enum:
- Destroyed
- Reused
- Reclaimed
- Banked
- ChargeLost
- Sold
type: string
RefrigerantTypeId:
format: int32
description: Unique numeric identifier of the refrigerant type. To get the list of refrigerant types and their IDs, run the [GET/refrigeranttracking/RefrigerantTypes](https://developer.servicechannel.com/swagger/index.html#/RefrigerantTracking/GETv3_refrigeranttracking_RefrigerantTypes%3FsubscriberId%3D%7BsubscriberId%7D) method.
type: integer
RefrigerantTypeName:
description: Refrigerant type name.
type: string
SubmitMoeQtyExceeded:
description: For Canadian locations. When the part use meets or exceeds the threshold, set the parameter’s value to `true` to be able to proceed with the request.
default: false
type: boolean
MoeNumber:
description: "Agency number that will be assigned to the work order and the leak record. The number can be up to 20 characters. An agency number needs to be entered when the system threshold has been met or exceeded. For Canadian locations only.\n
Available with the *SCP_RTCanadaRefrigeration* feature flag."
type: string
IsRetrofit:
format: byte
description: "Specifies whether the part use is associated with a retrofit plan. Possible values:\n • `true`: The part is linked to a retrofit plan. The `RefrigerantRemovalStatus` should be specified.\n • `false`: The part isn’t associated with a retrofit plan.\n
Not recommended for use in this request."
type: string
ServiceChannel.Services.Messaging.Invoices.InvoiceApprovalCode:
type: object
properties:
Id:
format: int32
type: integer
InvoiceId:
format: int32
type: integer
InvoiceChargeId:
format: int32
type: integer
ApprovalCodeType:
enum:
- Labor
- Travel
- Material
- Freight
- Other
- Tax
- Tax2
- LineItem
- FreightGenerated
type: string
ApprovalCode:
type: string
AdditionalApprovalCode:
type: string
ParentId:
format: int32
type: integer
InternalId:
format: int32
type: integer
InternalParentId:
format: int32
type: integer
IsDefault:
default: false
type: boolean
ServiceChannel.Services.Messaging.CountDescriptor:
type: object
properties:
Total:
format: int32
type: integer
Own:
format: int32
type: integer
ServiceChannel.Services.WebApi.Models.Request.WorkOrder.UpdateWorkOrderProjectedCompletionDateRequest:
required:
- ProjectedCompletionDate
type: object
properties:
ProjectedCompletionDate:
format: date-time
type: string
Actor:
type: string
ServiceChannel.Services.Messaging.Workorders.AddStripeChargeRequest:
description: AddStripeCharge request
required:
- TokenId
- Amount
- Currency
type: object
properties:
TokenId:
description: Id of the token returned by stripe api {!:https://stripe.com/docs/}
type: string
Amount:
format: double
description: Amount to charge
type: number
Currency:
description: Currency
type: string
ServiceChannel.Services.Messaging.Currencies.Currency:
type: object
properties:
Id:
format: int32
type: integer
AlphabeticalCode:
type: string
DecimalCount:
format: int32
type: integer
Entity:
type: string
CurrencyName:
type: string
NumericCode:
type: string
Rate:
format: double
type: number
ServiceChannel.Services.Messaging.Invoices.InvoicePaymentResponse:
description: Object containing the invoice payment details.
type: object
properties:
Id:
format: int32
description: Numeric identifier of the payment.
type: integer
PaymentDate:
format: date-time
description: Date and time when the specified invoice was paid.
type: string
PaidBy:
description: Username of the employee who made the payment.
type: string
PaymentNumber:
description: Order number of payment.
type: string
PaymentAmount:
format: double
description: Amount paid for the invoice. The value is negative if it’s a credited invoice.
type: number
ServiceChannel.Services.WebApi.Models.Response.Labels.CreateWorkOrdersLablesResponse:
type: object
properties:
LabelIds:
type: array
items:
format: int32
type: integer
ServiceChannel.Services.Messaging.Notes.NotesDescriptor:
type: object
properties:
WorkOrderId:
format: int32
type: integer
Last:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notes.NoteInfo'
Count:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.CountDescriptor'
ServiceChannel.Services.WebApi.Models.Request.UpdateWorkOrderResolutionRequest:
type: object
properties:
Resolution:
type: string
Actor:
type: string
ServiceChannel.Services.WebApi.Models.Response.Checklists.ChecklistResponses.ChecklistPictureResponse:
description: Object for an attachment added to a checklist response.
type: object
properties:
Id:
format: int32
description: ID of the file attached to the checklist response.
type: integer
CheckListResponseId:
format: int32
description: ID of the checklist response the attachment is submitted for.
type: integer
DocumentName:
description: Attachment name.
type: string
DocumentPath:
description: Attachment path.
type: string
ThumbnailPath:
description: Attachment thumbnail path.
type: string
HasThumbnail:
description: Defines whether a thumbnail is available for the attachment.
default: false
type: boolean
UpdatedBy:
format: int32
description: User Id.
type: integer
ServiceChannel.Services.Messaging.Workorders.WorkorderStatusConstraints:
description: Object containing rules and limits that apply to a work order when it’s in a given status.
type: object
properties:
Extended:
description: Name of the extended status.
type: string
IsResolutionTextRequired:
format: int32
description: 'Indicates whether entering resolution text is required for this status. Returned for providers only. Possible response values: `0`: Not required; `1`: Required.'
type: integer
IsShippingInfoRequired:
format: int32
description: 'Indicates whether parts shipping information must be provided: destination, carrier, and shipping tracking number. Returned for providers only. Possible response values: `0`: Not required; `1`: Required.'
type: integer
IsResolutionCodesRequired:
format: int32
description: 'Defines whether resolution codes are mandatory. Returned for providers only. Possible response values: `0`: Not required; `1`: Required.'
type: integer
IsScheduledDateRequired:
format: int32
description: 'Indicates whether a scheduled date must be set. Returned for providers only. Possible response values: `0`: Not required; `1`: Required.'
type: integer
AskForReviews:
description: 'Determines whether the system should prompt the subscriber for a review when the work order enters this status. Returned for subscribers only. Possible values: `true`, `false`.'
default: false
type: boolean
ServiceChannel.Services.Messaging.Users.MliUserInfo:
type: object
properties:
Id:
format: int32
type: integer
MliLevel:
type: string
MliLocations:
type: array
items:
format: int32
type: integer
ServiceChannel.Services.Messaging.Assets.WarrantyExpiration:
description: Object containing warranty expiration details.
type: object
properties:
Type:
description: 'Warranty expiration calculation type. **Possible values**: 0 - the expiration date is calculated starting from the asset purchase data; 1 - the expiration date is calculated starting from the asset installation date.'
enum:
- FromPurchaseDate
- FromInstallDate
type: string
Period:
format: int32
description: Warranty period in months.
type: integer
ServiceChannel.Services.Messaging.RefrigerantTracking.AssetRefrigerant:
type: object
properties:
Id:
format: int32
type: integer
AssetId:
format: int32
type: integer
RefrigerantUsageType:
format: int32
type: integer
RackId:
type: string
RackEntityId:
format: int32
type: integer
CarbID:
type: string
IsCarbReporting:
default: false
type: boolean
SystemLocation:
format: byte
type: string
OperationalStatus:
format: byte
type: string
RefrigerantPartNumber:
type: string
PartNumberId:
format: int32
type: integer
RackTypeId:
format: int32
type: integer
CurrentCharge:
format: double
type: number
CurrentChargeMetrics:
format: double
type: number
CurrentChargeOunces:
format: double
type: number
ChargeDescriptionId:
format: int32
type: integer
ChargeProviderName:
type: string
EffectiveChargeDate:
format: date-time
type: string
RefrigerantChargeOptionId:
format: int32
type: integer
RackTypeName:
type: string
UserId:
format: int32
type: integer
TagId:
type: string
AssetTypeId:
format: int32
type: integer
RefrigerantPurposeId:
format: int32
type: integer
RefrigerantPurposeName:
type: string
ParentId:
format: int32
type: integer
CreateOperationalStatusHistory:
default: false
type: boolean
OperationStatusDate:
format: date-time
type: string
HasLeakDetector:
default: false
type: boolean
AssetLeakDetectorId:
format: int32
type: integer
InitialCharge:
default: false
type: boolean
RackType:
format: byte
type: string
NeedsRetrofitRetirement:
default: false
type: boolean
RequiresAutomaticLeakDetector:
default: false
type: boolean
ConnectedRackId:
format: int32
type: integer
PreviousConnectedRackId:
format: int32
type: integer
UpdatedDate:
format: date-time
type: string
ServiceChannel.Services.Messaging.Workorders.WorkorderStatusExt:
required:
- Primary
- Extended
type: object
properties:
Primary:
description: Required, primary work order status value
type: string
Extended:
description: Required, but can be empty. Extended status value
type: string
PrimaryStatus:
description: Converted to WoPrimaryStatus, primary work order status value
enum:
- NotSet
- Open
- InProgress
- Completed
- Incomplete
type: string
readOnly: true
ServiceChannel.Services.Messaging.Invoices.InvoiceApprovalCodeChild:
type: object
properties:
Amount:
format: double
type: number
Id:
format: int32
type: integer
InvoiceId:
format: int32
type: integer
InvoiceChargeId:
format: int32
type: integer
ApprovalCodeType:
enum:
- Labor
- Travel
- Material
- Freight
- Other
- Tax
- Tax2
- LineItem
- FreightGenerated
type: string
ApprovalCode:
type: string
AdditionalApprovalCode:
type: string
ParentId:
format: int32
type: integer
InternalId:
format: int32
type: integer
InternalParentId:
format: int32
type: integer
IsDefault:
default: false
type: boolean
ServiceChannel.Data.FieldValue:
type: object
properties:
Header:
type: string
Value:
type: string
ServiceChannel.Services.Messaging.Invoices.InvoiceCategoryMessaging:
type: object
properties:
Id:
format: int32
type: integer
Name:
type: string
ServiceChannel.Services.Messaging.Workorders.GetWorkOrderLabelResponse:
description: Object containing the details of labels
type: object
properties:
Items:
description: List of labels
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkOrderLabelResponse'
Total:
format: int32
description: Total number of labels
type: integer
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.WarrantyExpiration:
description: Object containing warranty expiration details.
type: object
properties:
Type:
description: 'Warranty expiration calculation type. **Possible values**: 0 - the expiration date is calculated starting from the asset purchase data; 1 - the expiration date is calculated starting from the asset installation date.'
enum:
- FromPurchaseDate
- FromInstallDate
type: string
Period:
format: int32
description: Warranty period in months.
type: integer
ServiceChannel.Services.Messaging.Workorders.ContractInfo:
description: ContractInfo (composite object) - describes who, where and what will perform as well as the one who requested work
required:
- SubscriberId
- LocationId
- TradeName
type: object
properties:
SubscriberId:
format: int32
description: Required for provider request (for subscriber request filled authomatically), must belong to existing subscriber
type: integer
LocationId:
format: int32
description: "Required if 'StoreId' not passed, must belong to existing location for specified subscriber.\n Can be Optional, if EquipmentId is supplied in the request, system picks LocationId of the location that equipment belongs to"
type: integer
StoreId:
description: "Optional, can be used instead of 'LocationId'.\n If 'LocationId' not passed system will attempt to find location based on 'SubscriberId' and 'StoreId'\n ('StoreId' is required in this case), it is possible that system won't be able to find location which results in error.\n Many locations can have similar StoreId but LocationId is always unique"
type: string
ProviderId:
format: int32
description: "Optional (for provider request filled authomatically), if provided - must correspond to a valid provider that has contract\n for specified Subscriber, Location and Trade.\n If not specified the system will attempt to find default provider based on Location, \n Trade and Equipment (if specified). It is possible that system won't be able to find provider which results in error"
type: integer
TradeName:
description: "Required, must be a valid trade for specified subscriber.\n Can be Optional if EquipmentId is supplied in the request, system picks TradeName of the trade that equipment belongs to.\n This definition is narrower then Category. For example if Category is \"Maintenance\" then TradeName will be \"FLOOR MAINTENANCE\""
type: string
TradeId:
format: int32
description: Required, must be a valid trade id for specified subscriber.
type: integer
IsTradeDeleted:
default: false
type: boolean
ServiceChannel.Services.Messaging.Workorders.LeaveFeedbackRequest:
type: object
properties:
StarScore:
format: int32
type: integer
Comment:
type: string
ServiceChannel.Services.Messaging.ErrorResponse:
description: The error response object
type: object
properties:
ErrorCodes:
description: The list of error codes. Go to /basics/general/response-codes/#internal-error-codes-and-messages to map error codes to error reasons.
type: array
items:
enum:
- NotAllowed
- EmptyProvider
- InvalidProviderId
- UnknownProvider
- ProviderAlreadyExists
- ProviderIdNotExists
- TimeoutExpiredError
- EmptyContract
- ContractUndefined
- EmptySubscriber
- InvalidSubscriberId
- UnknownSubscriber
- InactiveSubscriber
- EmptySubscriberId
- SubscriberIdNotExists
- InternalError
- DataNotFound
- BadRequest
- UnAuthorized
- UnSupportedApplication
- SubsidiaryUserDisabled
- EmptyLocation
- InvalidLocationId
- UnknownLocation
- LocationNotBelongsToSubscriber
- EmptyLocationCountry
- LocationAlreadyExists
- InvalidStoreId
- LocationEmptyState
- NoAccessToLocation
- LocationAddressValidationError
- LocationAddressRequestValidationError
- InvalidLocationNoteHeader
- NoAccessToUpdateProtectedNote
- InvalidBusinessHoursFormat
- WorkingHoursIntersect
- InvalidDayOfWeek
- DuplicateDayOfWeek
- InvalidBusinessHoursInitialSetup
- BusinessHoursIsEmpty
- InvalidHolidayRepeatByType
- EmptyHolidayListOfDays
- EmptyHolidayListOfMonths
- InvalidHolidayMonthName
- InvalidHolidayNameLength
- InvalidHolidayRepeatEvery
- DuplicateMonth
- InvalidHolidayFrequency
- InvalidHolidayStartDate
- InvalidCloseAllDay
- HolidayDoesNotExist
- InvalidFormatParameter
- InvalidLocationCity
- InvalidLocationZip
- InvalidLocationLatitude
- InvalidLocationLongitude
- InvalidLocationEmail
- InvalidLocationName
- InvalidLocationState
- InvalidLocationAddlAddress
- InvalidLocationMainAddress
- InvalidLocationCountry
- InvalidLocationRegion
- InvalidLocationDistrict
- InvalidLocationPhone
- InvalidLocationContact
- InvalidLocationFaxNumber
- LocationCountryNotFound
- LocationStateNotFound
- LocationCityNotFound
- LocationIdNotExists
- InvalidLocationEmailLength
- LocationStateIdNotFound
- IncorrectCombinationStateAndStateId
- InvalidSubscriberIds
- InvalidLocalizationSettings
- LandlordResponsibilityNotFound
- LandlordResponsibilityAlreadyExists
- EmptyLocationIds
- AttachmentNotExist
- InvalidTradeId
- InvalidCategoryId
- InvalidOverrideCategoryId
- InvalidOverridePriorityId
- LeaseNoteExceedMaxLength
- InvalidOverrideProviderRank
- InvalidOverrideNTE
- DuplicateRows
- InvalidPriorityId
- LocationNotFound
- EmptyTrade
- InvalidTrade
- TradeNotBelongsToSubscriber
- InvalidPrimaryTrade
- InvalidTradeForSubscriber
- InvalidCategoryForSubscriber
- GlCodeAlreadyExists
- GlCodeNotExists
- InvalidGlCodeUpdate
- EmptyGlCode
- TradeAlreadyExists
- InvalidNTETrade
- TradeNotExists
- TradeAlreadyInUse
- TradeWithTheSameNameHasBeenDeleted
- TradeInUsePMServices
- TradeInUseProposalError
- TradeInUseRFPError
- TradeInUseChecklistError
- TradeInUseBudgetControl
- TradeInUseGlCode
- TradeInUseDynamicProviderAssignments
- TradeInUseInvoice
- TradeInUseLandlordResponsibilities
- TradeInUseWO
- TradeInUseEquipmentType
- TradeInUseRFP
- TradeInUseConnector
- TradeInUseContractedService
- TradeInUseIVR
- TradeInUseSiteAccess
- TradeInUseGLCodes
- TradeInUseCIWO
- TradeInUseOrganizationPermissions
- TradeСreationError
- EmptyUser
- EmptyCreatedBy
- InvalidUserName
- NotProviderUser
- UserHasNoPermissions
- RestrictedAccount
- UserAlreadyExists
- UserHasNoPermissionsEditWO
- UserEmailAddressIsMissing
- UserIsNotRTAdmin
- InvalidSubsriberProviderId
- LanguageNameNotFound
- InvalidLanguageId
- LanguageIdNotFound
- UseBothSubscriberIdProviderId
- EmptyWoProblem
- InvalidWoProblemSource
- InvalidWoProblemDescription
- InvalidWoProblemCode
- InvalidWoStatus
- InvalidWoNte
- InvalidWoCaller
- InvalidWoCallDate
- InvalidWoScheduledDate
- InvalidWoScheduledDateGreaterThanMaxAllowed
- EmptyWoCategory
- InvalidWoCategory
- EmptyWoPriority
- InvalidWoPriority
- InvalidWoCurrency
- InvalidWoSetupId
- AttachmentsRequired
- InvalidWoIdentifier
- EquipmentRequired
- WoNteOverflow
- InvalidWoPurchaseNumber
- InvalidWoStateForUpdate
- InvalidPagingParameter
- InvalidWoNumber
- CheckInDenied
- CheckOutDenied
- WoScheduledDateLessThenReassignDate
- WoScheduledDateLessThenCallDate
- InvalidWoActionReason
- EmptySubscriberProperty
- WorkOrderUpdateError
- MissedWoNteDetails
- InvalidLinkedWoIdentifier
- WoIsOnHold
- InvalidWoTrade
- InvalidStarScore
- WorkOrderAlreadyRated
- AttachmentThumbnailNotAvailable
- InvalidWoIdentifierOrPin
- InvalidTimeZoneHeader
- RefrigerantWasUsedShouldBeYesOrNo
- CheckInDeniedOutsideGeolocation
- CheckOutDeniedOutsideGeolocation
- LeakDetectorAuditShouldBeCreated
- CheckInOutPremature
- WorkOrderAttachmentsSizeExceeded
- WorkOrderNotFound
- WorkOrderCreateError
- InvalidWoProjectedCompletionDate
- InvalidFollowUpWo
- InvalidWeatherEventId
- InvalidSiteAuditLinkedWo
- InvalidSetupId
- IssueListNotFound
- InvalidIssueListField
- SiteAuditCompleted
- CheckSiteAuditError
- SaveSiteAuditError
- RemoveSiteAuditError
- InactiveTemplateType
- SiteAuditNotFound
- SiteAuditUpdateError
- InvalidSiteAuditParameters
- InvalidAdditionalApprovalCode
- InvalidAdditionalApprovalCodeValue
- AdditionalApprovalCodeIsDisabled
- InvalidOtherDesc
- InvalidTax2Name
- InvoiceInconsistentAmounts
- InvoiceInvalidTotal
- InvoiceTotalGreaterNte
- InvoiceExists
- CreatingInvoiceError
- DuplInvNumber
- InvoiceTotalNull
- InvComplDateNull
- InvDateLessComplDate
- InvoiceNotAuto
- ESignatureRequired
- InvWoNotFound
- InvWrongWoCurr
- InvWoCurrNotFound
- InvoicingDisabled
- InvCreationUnexpectedRes
- InvoiceInvalidLaborAmount
- InvoiceInvalidMaterialAmount
- InvDateOld
- InvDateGreater
- InvoiceMaterialDescriptionLengthOverflow
- InvoiceTaxNotValidated
- InvoiceMaterialPartNumberLengthOverflow
- TaxValidationError
- TaxExemptionError
- InvalidInvoiceNumber
- GetApprovalLevelsError
- InvoiceAddUsersToMliLevelsError
- InvoiceAddDeleteLocationsToMliLevelUserError
- InvoiceUpdateMLiLevelError
- InvoiceDeleteMliLevelError
- InvoiceDeleteUsersFromMliLevelError
- ApprovalLevelNameLengthOverflow
- GstTaxError
- Tax2Error
- GetApprovalLevelsAndLocationsByUserError
- GetAssignedUserShortInfoError
- AssignAllLocationsToApprovalLevelAndUserError
- GetLocationsForApprovalLevelAndAssignedUserError
- GetLocationsBySubscriberError
- AssignUserWithLocationsToApprovalLevelError
- ReAssignUserWithLocationsToNewApprovalLevelError
- ReAssignLocationsToApprovalLevelAndUserError
- OutstandingBalance
- InvoiceTaxDetailsEmpty
- InvoiceTaxDetailsIncorrectSum
- MultipleUsersForLocationIsNotAllowed
- UserAssignedToOtherLevel
- UserDoesNotExist
- LaborLineItemRequired
- MaterialLineItemRequired
- InvoiceDoesntExist
- InvoiceStarUnstarFailed
- InvoiceBatchUpdateInvalidInvoiceStatusError
- InvoiceBatchUpdateLimitExceededError
- InvoiceNotAvailableForCurrentUser
- InvoiceBatchUpdateInvalidRuleSetStructure
- InvoiceBatchUpdateInvalidMliStructure
- InvoiceBatchUpdateStatusError
- InvoiceMaterialUnitTypeInvalid
- ExistingBatchNumber
- InvoiceResolutionTextRequired
- GetInvoiceDefaultApprovalCodesError
- InvoiceInvalidTravelAmount
- InvoiceTravelDescriptionLengthOverflow
- InvoiceTravelUnitTypeInvalid
- TravelLineItemRequired
- TravelDetailsDisabled
- OnOffShoreDisabled
- InvoiceInvalidLaborCount
- InvoiceInvalidMaterialCount
- InvoiceInvalidTravelCount
- SubscriberNotRegisteredForTaxValidation
- ManyDecimalsInAmountError
- DecimalPartQstTaxError
- LaborRatesDiscrepancy
- PayInvoicesError
- InvoiceNumberRequirementsError
- InvoiceNumberIncorrect
- InvoiceNumberRegExPatternError
- GetInvoicesPendingApprovalByLocationError
- ReAssignInvoicesToUsersFailed
- ReAssignInvoicesUsersMatched
- GetUsersForReassignInvoiceError
- InvalidTimeRangeActivity
- OutsourcedSourceInvoiceNotFound
- OthersLineItemsDisabled
- InvoiceInvalidOtherAmount
- InvoiceInvalidOtherCount
- InvoiceOtherDescriptionLengthOverflow
- OtherLineItemRequired
- OtherLineItemsNotNegativeValueRequired
- InvalidLaborSkillLevel
- InvalidLaborType
- InvalidTechnicianQuantity
- GetInvoicesCommonCategoriesError
- InvoiceExplainDisputeEmpty
- InvoiceAdditionalApprovalCodeHeaderError
- TemplateParseSuccess
- TemplateIncorrectHeaderError
- TemplateEmptyTemplateError
- TemplateWrongFieldsCountError
- TemplateFieldNotFoundError
- TemplateFieldRequiredError
- TemplateParseIntError
- TemplateFieldSizeError
- TemplateInvalidValueError
- TemplateFieldFormatError
- TemplateFieldMaxRangeError
- TemplateFieldMinRangeError
- TemplateProviderNotEntered
- TemplateInvalidSubscriberError
- TemplateVendorNotFoundError
- TemplateMissedProviderError
- TemplateProviderNotFoundError
- TemplateProviderSubsccriberLinkError
- TemplateTradeDispatchRankError
- TemplateInvalidTradeForSubscriberError
- TemplateStoreNotFoundError
- TemplateNotStoresForStateError
- TemplateNotStoresForCountryError
- TemplateNotStoresForDistrictError
- TemplateNotStoresForRegionError
- TemplateMultiplePimaryProvidersForTradeStoreError
- TemplateDuplicatePrimaryRelationshipError
- TemplateAmbiguousDataError
- TemplateIncorrectSubscriber
- TemplateDuplicateRanking
- TemplateLongitudeRangeError
- TemplateLatitudeRangeError
- InvoiceMaterialPartNameLengthOverflow
- TemplateTradeLocationExclusion
- TemplateInvalidStateError
- TemplateMissedSubscriberError
- TemplateMissedStoreIdError
- TemplateInvalidSubscriberIdError
- TemplateOpenCloseDateError
- TemplateInvalidCountryError
- TemplateInvalidStateForCountryError
- TemplateInvalidLocationTypeError
- TemplateMissingFullAndShortNameError
- TemplateMissingCountryError
- TemplateDuplicatedDataError
- TemplateParentLocationNotFoundError
- TemplateParseDateTimeError
- TemplateParseDecimalError
- TemplateSquareValueRangeError
- TemplateInvalidSquareMeasureError
- TemplateTypeLabelCanNotBeUpdatedError
- TemplateTypeLabelHaveToBeLocationForNotInventory
- TemplateInvalidPrimarySupplyLocation
- TemplateInvalidHomestoreLocationNumber
- TemplateErrorDuringCreation
- TemplateLocationNotFoundError
- TemplateDuplicatedLocationFoundError
- TemplateInvalidLocationHeaderError
- TemplateDuplicatedLocationHeaderError
- TemplateHeaderContainsEmptyFieldsError
- TemplateLocHeadersShortHeaderError
- TemplateHeaderContainsDuplicatesError
- TemplateLocationNotesStoreIdFieldLengthError
- TemplateLocationNotesNoteValueFieldLengthError
- TemplateErrorInvalidZipCode
- TemplateMissingLocationNoteHeader
- TemplateMissingLocationNoteIdHeader
- TemplateInvalidSecondarySupplyLocation
- TemplateLocationWasNotCreated
- TemplateTruckNameIsEmpty
- TemplateWrongFormat
- TemplateSubscriberNotFound
- TemplateDuplicatedLocationHeaders
- TemplateInvalidHeaders
- TemplateInvalidPhoneError
- TemplateDuplicateTelecomRecordError
- TemplateTelecomRecordExistsError
- TemplateInvalidCategory
- TemplateDifferentRanksForProviderAssignments
- TemplateDuplicateRankError
- TemplateProviderNonCompliant
- TemplateLocationIsClosed
- TemplateProviderWarning
- TemplateMultipleProvidersForTradeStoreError
- EmptyRequest
- InvalidNumberOfParameters
- InvoiceOtherUnitTypeInvalid
- EmptyLocationOrTradeList
- RequestSubscriberIdDoesntMatchUserSubscriberId
- StoreIdRequiredError
- InvalidUserIdError
- InvalidStoreIdError
- AmbigiousError
- MliHierarchyFiledsCountError
- MliHierarchyMaxUserNameError
- MliHierarchyDuplicateUserError
- MLiHirarchyUserExistInOtherLevelError
- MissingLevelsError
- DuplicateApprovalLevelsError
- InvalidMliLocations
- InvalidMlpLocations
- ApprovalLevelUsedInRulsetError
- GLCodeAmbiguous
- GlCodeInvalidResponce
- GetRuleSetListError
- RuleSetDuplicateNameError
- RuleSetDuplicateActionError
- RuleSetConflictedActionError
- RuleSetRuleSetDoesNotExistsError
- RuleSetTradeDoesNotExistError
- RuleSetCategoryDoesNotExistError
- RuleSetMliLevelDoesNotExistError
- GetRuleSet
- CreateUpdateRuleSetError
- DeleteRuleSet
- GetRuleSetCategoriesTradesCountError
- GetRuleSetByInvoice
- GetCategoryTradeIdsAreSelectedError
- ProposalAboveMlpLimitError
- ProposalNextLevelHasNoAvailableActionsError
- DefaultRuleSetError
- RuleSetActionEndStatusError
- RuleSetRejectActionEmptyForwardToError
- UserFilterGetError
- UserFilterCreateUpdateError
- UserFilterDeleteError
- UserFilterSetAsDefaultError
- InvoiceFilterFromAlpProviderError
- RegionFilterNotAllowedError
- LocationIdFilterNotAllowedError
- PaymenowScProviderIdOrFbCompanyIdMustBeProvided
- PaymenowBannersForProvidersOnly
- PaymenowFeatureDisabled
- PaymenowBannerInfoNotFound
- PaymenowBannerInvalidNavigationUrl
- PaymenowRequestedProvidersIsNotAssigned
- PaymenowEmptyRequestedProviders
- PaymentManagerFeatureDisabled
- PaymentManagerFeatureDisabledForSubscriber
- PaymentSystemCurrentlyUnavailable
- CurrencyNotSupported
- PaymentSystemAccountNotFound
- FeatureIsOff
- EarlyPayFeatureWithoutPaymentManagetFeatureError
- FtpTestError
- AcceptTermsAndConditionsRequestInvalid
- PaymentSystemAccountError
- SendReportToFTP
- SchedulingError
- BadPaymentData
- InvoicesCanNotBeRepaid
- InvoicesCanNotBeRescheduled
- InvalidBillingAddress
- PaymentManagerGeneralSettingsNotFound
- PaymentManagerEInvoiceSettingsNotFound
- BadgeVerificationFailed
- BadgeTempPassEmpty
- BadgeScanRequired
- SolvedIssueSubmitFailed
- SolvedIssueInvalidLocationId
- SolvedIssueInvalidCategoryId
- SolvedIssueInvalidTradeId
- SolvedIssueInvalidPriorityId
- SolvedIssueInvalidSource
- SolvedIssueInvalidProblemCode
- SolvedIssueInvalidType
- SubmitFeedbackErrorWoStatus
- SubmitFeedbackInvalidAnswer
- SubmitFeedbackInvalidTrackingNumber
- SubmitFeedbackInvalidSubscriber
- SubmitFeedbackInvalidScore
- SubmitFeedbackUnsatisfactoryCommentRequired
- SubmitFeedbackInvalidReviewId
- SubmitFeedbackInvalidSetupId
- FeedbackSetupInvalidSetupId
- S3SaveError
- AbsSaveError
- GoodDataLoginFailed
- GoodDataElementUriError
- GoodDataReportResultUriError
- GoodDataReportResultEmpty
- GoodDataDesReportResCountError
- GoodDataDesReportResConvertError
- GoodDataDesDisplayFormAttributeEmpty
- InvalidProposalAmountLimit
- GetApprovalProposalReasonsError
- GetEmailRecipientsError
- GetAssignProposalReasonsError
- ProposalHasBeenVoided
- AssetTypeDuplicateNameError
- AssetTypeDoesntExistError
- AssetTypeFailUpdateRefrigerantPurpose
- AssetTypeDeleteFailed
- ExistingAssetsFoundForAssetType
- CantModifyAssetTypeParentId
- InvalidAssetTypeName
- AssetTypeInheritanceError
- ExistingProposalsFoundForAssetType
- InstallPurchaseDateOverflow
- WOexistsWithSomeAssets
- PartsChangeFailed
- PartsReasonCodeError
- PartsUseDateError
- PartsRefrigerantAlreadyExists
- PartsChargeHistoryAlreadyExists
- PartsNotFound
- BulkPartUseIncorrectWorkOrder
- BulkPartsByIdsNotFound
- BulkPartsMultipleWosError
- BulkPartsIncorrectIsRefrigerantParam
- BulkPartsIsRefrigerantCanNotbeChanged
- BulkPartsReasonCodeChangeError
- BulkPartsInvalidAssetAndReasonCodeParams
- BulkPartsInvalidAssetId
- BulkPartsInvalidInitialChargeCode
- BulkPartsAssetDoesntContainCharge
- BulkPartsIsInventoryFlagError
- BulkPartsLeakAlreadyInProcessError
- BulkPartsInvalidDateRangeError
- BulkPartsMoeNumberRequiredError
- BulkPartsSystemChargeExceeded
- BulkRefrigerantuUageBlocked
- BulkIDsNotBeNull
- BulkPartRemovalNotAllowedOnRetrofitRetireWO
- BulkAddPartUsagesNotAllowedAfterRetrofitRetireCreation
- BulkRetrofitRetireRefrigerantUsageReasonCanNotChanged
- BulkInitialChargeSystemExpansionNotAllowed
- BulkInventoryPartIdCanNotBeChanged
- BulkInventoryLocationIdCanNotBeChanged
- BulkPartsDuplicatedRequest
- BulkChangePartsIncorrectRefrigerantType
- BulkPartsRetroRetireIsInProgressOnThisDate
- BulkPartsCanNotAttachRefrigerantUsageToPlanLeakRecord
- RetrofitRetireCanNotBeRemoved
- RetroRetirePartsCantbeChanged
- BulkPartsInventoryApiFailed
- BulkPartsDuplicated
- BulkPartsWorkOrderInProcessing
- BadNotificationSubscriptionEventType
- RefrigerantUseDateOutOfTheLeakProcessDateRange
- InventoryUsageNotAllowedOnRTrackingConnectedSubAndSubcontractors
- BulkExternalWoCurrentlyDoesntExists
- BulkConnectorOnlyExternalClientAssetsCanBeProcessed
- BulkConnectorOnlyClientAssetsCouldBeProcessed
- LeakRecordHasWrongDateValue
- HasUncompliedLeakRecordInAnoutherWO
- HasUncompletedWOOnAnotherLeakRecord
- OnlyOneAssetWorkOrderPair
- OneLeakRecordMustBeOnCompletedWO
- LeakRecordNotFound
- AssetIDWoIdIsRequired
- BulkPartsReasonCodeRetrofit
- RetrofitRetireWasCancelledNoLeak
- FailedToUpdateLeakEvent
- AddPartUsagesAreNotAllowedInRetireRetrofitDateInterval
- LeakPartUseOnZeroChargeNotAllowed
- BulkLeakRecordsAndAuditRequest
- LeakRecordsDuplicateRequestDetected
- AllLeakRecordFieldsAreRequired
- BulkPartsTheSamePartIdForUpdateAndRemovalPassed
- MlpImportLevelError
- UpdateMlpUserLevelError
- InvalidHolidayName
- DuplicateHolidayName
- HolidaysDeleteFailed
- HolidaysExcludeInsertFailed
- HolidaysUpdateFailed
- HolidaysInsertFailed
- HolidaysExcludeDeleteFailed
- BusinessHoursDeleteFailed
- BusinessHoursUpdateFailed
- BusinessHoursInsertFailed
- InvalidTime
- HolidayForDeleteNotFound
- InvalidChecklistId
- ChecklistNotPopulated
- ChecklistNotAssignedForTransfersWO
- NoLinkBetweenSubscriberAndProvider
- WorkforceCreateContractorError
- InvalidCertificateId
- MaxThresholdExceeded
- MaxTriggerRateExceeded
- LeakPriorityIsRequired
- MissingRTSettings
- ResolutionCodesLimitExceeded
- ResolutionCodesAreRequired
- RootCauseIsRequired
- RootCauseTextIsRequired
- NoAccessToSetRootCauseText
- RootCauseTextMaxLengthExceeded
- ResolutionCodeTextIsRequired
- NoAccessToSetResolutionCodeText
- ResolutionCodeTextMaxLengthExceeded
- ResolutionCodeTextMustBeUnique
- ResolutionCodeWithoutFreeTextMustBeUnique
- PendingResCodesStatusCannotBeChangedToInvoiceableBySubscriber
- ResolutionAndRootCauseCodesAreRequiredToMoveToInvoiceableStatusByProvider
- AssetCategoriesLimitExceeded
- NoAccessToAssetCategories
- AssetCategoriesAreRequired
- InvalidAssetCategoryId
- NoAssetCategoriesOnWorkOrder
- RootCausesMustBeForAllWorkOrderAssetCategories
- RootCauseTextMustBeUnique
- AssetCategoryIsRequired
- MultipleRootCausesMethodMustBeUsed
- ResolutionCodesMustBeForAllWorkOrderAssetCategories
- AssetFilterLocationsLimitExceeded
- UnknownStoreId
- UsesRefrigerantAttributeNotChanged
- AssetTagDuplicate
- AssetTagIdDuplicate
- UnknownEquipmentType
- ParentIdInOtherLocation
- UnknownBrandName
- CARBRequiredManufacturedDate
- CARBRequiredInstallDate
- TradeNotFound
- AssetDoesntExist
- AssetIsNotRefrigerant
- AssetCantContainRefrigerant
- OnlyRackAssetsContainingCircuits
- ConnectorAssetTagIdCanNotBeChanged
- ConnectorAssetLocationIdCanNotBeChanged
- AssetTagCantBeUpdated
- AssetTypeIsNotСonfiguredToManageRTAssets
- RefrigerantTrackingNotAvailableForLocation
- UsesRefrigerantRequiredByAssetTypeSettings
- AssetLocationTradeDoesntCorrespondToWO
- AssetLocationSelectedPMmodule
- UpdateAssetRepairStatusValidation
- HasCircuitsCantBeChange
- HasComponentsCantBeChange
- CircuitCanNotBeConnectedToCircuit
- RTCircuitCanNotBeConnectedToNonRTAsset
- RTComponentCanNotBeConnectedToNonRTAsset
- ComponentCanNotBeConnectedToComponent
- NonRTComponentCanNotBeConnectedToRtAsset
- NonRTCircuitCanNotBeConnectedToRtAsset
- ComponentCanNotBeConnectedToCircuit
- ParentAssetShouldHaveEitherComponentsNorCircuits
- ParentAssetCantHaveComponents
- ParentAssetCantHaveCircuits
- MultipleAssetsFoundForTheRequestedTagId
- InvalidBrandName
- UnknownBrandId
- BrandRestrictedByAssetType
- BrandRestrictedBySubscriber
- BrandsRestrictedBySubscriber
- DeclineWorkOrderFailed
- AcceptWorkOrderFailed
- WorkOrderWasAccepted
- AssetAttachmentsSizeExceeded
- SaveMliAuditReportSetting
- GetMliAuditReportSetting
- SaveMliAuditReportResult
- SaveMliAuditReportSendEmailStatus
- SaveMliAuditReportFilePath
- GetSubscribersEnabledSchedule
- SaveMliAuditInfoError
- TaxValidationAddNewCompanySettingsError
- TaxValidationUpdateCompanySettingsError
- ProjectAssociationError
- GetProjectsInvoiceAmountsError
- TaxCodeNotUniqueError
- FieldLengthIsTooLongError
- SetTaxCodesBulkError
- InvoiceAdditionalApprovalCodeValueError
- BulkUpdateInvoicePaymentError
- InvoiceLineItemFilterDisabled
- InvoiceStatusToRejectProviderNotificationFailed
- SortFieldNotAvailableError
- ContractServiceExist
- ContractServiceCantChangeTrade
- ContractServiceCantChangeCategory
- ContractServiceCantChangeProvider
- ContractServicePMServiceCantChangeTrade
- ContractServicePMServiceCantChangeCategory
- ContractedServiceNameAlreadyExists
- ContractedServiceNameLinkedToRates
- WorkRequestDescriptionIsRequired
- WorkRequestCallDateIsRequired
- WorkRequestIssueIsRequired
- WorkRequestCallDateHasWrongFormat
- WorkRequestScheduledDateHasWrongFormat
- InvalidWorkRequestStatus
- InvalidWorkRequestExtendedStatus
- InvalidWorkRequestCategory
- InvalidWorkRequestPriority
- InvalidWorkRequestCurrency
- InvalidWorkRequestIssueSetup
- InvalidWorkRequestIssueArea
- InvalidWorkRequestAsset
- WorkRequestAttachmentFileNameIsRequired
- WorkRequestAttachmentOriginalNameIsRequired
- WorkRequestIssueProblemCodeIsRequired
- WorkRequestIssueProblemTypeIsRequired
- WorkRequestScheduledDateMustBeGreaterThanCallDate
- InvalidWorkRequestId
- WorkRequestSearchCallDateFromHasWrongFormat
- WorkRequestSearchCallDateToHasWrongFormat
- WorkRequestSearchScheduledDateFromHasWrongFormat
- WorkRequestSearchScheduledDateToHasWrongFormat
- WorkRequestSearchClosedDateFromHasWrongFormat
- WorkRequestSearchClosedDateToHasWrongFormat
- WorkOrderIsAlreadyCreatedForWorkRequest
- WorkRequestIsClosed
- WorkRequestClosedReasonIsRequiredForClosedStatus
- WorkOrderIdIsRequiredForThisClosedReason
- InvalidWorkRequestClosedReason
- WorkRequestClosedReasonIsOnlyForClosedStatus
- InvalidWorkRequestWorkOrderId
- WorkRequestWorkOrderIdIsOnlyForClosedStatus
- WorkRequestWorkOrderIdIsOnlyForCertainClosedReason
- InvalidWorkOrderSourceType
- DeclineReasonIdIsRequired
- DeclineReasonDoesntAllowCustomText
- InvalidDeclineReasonId
- MultipleWorkOrdersForPurchaseNumber
- InvoiceMaterialMakupInvalid
- MaterialMarkUpDiscrepancyReasonShouldBeStated
- MaterialPriceDiscrepancyReasonShouldBeStated
- OtherPriceDiscrepancyReasonShouldBeStated
- SubscriberIdIsNotValid
- FiscalPeriodIsNotValid
- AmountIsNotValid
- AmountFormatIsNotValid
- CategoryMustBeEmpty
- CategoryIsNotValid
- TradeMustBeEmpty
- TradeIsNotValid
- GlCodeMustBeEmpty
- GlCodeIsNotValid
- LocationMustBeEmpty
- LocationIsNotValid
- RegionMustBeEmpty
- RegionIsNotValid
- DistrictMustBeEmpty
- DistrictIsNotValid
- DuplicateData
- PrimaryCategoryMustBeEmpty
- PrimaryCategoryIsNotValid
- CategoryAndExcludedCategoryCannotSimultaneously
- PrimaryCategoryAndExcludedPrimaryCategoryCannotSimultaneously
- TradeAndExcludedTradeCannotSimultaneously
- GlCodeAndExcludedGlCodeCannotSimultaneously
- DuplicateCategories
- DuplicateTrades
- DuplicateGlCodes
- DuplicatePrimaryCategories
- LocationNoteMustBeEmpty
- LocationNoteIsNotValid
- OverlappingCategories
- OverlappingPrimaryCategories
- OverlappingTrades
- OverlappingPrimaryTrades
- OverlappingGlCodes
- OverlappingLocations
- OverlappingRegions
- OverlappingDistricts
- OverlappingLocationNotes
- TaxExemptionErrorApi
- OtherLineItemZeroAmount
- TravelLineItemsNotNegativeValueRequired
- MaterialLineItemsNotNegativeValueRequired
- LaborLineItemsNotNegativeValueRequired
- AdditionalApprovalCodeSetupIdInvalid
- VendorIdIsNotValid
- InvalidBatchId
- InvalidBatchStatusId
- CategoryInUsePMServiceError
- CategoryInUseChecklistError
- CategoryInUseETAMissedAlertError
- CategoryInUseBudgetControl
- CategoryInUseConnector
- CategoryInUseContractedService
- CategoryInUseEDI
- CategoryInUseIVR
- CategoryInUseFeedbackV2
- CategoryInUseProposalApproveReasons
- CategoryInUsePaymentManager
- CategoryInUseProviderAssignments
- CategoryInUseSiteAccess
- CategoryInUseAlerts
- CategoryInUseOpenWOAlert
- CategoryInUseWOAutocopy
- CategoryInUseWorkRequest
- CategoryInUseWO
- CategoryInUseDashboardOverride
- CategoryInUseInvoiceAttributes
- FeatureIsOn
- LocationHierarchyNotFound
- LocationHierarchyLevelNotFound
- LocationHierarchyParentLevelNotFound
- LocationSpaceTypeNotFound
- DuplicateRowByValueKey
- ParentNotFound
- DuplicateSequenceAmongSiblings
- SequenceConflictsWithExistingData
- SequenceMustBeGreaterThanZero
- ValueContainsPathDelimiter
- InitializationWarmupError
type: string
ErrorCode:
description: The code of the first error found
enum:
- NotAllowed
- EmptyProvider
- InvalidProviderId
- UnknownProvider
- ProviderAlreadyExists
- ProviderIdNotExists
- TimeoutExpiredError
- EmptyContract
- ContractUndefined
- EmptySubscriber
- InvalidSubscriberId
- UnknownSubscriber
- InactiveSubscriber
- EmptySubscriberId
- SubscriberIdNotExists
- InternalError
- DataNotFound
- BadRequest
- UnAuthorized
- UnSupportedApplication
- SubsidiaryUserDisabled
- EmptyLocation
- InvalidLocationId
- UnknownLocation
- LocationNotBelongsToSubscriber
- EmptyLocationCountry
- LocationAlreadyExists
- InvalidStoreId
- LocationEmptyState
- NoAccessToLocation
- LocationAddressValidationError
- LocationAddressRequestValidationError
- InvalidLocationNoteHeader
- NoAccessToUpdateProtectedNote
- InvalidBusinessHoursFormat
- WorkingHoursIntersect
- InvalidDayOfWeek
- DuplicateDayOfWeek
- InvalidBusinessHoursInitialSetup
- BusinessHoursIsEmpty
- InvalidHolidayRepeatByType
- EmptyHolidayListOfDays
- EmptyHolidayListOfMonths
- InvalidHolidayMonthName
- InvalidHolidayNameLength
- InvalidHolidayRepeatEvery
- DuplicateMonth
- InvalidHolidayFrequency
- InvalidHolidayStartDate
- InvalidCloseAllDay
- HolidayDoesNotExist
- InvalidFormatParameter
- InvalidLocationCity
- InvalidLocationZip
- InvalidLocationLatitude
- InvalidLocationLongitude
- InvalidLocationEmail
- InvalidLocationName
- InvalidLocationState
- InvalidLocationAddlAddress
- InvalidLocationMainAddress
- InvalidLocationCountry
- InvalidLocationRegion
- InvalidLocationDistrict
- InvalidLocationPhone
- InvalidLocationContact
- InvalidLocationFaxNumber
- LocationCountryNotFound
- LocationStateNotFound
- LocationCityNotFound
- LocationIdNotExists
- InvalidLocationEmailLength
- LocationStateIdNotFound
- IncorrectCombinationStateAndStateId
- InvalidSubscriberIds
- InvalidLocalizationSettings
- LandlordResponsibilityNotFound
- LandlordResponsibilityAlreadyExists
- EmptyLocationIds
- AttachmentNotExist
- InvalidTradeId
- InvalidCategoryId
- InvalidOverrideCategoryId
- InvalidOverridePriorityId
- LeaseNoteExceedMaxLength
- InvalidOverrideProviderRank
- InvalidOverrideNTE
- DuplicateRows
- InvalidPriorityId
- LocationNotFound
- EmptyTrade
- InvalidTrade
- TradeNotBelongsToSubscriber
- InvalidPrimaryTrade
- InvalidTradeForSubscriber
- InvalidCategoryForSubscriber
- GlCodeAlreadyExists
- GlCodeNotExists
- InvalidGlCodeUpdate
- EmptyGlCode
- TradeAlreadyExists
- InvalidNTETrade
- TradeNotExists
- TradeAlreadyInUse
- TradeWithTheSameNameHasBeenDeleted
- TradeInUsePMServices
- TradeInUseProposalError
- TradeInUseRFPError
- TradeInUseChecklistError
- TradeInUseBudgetControl
- TradeInUseGlCode
- TradeInUseDynamicProviderAssignments
- TradeInUseInvoice
- TradeInUseLandlordResponsibilities
- TradeInUseWO
- TradeInUseEquipmentType
- TradeInUseRFP
- TradeInUseConnector
- TradeInUseContractedService
- TradeInUseIVR
- TradeInUseSiteAccess
- TradeInUseGLCodes
- TradeInUseCIWO
- TradeInUseOrganizationPermissions
- TradeСreationError
- EmptyUser
- EmptyCreatedBy
- InvalidUserName
- NotProviderUser
- UserHasNoPermissions
- RestrictedAccount
- UserAlreadyExists
- UserHasNoPermissionsEditWO
- UserEmailAddressIsMissing
- UserIsNotRTAdmin
- InvalidSubsriberProviderId
- LanguageNameNotFound
- InvalidLanguageId
- LanguageIdNotFound
- UseBothSubscriberIdProviderId
- EmptyWoProblem
- InvalidWoProblemSource
- InvalidWoProblemDescription
- InvalidWoProblemCode
- InvalidWoStatus
- InvalidWoNte
- InvalidWoCaller
- InvalidWoCallDate
- InvalidWoScheduledDate
- InvalidWoScheduledDateGreaterThanMaxAllowed
- EmptyWoCategory
- InvalidWoCategory
- EmptyWoPriority
- InvalidWoPriority
- InvalidWoCurrency
- InvalidWoSetupId
- AttachmentsRequired
- InvalidWoIdentifier
- EquipmentRequired
- WoNteOverflow
- InvalidWoPurchaseNumber
- InvalidWoStateForUpdate
- InvalidPagingParameter
- InvalidWoNumber
- CheckInDenied
- CheckOutDenied
- WoScheduledDateLessThenReassignDate
- WoScheduledDateLessThenCallDate
- InvalidWoActionReason
- EmptySubscriberProperty
- WorkOrderUpdateError
- MissedWoNteDetails
- InvalidLinkedWoIdentifier
- WoIsOnHold
- InvalidWoTrade
- InvalidStarScore
- WorkOrderAlreadyRated
- AttachmentThumbnailNotAvailable
- InvalidWoIdentifierOrPin
- InvalidTimeZoneHeader
- RefrigerantWasUsedShouldBeYesOrNo
- CheckInDeniedOutsideGeolocation
- CheckOutDeniedOutsideGeolocation
- LeakDetectorAuditShouldBeCreated
- CheckInOutPremature
- WorkOrderAttachmentsSizeExceeded
- WorkOrderNotFound
- WorkOrderCreateError
- InvalidWoProjectedCompletionDate
- InvalidFollowUpWo
- InvalidWeatherEventId
- InvalidSiteAuditLinkedWo
- InvalidSetupId
- IssueListNotFound
- InvalidIssueListField
- SiteAuditCompleted
- CheckSiteAuditError
- SaveSiteAuditError
- RemoveSiteAuditError
- InactiveTemplateType
- SiteAuditNotFound
- SiteAuditUpdateError
- InvalidSiteAuditParameters
- InvalidAdditionalApprovalCode
- InvalidAdditionalApprovalCodeValue
- AdditionalApprovalCodeIsDisabled
- InvalidOtherDesc
- InvalidTax2Name
- InvoiceInconsistentAmounts
- InvoiceInvalidTotal
- InvoiceTotalGreaterNte
- InvoiceExists
- CreatingInvoiceError
- DuplInvNumber
- InvoiceTotalNull
- InvComplDateNull
- InvDateLessComplDate
- InvoiceNotAuto
- ESignatureRequired
- InvWoNotFound
- InvWrongWoCurr
- InvWoCurrNotFound
- InvoicingDisabled
- InvCreationUnexpectedRes
- InvoiceInvalidLaborAmount
- InvoiceInvalidMaterialAmount
- InvDateOld
- InvDateGreater
- InvoiceMaterialDescriptionLengthOverflow
- InvoiceTaxNotValidated
- InvoiceMaterialPartNumberLengthOverflow
- TaxValidationError
- TaxExemptionError
- InvalidInvoiceNumber
- GetApprovalLevelsError
- InvoiceAddUsersToMliLevelsError
- InvoiceAddDeleteLocationsToMliLevelUserError
- InvoiceUpdateMLiLevelError
- InvoiceDeleteMliLevelError
- InvoiceDeleteUsersFromMliLevelError
- ApprovalLevelNameLengthOverflow
- GstTaxError
- Tax2Error
- GetApprovalLevelsAndLocationsByUserError
- GetAssignedUserShortInfoError
- AssignAllLocationsToApprovalLevelAndUserError
- GetLocationsForApprovalLevelAndAssignedUserError
- GetLocationsBySubscriberError
- AssignUserWithLocationsToApprovalLevelError
- ReAssignUserWithLocationsToNewApprovalLevelError
- ReAssignLocationsToApprovalLevelAndUserError
- OutstandingBalance
- InvoiceTaxDetailsEmpty
- InvoiceTaxDetailsIncorrectSum
- MultipleUsersForLocationIsNotAllowed
- UserAssignedToOtherLevel
- UserDoesNotExist
- LaborLineItemRequired
- MaterialLineItemRequired
- InvoiceDoesntExist
- InvoiceStarUnstarFailed
- InvoiceBatchUpdateInvalidInvoiceStatusError
- InvoiceBatchUpdateLimitExceededError
- InvoiceNotAvailableForCurrentUser
- InvoiceBatchUpdateInvalidRuleSetStructure
- InvoiceBatchUpdateInvalidMliStructure
- InvoiceBatchUpdateStatusError
- InvoiceMaterialUnitTypeInvalid
- ExistingBatchNumber
- InvoiceResolutionTextRequired
- GetInvoiceDefaultApprovalCodesError
- InvoiceInvalidTravelAmount
- InvoiceTravelDescriptionLengthOverflow
- InvoiceTravelUnitTypeInvalid
- TravelLineItemRequired
- TravelDetailsDisabled
- OnOffShoreDisabled
- InvoiceInvalidLaborCount
- InvoiceInvalidMaterialCount
- InvoiceInvalidTravelCount
- SubscriberNotRegisteredForTaxValidation
- ManyDecimalsInAmountError
- DecimalPartQstTaxError
- LaborRatesDiscrepancy
- PayInvoicesError
- InvoiceNumberRequirementsError
- InvoiceNumberIncorrect
- InvoiceNumberRegExPatternError
- GetInvoicesPendingApprovalByLocationError
- ReAssignInvoicesToUsersFailed
- ReAssignInvoicesUsersMatched
- GetUsersForReassignInvoiceError
- InvalidTimeRangeActivity
- OutsourcedSourceInvoiceNotFound
- OthersLineItemsDisabled
- InvoiceInvalidOtherAmount
- InvoiceInvalidOtherCount
- InvoiceOtherDescriptionLengthOverflow
- OtherLineItemRequired
- OtherLineItemsNotNegativeValueRequired
- InvalidLaborSkillLevel
- InvalidLaborType
- InvalidTechnicianQuantity
- GetInvoicesCommonCategoriesError
- InvoiceExplainDisputeEmpty
- InvoiceAdditionalApprovalCodeHeaderError
- TemplateParseSuccess
- TemplateIncorrectHeaderError
- TemplateEmptyTemplateError
- TemplateWrongFieldsCountError
- TemplateFieldNotFoundError
- TemplateFieldRequiredError
- TemplateParseIntError
- TemplateFieldSizeError
- TemplateInvalidValueError
- TemplateFieldFormatError
- TemplateFieldMaxRangeError
- TemplateFieldMinRangeError
- TemplateProviderNotEntered
- TemplateInvalidSubscriberError
- TemplateVendorNotFoundError
- TemplateMissedProviderError
- TemplateProviderNotFoundError
- TemplateProviderSubsccriberLinkError
- TemplateTradeDispatchRankError
- TemplateInvalidTradeForSubscriberError
- TemplateStoreNotFoundError
- TemplateNotStoresForStateError
- TemplateNotStoresForCountryError
- TemplateNotStoresForDistrictError
- TemplateNotStoresForRegionError
- TemplateMultiplePimaryProvidersForTradeStoreError
- TemplateDuplicatePrimaryRelationshipError
- TemplateAmbiguousDataError
- TemplateIncorrectSubscriber
- TemplateDuplicateRanking
- TemplateLongitudeRangeError
- TemplateLatitudeRangeError
- InvoiceMaterialPartNameLengthOverflow
- TemplateTradeLocationExclusion
- TemplateInvalidStateError
- TemplateMissedSubscriberError
- TemplateMissedStoreIdError
- TemplateInvalidSubscriberIdError
- TemplateOpenCloseDateError
- TemplateInvalidCountryError
- TemplateInvalidStateForCountryError
- TemplateInvalidLocationTypeError
- TemplateMissingFullAndShortNameError
- TemplateMissingCountryError
- TemplateDuplicatedDataError
- TemplateParentLocationNotFoundError
- TemplateParseDateTimeError
- TemplateParseDecimalError
- TemplateSquareValueRangeError
- TemplateInvalidSquareMeasureError
- TemplateTypeLabelCanNotBeUpdatedError
- TemplateTypeLabelHaveToBeLocationForNotInventory
- TemplateInvalidPrimarySupplyLocation
- TemplateInvalidHomestoreLocationNumber
- TemplateErrorDuringCreation
- TemplateLocationNotFoundError
- TemplateDuplicatedLocationFoundError
- TemplateInvalidLocationHeaderError
- TemplateDuplicatedLocationHeaderError
- TemplateHeaderContainsEmptyFieldsError
- TemplateLocHeadersShortHeaderError
- TemplateHeaderContainsDuplicatesError
- TemplateLocationNotesStoreIdFieldLengthError
- TemplateLocationNotesNoteValueFieldLengthError
- TemplateErrorInvalidZipCode
- TemplateMissingLocationNoteHeader
- TemplateMissingLocationNoteIdHeader
- TemplateInvalidSecondarySupplyLocation
- TemplateLocationWasNotCreated
- TemplateTruckNameIsEmpty
- TemplateWrongFormat
- TemplateSubscriberNotFound
- TemplateDuplicatedLocationHeaders
- TemplateInvalidHeaders
- TemplateInvalidPhoneError
- TemplateDuplicateTelecomRecordError
- TemplateTelecomRecordExistsError
- TemplateInvalidCategory
- TemplateDifferentRanksForProviderAssignments
- TemplateDuplicateRankError
- TemplateProviderNonCompliant
- TemplateLocationIsClosed
- TemplateProviderWarning
- TemplateMultipleProvidersForTradeStoreError
- EmptyRequest
- InvalidNumberOfParameters
- InvoiceOtherUnitTypeInvalid
- EmptyLocationOrTradeList
- RequestSubscriberIdDoesntMatchUserSubscriberId
- StoreIdRequiredError
- InvalidUserIdError
- InvalidStoreIdError
- AmbigiousError
- MliHierarchyFiledsCountError
- MliHierarchyMaxUserNameError
- MliHierarchyDuplicateUserError
- MLiHirarchyUserExistInOtherLevelError
- MissingLevelsError
- DuplicateApprovalLevelsError
- InvalidMliLocations
- InvalidMlpLocations
- ApprovalLevelUsedInRulsetError
- GLCodeAmbiguous
- GlCodeInvalidResponce
- GetRuleSetListError
- RuleSetDuplicateNameError
- RuleSetDuplicateActionError
- RuleSetConflictedActionError
- RuleSetRuleSetDoesNotExistsError
- RuleSetTradeDoesNotExistError
- RuleSetCategoryDoesNotExistError
- RuleSetMliLevelDoesNotExistError
- GetRuleSet
- CreateUpdateRuleSetError
- DeleteRuleSet
- GetRuleSetCategoriesTradesCountError
- GetRuleSetByInvoice
- GetCategoryTradeIdsAreSelectedError
- ProposalAboveMlpLimitError
- ProposalNextLevelHasNoAvailableActionsError
- DefaultRuleSetError
- RuleSetActionEndStatusError
- RuleSetRejectActionEmptyForwardToError
- UserFilterGetError
- UserFilterCreateUpdateError
- UserFilterDeleteError
- UserFilterSetAsDefaultError
- InvoiceFilterFromAlpProviderError
- RegionFilterNotAllowedError
- LocationIdFilterNotAllowedError
- PaymenowScProviderIdOrFbCompanyIdMustBeProvided
- PaymenowBannersForProvidersOnly
- PaymenowFeatureDisabled
- PaymenowBannerInfoNotFound
- PaymenowBannerInvalidNavigationUrl
- PaymenowRequestedProvidersIsNotAssigned
- PaymenowEmptyRequestedProviders
- PaymentManagerFeatureDisabled
- PaymentManagerFeatureDisabledForSubscriber
- PaymentSystemCurrentlyUnavailable
- CurrencyNotSupported
- PaymentSystemAccountNotFound
- FeatureIsOff
- EarlyPayFeatureWithoutPaymentManagetFeatureError
- FtpTestError
- AcceptTermsAndConditionsRequestInvalid
- PaymentSystemAccountError
- SendReportToFTP
- SchedulingError
- BadPaymentData
- InvoicesCanNotBeRepaid
- InvoicesCanNotBeRescheduled
- InvalidBillingAddress
- PaymentManagerGeneralSettingsNotFound
- PaymentManagerEInvoiceSettingsNotFound
- BadgeVerificationFailed
- BadgeTempPassEmpty
- BadgeScanRequired
- SolvedIssueSubmitFailed
- SolvedIssueInvalidLocationId
- SolvedIssueInvalidCategoryId
- SolvedIssueInvalidTradeId
- SolvedIssueInvalidPriorityId
- SolvedIssueInvalidSource
- SolvedIssueInvalidProblemCode
- SolvedIssueInvalidType
- SubmitFeedbackErrorWoStatus
- SubmitFeedbackInvalidAnswer
- SubmitFeedbackInvalidTrackingNumber
- SubmitFeedbackInvalidSubscriber
- SubmitFeedbackInvalidScore
- SubmitFeedbackUnsatisfactoryCommentRequired
- SubmitFeedbackInvalidReviewId
- SubmitFeedbackInvalidSetupId
- FeedbackSetupInvalidSetupId
- S3SaveError
- AbsSaveError
- GoodDataLoginFailed
- GoodDataElementUriError
- GoodDataReportResultUriError
- GoodDataReportResultEmpty
- GoodDataDesReportResCountError
- GoodDataDesReportResConvertError
- GoodDataDesDisplayFormAttributeEmpty
- InvalidProposalAmountLimit
- GetApprovalProposalReasonsError
- GetEmailRecipientsError
- GetAssignProposalReasonsError
- ProposalHasBeenVoided
- AssetTypeDuplicateNameError
- AssetTypeDoesntExistError
- AssetTypeFailUpdateRefrigerantPurpose
- AssetTypeDeleteFailed
- ExistingAssetsFoundForAssetType
- CantModifyAssetTypeParentId
- InvalidAssetTypeName
- AssetTypeInheritanceError
- ExistingProposalsFoundForAssetType
- InstallPurchaseDateOverflow
- WOexistsWithSomeAssets
- PartsChangeFailed
- PartsReasonCodeError
- PartsUseDateError
- PartsRefrigerantAlreadyExists
- PartsChargeHistoryAlreadyExists
- PartsNotFound
- BulkPartUseIncorrectWorkOrder
- BulkPartsByIdsNotFound
- BulkPartsMultipleWosError
- BulkPartsIncorrectIsRefrigerantParam
- BulkPartsIsRefrigerantCanNotbeChanged
- BulkPartsReasonCodeChangeError
- BulkPartsInvalidAssetAndReasonCodeParams
- BulkPartsInvalidAssetId
- BulkPartsInvalidInitialChargeCode
- BulkPartsAssetDoesntContainCharge
- BulkPartsIsInventoryFlagError
- BulkPartsLeakAlreadyInProcessError
- BulkPartsInvalidDateRangeError
- BulkPartsMoeNumberRequiredError
- BulkPartsSystemChargeExceeded
- BulkRefrigerantuUageBlocked
- BulkIDsNotBeNull
- BulkPartRemovalNotAllowedOnRetrofitRetireWO
- BulkAddPartUsagesNotAllowedAfterRetrofitRetireCreation
- BulkRetrofitRetireRefrigerantUsageReasonCanNotChanged
- BulkInitialChargeSystemExpansionNotAllowed
- BulkInventoryPartIdCanNotBeChanged
- BulkInventoryLocationIdCanNotBeChanged
- BulkPartsDuplicatedRequest
- BulkChangePartsIncorrectRefrigerantType
- BulkPartsRetroRetireIsInProgressOnThisDate
- BulkPartsCanNotAttachRefrigerantUsageToPlanLeakRecord
- RetrofitRetireCanNotBeRemoved
- RetroRetirePartsCantbeChanged
- BulkPartsInventoryApiFailed
- BulkPartsDuplicated
- BulkPartsWorkOrderInProcessing
- BadNotificationSubscriptionEventType
- RefrigerantUseDateOutOfTheLeakProcessDateRange
- InventoryUsageNotAllowedOnRTrackingConnectedSubAndSubcontractors
- BulkExternalWoCurrentlyDoesntExists
- BulkConnectorOnlyExternalClientAssetsCanBeProcessed
- BulkConnectorOnlyClientAssetsCouldBeProcessed
- LeakRecordHasWrongDateValue
- HasUncompliedLeakRecordInAnoutherWO
- HasUncompletedWOOnAnotherLeakRecord
- OnlyOneAssetWorkOrderPair
- OneLeakRecordMustBeOnCompletedWO
- LeakRecordNotFound
- AssetIDWoIdIsRequired
- BulkPartsReasonCodeRetrofit
- RetrofitRetireWasCancelledNoLeak
- FailedToUpdateLeakEvent
- AddPartUsagesAreNotAllowedInRetireRetrofitDateInterval
- LeakPartUseOnZeroChargeNotAllowed
- BulkLeakRecordsAndAuditRequest
- LeakRecordsDuplicateRequestDetected
- AllLeakRecordFieldsAreRequired
- BulkPartsTheSamePartIdForUpdateAndRemovalPassed
- MlpImportLevelError
- UpdateMlpUserLevelError
- InvalidHolidayName
- DuplicateHolidayName
- HolidaysDeleteFailed
- HolidaysExcludeInsertFailed
- HolidaysUpdateFailed
- HolidaysInsertFailed
- HolidaysExcludeDeleteFailed
- BusinessHoursDeleteFailed
- BusinessHoursUpdateFailed
- BusinessHoursInsertFailed
- InvalidTime
- HolidayForDeleteNotFound
- InvalidChecklistId
- ChecklistNotPopulated
- ChecklistNotAssignedForTransfersWO
- NoLinkBetweenSubscriberAndProvider
- WorkforceCreateContractorError
- InvalidCertificateId
- MaxThresholdExceeded
- MaxTriggerRateExceeded
- LeakPriorityIsRequired
- MissingRTSettings
- ResolutionCodesLimitExceeded
- ResolutionCodesAreRequired
- RootCauseIsRequired
- RootCauseTextIsRequired
- NoAccessToSetRootCauseText
- RootCauseTextMaxLengthExceeded
- ResolutionCodeTextIsRequired
- NoAccessToSetResolutionCodeText
- ResolutionCodeTextMaxLengthExceeded
- ResolutionCodeTextMustBeUnique
- ResolutionCodeWithoutFreeTextMustBeUnique
- PendingResCodesStatusCannotBeChangedToInvoiceableBySubscriber
- ResolutionAndRootCauseCodesAreRequiredToMoveToInvoiceableStatusByProvider
- AssetCategoriesLimitExceeded
- NoAccessToAssetCategories
- AssetCategoriesAreRequired
- InvalidAssetCategoryId
- NoAssetCategoriesOnWorkOrder
- RootCausesMustBeForAllWorkOrderAssetCategories
- RootCauseTextMustBeUnique
- AssetCategoryIsRequired
- MultipleRootCausesMethodMustBeUsed
- ResolutionCodesMustBeForAllWorkOrderAssetCategories
- AssetFilterLocationsLimitExceeded
- UnknownStoreId
- UsesRefrigerantAttributeNotChanged
- AssetTagDuplicate
- AssetTagIdDuplicate
- UnknownEquipmentType
- ParentIdInOtherLocation
- UnknownBrandName
- CARBRequiredManufacturedDate
- CARBRequiredInstallDate
- TradeNotFound
- AssetDoesntExist
- AssetIsNotRefrigerant
- AssetCantContainRefrigerant
- OnlyRackAssetsContainingCircuits
- ConnectorAssetTagIdCanNotBeChanged
- ConnectorAssetLocationIdCanNotBeChanged
- AssetTagCantBeUpdated
- AssetTypeIsNotСonfiguredToManageRTAssets
- RefrigerantTrackingNotAvailableForLocation
- UsesRefrigerantRequiredByAssetTypeSettings
- AssetLocationTradeDoesntCorrespondToWO
- AssetLocationSelectedPMmodule
- UpdateAssetRepairStatusValidation
- HasCircuitsCantBeChange
- HasComponentsCantBeChange
- CircuitCanNotBeConnectedToCircuit
- RTCircuitCanNotBeConnectedToNonRTAsset
- RTComponentCanNotBeConnectedToNonRTAsset
- ComponentCanNotBeConnectedToComponent
- NonRTComponentCanNotBeConnectedToRtAsset
- NonRTCircuitCanNotBeConnectedToRtAsset
- ComponentCanNotBeConnectedToCircuit
- ParentAssetShouldHaveEitherComponentsNorCircuits
- ParentAssetCantHaveComponents
- ParentAssetCantHaveCircuits
- MultipleAssetsFoundForTheRequestedTagId
- InvalidBrandName
- UnknownBrandId
- BrandRestrictedByAssetType
- BrandRestrictedBySubscriber
- BrandsRestrictedBySubscriber
- DeclineWorkOrderFailed
- AcceptWorkOrderFailed
- WorkOrderWasAccepted
- AssetAttachmentsSizeExceeded
- SaveMliAuditReportSetting
- GetMliAuditReportSetting
- SaveMliAuditReportResult
- SaveMliAuditReportSendEmailStatus
- SaveMliAuditReportFilePath
- GetSubscribersEnabledSchedule
- SaveMliAuditInfoError
- TaxValidationAddNewCompanySettingsError
- TaxValidationUpdateCompanySettingsError
- ProjectAssociationError
- GetProjectsInvoiceAmountsError
- TaxCodeNotUniqueError
- FieldLengthIsTooLongError
- SetTaxCodesBulkError
- InvoiceAdditionalApprovalCodeValueError
- BulkUpdateInvoicePaymentError
- InvoiceLineItemFilterDisabled
- InvoiceStatusToRejectProviderNotificationFailed
- SortFieldNotAvailableError
- ContractServiceExist
- ContractServiceCantChangeTrade
- ContractServiceCantChangeCategory
- ContractServiceCantChangeProvider
- ContractServicePMServiceCantChangeTrade
- ContractServicePMServiceCantChangeCategory
- ContractedServiceNameAlreadyExists
- ContractedServiceNameLinkedToRates
- WorkRequestDescriptionIsRequired
- WorkRequestCallDateIsRequired
- WorkRequestIssueIsRequired
- WorkRequestCallDateHasWrongFormat
- WorkRequestScheduledDateHasWrongFormat
- InvalidWorkRequestStatus
- InvalidWorkRequestExtendedStatus
- InvalidWorkRequestCategory
- InvalidWorkRequestPriority
- InvalidWorkRequestCurrency
- InvalidWorkRequestIssueSetup
- InvalidWorkRequestIssueArea
- InvalidWorkRequestAsset
- WorkRequestAttachmentFileNameIsRequired
- WorkRequestAttachmentOriginalNameIsRequired
- WorkRequestIssueProblemCodeIsRequired
- WorkRequestIssueProblemTypeIsRequired
- WorkRequestScheduledDateMustBeGreaterThanCallDate
- InvalidWorkRequestId
- WorkRequestSearchCallDateFromHasWrongFormat
- WorkRequestSearchCallDateToHasWrongFormat
- WorkRequestSearchScheduledDateFromHasWrongFormat
- WorkRequestSearchScheduledDateToHasWrongFormat
- WorkRequestSearchClosedDateFromHasWrongFormat
- WorkRequestSearchClosedDateToHasWrongFormat
- WorkOrderIsAlreadyCreatedForWorkRequest
- WorkRequestIsClosed
- WorkRequestClosedReasonIsRequiredForClosedStatus
- WorkOrderIdIsRequiredForThisClosedReason
- InvalidWorkRequestClosedReason
- WorkRequestClosedReasonIsOnlyForClosedStatus
- InvalidWorkRequestWorkOrderId
- WorkRequestWorkOrderIdIsOnlyForClosedStatus
- WorkRequestWorkOrderIdIsOnlyForCertainClosedReason
- InvalidWorkOrderSourceType
- DeclineReasonIdIsRequired
- DeclineReasonDoesntAllowCustomText
- InvalidDeclineReasonId
- MultipleWorkOrdersForPurchaseNumber
- InvoiceMaterialMakupInvalid
- MaterialMarkUpDiscrepancyReasonShouldBeStated
- MaterialPriceDiscrepancyReasonShouldBeStated
- OtherPriceDiscrepancyReasonShouldBeStated
- SubscriberIdIsNotValid
- FiscalPeriodIsNotValid
- AmountIsNotValid
- AmountFormatIsNotValid
- CategoryMustBeEmpty
- CategoryIsNotValid
- TradeMustBeEmpty
- TradeIsNotValid
- GlCodeMustBeEmpty
- GlCodeIsNotValid
- LocationMustBeEmpty
- LocationIsNotValid
- RegionMustBeEmpty
- RegionIsNotValid
- DistrictMustBeEmpty
- DistrictIsNotValid
- DuplicateData
- PrimaryCategoryMustBeEmpty
- PrimaryCategoryIsNotValid
- CategoryAndExcludedCategoryCannotSimultaneously
- PrimaryCategoryAndExcludedPrimaryCategoryCannotSimultaneously
- TradeAndExcludedTradeCannotSimultaneously
- GlCodeAndExcludedGlCodeCannotSimultaneously
- DuplicateCategories
- DuplicateTrades
- DuplicateGlCodes
- DuplicatePrimaryCategories
- LocationNoteMustBeEmpty
- LocationNoteIsNotValid
- OverlappingCategories
- OverlappingPrimaryCategories
- OverlappingTrades
- OverlappingPrimaryTrades
- OverlappingGlCodes
- OverlappingLocations
- OverlappingRegions
- OverlappingDistricts
- OverlappingLocationNotes
- TaxExemptionErrorApi
- OtherLineItemZeroAmount
- TravelLineItemsNotNegativeValueRequired
- MaterialLineItemsNotNegativeValueRequired
- LaborLineItemsNotNegativeValueRequired
- AdditionalApprovalCodeSetupIdInvalid
- VendorIdIsNotValid
- InvalidBatchId
- InvalidBatchStatusId
- CategoryInUsePMServiceError
- CategoryInUseChecklistError
- CategoryInUseETAMissedAlertError
- CategoryInUseBudgetControl
- CategoryInUseConnector
- CategoryInUseContractedService
- CategoryInUseEDI
- CategoryInUseIVR
- CategoryInUseFeedbackV2
- CategoryInUseProposalApproveReasons
- CategoryInUsePaymentManager
- CategoryInUseProviderAssignments
- CategoryInUseSiteAccess
- CategoryInUseAlerts
- CategoryInUseOpenWOAlert
- CategoryInUseWOAutocopy
- CategoryInUseWorkRequest
- CategoryInUseWO
- CategoryInUseDashboardOverride
- CategoryInUseInvoiceAttributes
- FeatureIsOn
- LocationHierarchyNotFound
- LocationHierarchyLevelNotFound
- LocationHierarchyParentLevelNotFound
- LocationSpaceTypeNotFound
- DuplicateRowByValueKey
- ParentNotFound
- DuplicateSequenceAmongSiblings
- SequenceConflictsWithExistingData
- SequenceMustBeGreaterThanZero
- ValueContainsPathDelimiter
- InitializationWarmupError
type: string
readOnly: true
ErrorMessage:
description: The description of all errors.
type: string
Data:
$ref: '#/components/schemas/System.Object'
description: "Optional\n Gets or Sets the Data object."
ServiceChannel.Services.Messaging.Assets.WarrantyProvider:
description: Object containing warranty provider details.
type: object
properties:
Type:
description: 'Defines the provider type responsible for warranty services. **Possible values**: `0` - Fixed provider, `1`- Primary rank provider, `2` - Fixed rank provider.'
enum:
- Fixed
- PrimaryRanked
- FixedRanked
type: string
Value:
format: int32
description: Provider type value. Displays provider ID for the fixed provider type; provider rank number — from 1 to 100 — for the fixed rank type; 1 for a primary rank provider.
type: integer
ProviderName:
description: Name of the provider who is in charge of warranty services.
type: string
ServiceChannel.Services.WebApi.Models.Request.WorkOrder.ReassignWorkOrder.ReassignWorkOrderRequest:
description: Reassign WorkOrder To other Provider
required:
- ReasonId
- ProviderId
type: object
properties:
WorkorderId:
format: int32
description: Work order id.
type: integer
Trade:
description: Trade
type: string
Problem:
description: Problem Description.
type: string
ProblemCode:
description: Problem Code.
type: string
CurrencyId:
format: int32
description: Optional, by default current Work Order Currency
type: integer
Nte:
format: double
description: Optional Nte value, by default current Work Order NTE
type: number
GlCode:
description: Optional GL code value
type: string
ReasonId:
format: int32
description: Required, Reassignment reason Id.
type: integer
ProviderId:
format: int32
description: Required, Provider id to assign.
type: integer
Category:
description: Category.
type: string
Priority:
description: Priority
type: string
Note:
description: Note
type: string
ProcessName:
description: ProcessName
type: string
RequestEmail:
description: Request email
type: string
RequestEmailCopy:
description: Request email copy to
type: string
NotifyProvider:
description: 'Notify Provider: send email if true'
default: false
type: boolean
AdditionalApprovalCodes:
description: Additional approval codes
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.WorkOrder.ReassignWorkOrder.AdditionalApprovalCodeRequest'
ScheduledDate:
format: date-time
description: Work order scheduled date
type: string
OriginalETA:
format: date-time
description: Original ETA
type: string
RefreshApprovalCodes:
description: 'If true: update Approval Codes'
default: false
type: boolean
RecallWorkOrderId:
format: int32
description: Original work order Id
type: integer
LocationId:
format: int32
description: WO location id
type: integer
PurchaseOrder:
description: Purchase Order
type: string
ApiRequest:
description: API request
default: false
type: boolean
Actor:
description: Optional, Actor
type: string
LabelId:
format: int32
type: integer
Label:
type: string
DeleteLabel:
default: false
type: boolean
CategoryId:
format: int32
type: integer
LabelIds:
type: array
items:
format: int32
type: integer
DecisionAnswer:
type: object
properties:
Id:
type: string
Answer:
type: string
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.WorkOrderStatus:
description: Status of a work order.
type: object
properties:
Primary:
description: Primary work order status value, you can pass status id or its name here. To get all subscriber's statuses see [Statuses] in Statuses section
type: string
Extended:
description: Extended status value
type: string
CanCreateInvoice:
description: True if invoice creation is allowed
default: false
type: boolean
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.LocationNote:
description: Object with the location note details.
type: object
properties:
Id:
format: int32
description: Location note numeric identifier.
type: integer
HeaderId:
format: int32
description: Unique location note header identifier.
type: integer
ServiceChannel.Services.Messaging.Users.DashboardInfo:
description: Dashboard details object.
type: object
properties:
Id:
format: int32
description: Unique dashboard identifier.
type: integer
Name:
description: Dashboard name.
type: string
RedirectToDashboard:
description: Defines whether a subscriber user is redirected to a dashboard once they log in.
default: false
type: boolean
ServiceChannel.Services.Messaging.Workorders.CheckInIActivity:
type: object
properties:
Id:
format: int32
type: integer
Date:
format: date-time
type: string
Dto:
format: date-time
type: string
User:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Users.UserInfo'
CallerId:
type: string
Action:
type: string
StatusChangedTo:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkorderStatusDescriptor'
WorkType:
type: string
StatusNew:
type: string
Dnis:
type: string
CheckInOutType:
enum:
- Common
- Ivr
- Gps
type: string
Source:
type: string
SignatureAttachmentId:
format: int32
type: integer
SignatureAttachmentName:
type: string
SignatureAttachmentFullName:
type: string
UnableObtainSignatureNoteId:
format: int64
type: integer
UnableObtainSignatureNote:
type: string
UnableObtainSignatureNoteDocumentId:
type: string
ServiceChannel.Services.Messaging.Invoices.InvoiceOther:
description: The invoices material
type: object
properties:
Id:
format: int32
type: integer
InvoiceId:
format: int32
description: Invoice identifier.
type: integer
Description:
description: Get or set description.
type: string
Type:
description: Get or set type of charge.
type: string
Amount:
format: double
description: Get or set the amount of money that is charged.
type: number
UnitType:
format: byte
description: Get or set the unit of measure
type: string
UnitPrice:
format: double
description: Get or set the price of unit
type: number
Quantity:
format: double
description: Get or set the quantity
type: number
AgreedUnitPrice:
format: double
description: Get or set the AgreedUnitPrice
type: number
UnitPriceDiscrepancyReason:
description: UnitPriceDiscrepancyReason
type: string
PriceListOtherChargeId:
format: int32
description: Get or set the PriceListOtherChargeId
type: integer
IsUnitPriceDiscrepancy:
description: Get IsUnitPriceDiscrepancy
default: false
type: boolean
readOnly: true
ApprovalCodeGroup:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Invoices.InvoiceApprovalCodeGroup'
isNontaxableVATEU:
default: false
type: boolean
ServiceChannel.Services.Messaging.Users.Limit:
description: Object for limit details set for a subscriber user.
type: object
properties:
Amount:
format: double
description: Limit amount.
type: number
CurrencyId:
format: int32
description: Identifier of the currency the limit is set in.
type: integer
ServiceChannel.Services.Messaging.Users.AccessOptions:
description: Object listing locations, districts, regions, and trades a subscriber user has access to. Learn more about [granting access based on locations, districts, and regions](https://servicechannel.atlassian.net/wiki/spaces/SCU/pages/585107276/Location+District+Region+Access+Tab) in ServiceChannel University.
type: object
properties:
Locations:
description: Locations a user has access to.
type: array
items:
type: string
Districts:
description: Districts a user has access to.
type: array
items:
type: string
Regions:
description: Regions a user has access to.
type: array
items:
type: string
Trades:
description: Trades a user is permitted to work with.
type: array
items:
type: string
ServiceChannel.Services.Messaging.Users.UserInfo:
description: The user details object.
type: object
properties:
Id:
format: int32
description: The unique numeric identifier of the user.
type: integer
UserName:
description: The username of the user.
type: string
UserNameOrFullName:
description: The username if fullname is null or empty
type: string
readOnly: true
FullName:
description: The full name of the user.
type: string
Email:
description: The email address of the user.
type: string
LevelInfo:
$ref: '#/components/schemas/ServiceChannel.Api.Model.Proposals.MlpLevelSimpleModel'
description: The information on the MLP level the user belongs to.
ServiceChannel.Services.Messaging.Workorders.UpdateLabelResponse:
description: Object containing the details of the modified work order
type: object
properties:
id:
format: int32
description: Unique numeric identifier of the work order
type: integer
ServiceChannel.Services.Messaging.Workorders.WorkOrderReassignmentReason:
description: Work Orders Reassignment reason response
type: object
properties:
Id:
format: int32
description: Identifier of reason
type: integer
Name:
description: Localized reason Name
type: string
Value:
description: Reason value
type: string
ServiceChannel.Services.Messaging.Workorders.LinkWorkordersRequest:
description: Link Workorders Request
type: object
properties:
WorkorderIds:
description: Array of Workorder Ids to link
type: array
items:
format: int32
type: integer
UnlinkLinkedWorkorders:
description: Unlink linked Workorders if true
default: false
type: boolean
ServiceChannel.Services.Messaging.LocationNote.LocationNote:
description: Object with the location note details.
type: object
properties:
Id:
format: int32
description: Location note numeric identifier.
type: integer
HeaderId:
format: int32
description: Unique location note header identifier.
type: integer
Value:
description: Location note content.
type: string
Header:
description: Name of the note.
type: string
ServiceChannel.Services.Messaging.Invoices.Invoice:
type: object
properties:
Provider:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Providers.Provider'
description: Gets or sets Provider.
Subscriber:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Subscribers.Subscriber'
description: Gets or sets Subscriber.
Location:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Location.Location'
description: Gets or sets Location.
Id:
format: int32
type: integer
Number:
description: Gets or sets invoice number.
type: string
BatchNumber:
description: Gets or sets Batch number.
type: string
InvoiceTax:
format: double
type: number
PostedTaxRate:
format: float
type: number
PostedTax2Rate:
format: float
type: number
VendorPayeeId:
format: int32
type: integer
InvoiceTotal:
format: double
description: Gets or sets total with tax amounts.
type: number
InvoiceBalance:
format: double
type: number
Currency:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Currencies.Currency'
ApprovedDate:
format: date-time
type: string
ApprovalCode:
type: string
EditableAdditionalApprovalCode:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ApprovalCodes.EditableAdditionalApprovalCode'
PostedDate:
format: date-time
type: string
PostedBy:
type: string
Subtotal:
format: double
type: number
Status:
type: string
Trade:
type: string
TradeId:
format: int32
type: integer
Category:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Invoices.InvoiceCategoryMessaging'
InvoiceAmountsDetails:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Invoices.InvoiceAmountsDetails'
InvoiceTaxesDetails:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Invoices.InvoiceTaxesDetails'
Tax2Details:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Invoices.Tax2Details'
Labors:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Invoices.InvoiceLabor'
Materials:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Invoices.InvoiceMaterial'
Travels:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Invoices.InvoiceTravel'
Others:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Invoices.InvoiceOther'
TaxApprovalCodeGroups:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Invoices.InvoiceApprovalCodeGroup'
Tax2ApprovalCodeGroups:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Invoices.InvoiceApprovalCodeGroup'
FreightApprovalCodeGroups:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Invoices.InvoiceApprovalCodeGroup'
WithMismatchedRates:
default: false
type: boolean
IsOutsourced:
default: false
type: boolean
StarredBy:
type: string
IsStarred:
default: false
type: boolean
IsTransferred:
default: false
type: boolean
readOnly: true
StarredDate:
format: date-time
type: string
Description:
type: string
InvoiceDate:
format: date-time
type: string
LaborTaxIncluded:
default: false
type: boolean
TravelTaxIncluded:
default: false
type: boolean
MaterialsTaxIncluded:
default: false
type: boolean
FreightTaxIncluded:
default: false
type: boolean
OtherTaxIncluded:
default: false
type: boolean
NonTaxableLabor:
format: int32
type: integer
NonTaxableTravel:
format: int32
type: integer
NonTaxableMaterial:
format: int32
type: integer
NonTaxableFreight:
format: int32
type: integer
NonTaxableOther:
format: int32
type: integer
IsExists:
default: false
type: boolean
readOnly: true
StatusChangeDate:
format: date-time
type: string
StatusChangeUser:
type: string
StatusChangeUserid:
type: string
IsDuplicate:
default: false
type: boolean
WoTrackingNumber:
format: int32
description: Gets or sets work order tracking number.
type: integer
Terms:
description: terms
type: string
Comments:
type: string
PaidDate:
format: date-time
type: string
TransferredDate:
format: date-time
type: string
LastActionDate:
format: date-time
type: string
UpdatedDate:
format: date-time
description: Updated Date
type: string
StatusHistoryShort:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Invoices.StatusHistoryShort'
WoAssignedTo:
description: Gets or sets WO Assignee
type: string
ApprovalCodes:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Invoices.InvoiceApprovalCode'
IsChargesApprovalCodesDefault:
default: false
type: boolean
Payments:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Invoices.InvoicePaymentResponse'
StoredFeatures:
type: array
items:
type: string
ServiceChannel.Services.Messaging.Assets.AssetResponse:
description: Object details of an asset.
type: object
properties:
Id:
format: int32
description: Unique numeric asset identifier assigned by the system.
type: integer
Tag:
description: Alphanumeric asset identifier assigned by the client.
type: string
Manufacturer:
description: Company name that produces an asset.
type: string
ModelNo:
description: Asset model number.
type: string
SerialNo:
description: Asset serial number.
type: string
LocationId:
format: int32
description: Unique numeric identifier of a location an asset is assigned to.
type: integer
Area:
description: Place where an asset is physically located.
type: string
WorkOrderArea:
description: Work order area, such as *Dining Room*, *Kitchen*, *Storage*.
type: string
StoreId:
description: Alphanumeric location identifier assigned by the client.
type: string
Trade:
description: Trade of an asset type the asset is assigned to, for example, *HVAC*, *DOORS*, *ELECTRICAL*.
type: string
TradeId:
format: int32
description: Numeric identifier of the primary trade of an asset.
type: integer
Type:
description: Asset type, for example, *Refrigerator*, *Computer Monitor*, etc.
type: string
AssetTypeId:
format: int32
description: Unique numeric identifier of an asset type.
type: integer
BrandId:
format: int32
description: Unique numeric identifier of a manufacturer that produces an asset.
type: integer
InstallDate:
description: Date and time when an asset was installed at the current location.
type: string
InstallDateVal:
format: date-time
description: Date and time when an asset was installed at the current location.
type: string
ManufacturerDate:
format: date-time
description: Date and time when an asset was produced.
type: string
ManufacturerDateStr:
description: Date and time when an asset was produced by the manufacturer.
type: string
PurchaseDate:
description: Date and time when an asset was purchased.
type: string
UsesRefrigerant:
format: int32
description: 'Defines whether an asset uses a refrigerant. **Possible values**: 0 - no, 1 - yes.'
type: integer
Active:
description: 'Shows whether an asset is still in use. **Possible values**: *true*, *false*.'
default: false
type: boolean
IsLeased:
description: 'Defines whether an asset is leased. **Possible values**: *true*, *false*.'
default: false
type: boolean
LifeExpectancy:
format: int32
description: Estimated useful life of an asset in months.
type: integer
OriginalValue:
format: double
description: Original asset price.
type: number
LeaseDate:
description: Date and time when a lease was signed.
type: string
LeasePeriod:
format: int32
description: Period of time in months a contracted lease is in place.
type: integer
Condition:
format: int32
description: 'Value representation of an asset condition. **Possible values**: `0` - *broken*, `25` - *poor*, `50` - *average*, `75` - *good*, `100` - *excellent*.'
type: integer
ConditionString:
description: 'Current condition of an asset. **Possible values**: *broken*, *poor*, *average*, *good*, *excellent*.'
type: string
EnergyEfficiency:
description: Provides information on energy efficiency of a particular asset. Maximum is 150 characters.
type: string
Capacity:
description: Provides information on the maximum amount of the refrigerant an asset can contain. Maximum is 150 characters.
type: string
HasLeakDetector:
description: 'Defines whether an asset has a leak detector and belongs to the Leak Detector asset type. **Possible values**: *true*, *false*.'
default: false
type: boolean
AssetLeakDetectorConnectionId:
format: int32
description: ID of the leak detector that is connected to an asset.
type: integer
Location:
description: Place where an asset is physically located.
type: string
readOnly: true
Warranty:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Assets.Warranty'
description: Object containing warranty parameters.
IsReplaceEquipment:
description: 'Defines if the current asset is a replacement for another on condition that a tracking number is provided. **Possible values**: *true*, *false*.'
default: false
type: boolean
HasTagged:
description: Defines if an asset contains ‘Asset Tag’.
default: false
type: boolean
LastModifiedUseDate:
format: date-time
description: Date and time when an asset was last updated.
type: string
LastModifiedUserName:
description: Name of the user who updated an asset.
type: string
SubName:
description: Subscriber’s name who added an asset.
type: string
AssetRefrigerant:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.RefrigerantTracking.AssetRefrigerant'
AssetAttributesMap:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Assets.AssetAttributesMap'
AssetTag:
description: Unique alphanumeric decoded value contained in a barcode, QR code, or NFC tag of an asset. It is used to scan assets via [ServiceChannel Mobile](https://servicechannel.atlassian.net/wiki/spaces/SCU/pages/575341308/Asset+Tagging#AssetTagging-AccessingtheAssetScanningModuleinSCMobile) and [ServiceChannel Provider](https://servicechannel.atlassian.net/wiki/spaces/SCU/pages/1181745372/Scanning+and+Validating+Assets+via+SC+Provider+for+FTM+Internal+Techs).
type: string
ImportedFrom:
format: int32
description: Provides the number of the template an asset was imported from.
type: integer
ParentId:
format: int32
description: Unique numeric identification of an asset that has a circuit or component.
type: integer
Description:
description: Comment created by a user when adding an asset.
type: string
HasComponents:
description: 'Defines whether an asset has components. **Possible values**: *true*, *false*.'
default: false
type: boolean
HasCircuits:
description: 'Defines if an asset has an added circuit. **Possible values**: *true*, *false*.'
default: false
type: boolean
IsCircuit:
description: 'Defines whether an asset is a circuit. **Possible values**: *true*, *false*.'
default: false
type: boolean
SubscriberId:
format: int32
description: Unique numeric ID of the subscriber an asset belongs to.
type: integer
AssetValidated:
description: 'Defines whether the asset has been validated by a technician. **Possible values**: *true*, *false*.'
default: false
type: boolean
ValidationRequired:
description: Defines whether an asset needs to be validated by a technician upon check-in.
default: false
type: boolean
IsLeakDetector:
description: Defines whether an asset belongs to the *Leak Detector* asset type.
default: false
type: boolean
AssetStatus:
format: byte
description: 'Defines an asset repair status. **Possible values**: `0` - *In Use*, `1` - *Out For Repair*, `2` - *Replacement Recommended*, `3` - *Repaired*.'
type: string
AssetUpdatesStatus:
format: byte
description: 'Defines the asset update status. **Possible values**: 0 - Attributes updated by provider, 1- New unconfirmed - asset created by provider, 2 - Rejected, 3 - Asset change confirmed.'
type: string
AdditionalTradesNames:
description: Names of the additional trades for an asset type.
type: string
AdditionalTradeIds:
type: array
items:
format: int32
type: integer
CreatedDate:
format: date-time
description: Date and time of the asset creation.
type: string
ModifiedDate:
format: date-time
description: Date and time of the last asset update.
type: string
AssetTypeGroupId:
format: int32
description: Unique ID of an asset type group.
type: integer
Spend:
format: double
description: Total asset cost. Can be calculated if the *IncludeTotalCostOfOwnership* feature flag is enabled.
type: number
IsCarbReporting:
description: 'Defines whether an asset is included in a CARB report. **Possible values**: *true*, *false*.'
default: false
type: boolean
AssetValidationStatus:
format: int32
description: ''
type: integer
UnableToScanReason:
description: Asset tag not scanned reason
type: string
UnableToScanReasonCustomText:
description: Asset tag not scanned reason custom text
type: string
UnableToScanReasonId:
format: int32
description: Asset tag not scanned reason id
type: integer
CustomAttributes:
description: Custom Attributes
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Equipments.EquipmentAttributeDescription'
HasChilds:
description: ''
default: false
type: boolean
Currency:
format: int32
type: integer
ModifiedDateDto:
format: date-time
description: ModifiedDate datetime offset
type: string
RetiredDate:
format: date-time
description: Date and time of the asset deactivation.
type: string
ServiceChannel.Services.WebApi.Models.Request.Labels.DeleteWorkOrderLabelsRequest:
description: Request object for removing labels from a work order.
required:
- LabelIds
type: object
properties:
LabelIds:
description: List of unique numeric identifiers of the labels
type: array
items:
format: int32
type: integer
Actor:
description: Name of the user who performs actions with the labels
type: string
ServiceChannel.Services.Messaging.Workorders.CreateWoRequest.DispatchSettings:
description: describes email notification settings on work order creation
type: object
properties:
NotificationDisabled:
description: Turns on/off email notification when work order is created
default: false
type: boolean
EmailHeader:
description: Email Header
type: string
SendAlertToFM:
description: Send Alert To FM
default: false
type: boolean
ShowLastServiceCall:
description: Show Last Service Call
default: false
type: boolean
IsTest:
description: Is Test
default: false
type: boolean
CcRecipients:
description: CC Recipients
type: string
InvalidRecipients:
description: Invalid Recipients
type: string
ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderResponse:
description: Object containing the details of the modified work order.
type: object
properties:
id:
format: int32
description: Unique work order identifier.
type: integer
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.Warranty:
description: Object containing warranty parameters.
type: object
properties:
ExpirationDate:
format: date-time
description: Warranty expiration date based on the warranty expiration settings.
type: string
ProviderId:
format: int32
description: ID of a provider who is in charge of warranty services.
type: integer
NTE:
format: double
description: Maximum amount of money to be spent on warranty services in USD. Value -1 means that the amount is not applicable.
type: number
Priority:
description: Defines how quickly warranty services should be provided, for example, *Emergency-4 Hours*, *Normal-48 Hours*, *7 Days*.
type: string
Category:
description: Warranty category, for example, *ADVISE ONLY*, *REPAIR*, *DISASTER*.
type: string
CategoryId:
format: int32
description: Category Id.
type: integer
Provider:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.WarrantyProvider'
description: Rules to choose Warranty Provider
Expiration:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.WarrantyExpiration'
description: Rules for Warranty Expiration
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.Subscriber:
description: Subscriber associated with a work order.
type: object
properties:
Id:
format: int32
description: Unique identifier of the subscriber.
type: integer
ShortName:
description: Short name of the subscriber.
type: string
Name:
description: "Required Name\n Name - name of the subscriber."
type: string
IsOutsourcedWorkOn:
description: Indicates whether the work is outsourced for the subscriber.
default: false
type: boolean
ServiceChannel.Api.Model.Workorders.OverrideProperties.Anomaly:
type: object
properties:
TradeAnomalous:
default: false
type: boolean
TradeScore:
format: double
type: number
NTEAnomalous:
default: false
type: boolean
NTEScore:
format: double
type: number
FirstTimeFixAnomalous:
default: false
type: boolean
FirstTimeFixScore:
format: double
type: number
Top1PrimaryTrade:
type: string
InvoiceTotalWithoutProposal25:
format: double
type: number
InvoiceTotalWithoutProposalMedian:
format: double
type: number
InvoiceTotalWithProposal75:
format: double
type: number
IsAnomaly:
default: false
type: boolean
readOnly: true
ServiceChannel.Services.WebApi.Models.Response.Labels.AddWorkOrderLabelsResponse:
type: object
properties:
WorkOrderId:
format: int32
type: integer
ServiceChannel.Services.Messaging.Invoices.StatusHistoryShort:
type: object
properties:
CreatedBy:
type: string
CreatedById:
format: int32
type: integer
Status:
type: string
InvId:
format: int32
type: integer
ActionDate:
type: string
ServiceChannel.Services.Messaging.Invoices.InvoiceLabor:
description: Information on labor. Add a separate object for each worker. When two or more workers have the same `SkillLevel`,`LaborType`, and `HourlyRate`, use one object and specify `NumOfTech`.
type: object
properties:
Id:
format: int32
type: integer
InvoiceId:
format: int32
description: Invoice identifier.
type: integer
SkillLevel:
format: byte
description: 'The skill level of a worker. Valid values: `1` - Supervisor, `2` - Technician, `3` - Helper.'
type: string
LaborType:
format: byte
description: 'The type of the pay rate. Valid values: `1` - Regular, `2` - Overtime, `3` - Double time.'
type: string
NumOfTech:
format: byte
description: Number of workers.
type: string
HourlyRate:
format: double
description: Worker hourly rate.
type: number
Hours:
format: double
description: Total hours the worker spent to complete the work order.
type: number
Amount:
format: double
description: The amount of the labor charge. The sum of all `Amount` parameters in the `Labors` array must equal `InvoiceAmountsDetails.LaborAmount`.
type: number
IsOffShore:
description: Type of the shore (`1` - Onshore, `2` - Offshore).
default: false
type: boolean
ServiceType:
format: byte
description: Type of the service (`1` - Design Engineering, Architecture, Technical Service, `2` - Installation and Supervision, `3` - Survey and Troubleshooting).
type: string
CityPerformed:
description: City where services are performed.
type: string
RateDiscrepancyReason:
description: Rate discrepancy reason.
type: string
AgreedRate:
format: double
description: Agreed rate.
type: number
ApprovalCodeGroup:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Invoices.InvoiceApprovalCodeGroup'
IsRateDiscrepancy:
default: false
type: boolean
readOnly: true
isNontaxableVATEU:
default: false
type: boolean
ServiceChannel.Services.Messaging.Users.User:
description: User details object.
type: object
properties:
Id:
format: int32
description: Unique user identifier.
type: integer
SubscriberId:
format: int32
description: Unique subscriber ID.
type: integer
UserName:
description: Username of the user.
• For subscriber users, the username appears as **User Id** on the "General Info" tab of the user profile page.
• For provider users, the username is listed as **UserID** under "Access" on the "General" tab of the user profile page.
pattern: ^$|(^\S+).(\S).(\S)$
type: string
FullName:
description: Full name of the user.
• For subscriber users, the full name appears as **User Name** on the "General Info" tab of the user profile page.
• For provider users, you can see their first and last name under "Basic" on the "General" tab of the user profile page.
type: string
Email:
description: User’s email address.
type: string
PsmEmail:
description: Email address through which a user can reset their password.
type: string
Disabled:
description: Defines if a user is deactivated.
default: false
type: boolean
IsLocked:
description: Defines if a user is locked.
default: false
type: boolean
Roles:
description: Secondary roles assigned to a subscriber user that determine their permissions and level of access to various Service Automation modules.
type: array
items:
type: string
Permissions:
description: Permissions assigned to a subscriber user that determine whether they have full or read-only access to various Service Automation modules.
type: array
items:
type: string
UserType:
description: Subscriber user type defining their level of access to ServiceChannel:
• `Corporate` — a user can work in Service Automation.
• `Dashboard` — a user can only access the dashboard assigned to them.
`0` is returned for provider users.
enum:
- Corporate
- Dashboard
- ServiceChannel
type: string
Dashboard:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Users.DashboardInfo'
description: Dashboard a subscriber user has access to.
Access:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Users.AccessOptions'
description: List of locations, districts, regions, and trades a subscriber user has access to.
Limits:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Users.LimitOptions'
description: NTE, proposal, and invoice limits set for a subscriber user.
FeedRole:
type: string
MliUserInfo:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Users.MliUserInfo'
description: ''
MlpUserInfo:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Users.MlpUserInfo'
ServiceChannel.Services.Messaging.Assets.Warranty:
description: Object containing warranty parameters.
type: object
properties:
ExpirationDate:
format: date-time
description: Warranty expiration date based on the warranty expiration settings.
type: string
ProviderId:
format: int32
description: ID of a provider who is in charge of warranty services.
type: integer
NTE:
format: double
description: Maximum amount of money to be spent on warranty services in USD. Value -1 means that the amount is not applicable.
type: number
Priority:
description: Defines how quickly warranty services should be provided, for example, *Emergency-4 Hours*, *Normal-48 Hours*, *7 Days*.
type: string
PriorityId:
format: int32
type: integer
Category:
description: Warranty category, for example, *ADVISE ONLY*, *REPAIR*, *DISASTER*.
type: string
CategoryId:
format: int32
type: integer
Provider:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Assets.WarrantyProvider'
description: Rules to choose Warranty Provider
Expiration:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Assets.WarrantyExpiration'
description: Rules for Warranty Expiration
ServiceChannel.Services.Messaging.Attachments.AttachmentsDescriptor:
type: object
properties:
Count:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.CountDescriptor'
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.EquipmentAttributeDescription:
description: Equipment attribute description.
type: object
properties:
EquipmentAttributeId:
format: int32
description: Equipment attribute identifier.
type: integer
EquipmentTypeAttributeId:
format: int32
description: Equipment type attribute identifier.
type: integer
ValueType:
format: int32
description: Value type identifier.
type: integer
EquipmentId:
format: int32
description: Equipment identifier.
type: integer
Value:
$ref: '#/components/schemas/System.Object'
description: Attribute value.
ValueText:
description: Text representation of the value.
type: string
SelectedOptionsText:
description: Text of selected options.
type: string
Visible:
description: Indicates if the attribute is visible.
default: false
type: boolean
Editable:
description: Indicates if the attribute is editable.
default: false
type: boolean
Required:
description: Indicates if the attribute is required.
default: false
type: boolean
Name:
description: Attribute name.
type: string
Custom:
description: Indicates if the attribute is custom.
default: false
type: boolean
ServiceChannel.Services.Messaging.Workorders.Dashboard.Requests.SubmitSolvedIssueModel:
description: Problem solve model
required:
- LocationId
- Source
type: object
properties:
Type:
enum:
- Unknown
- DuplicateWorkOrder
- DecisionTree
- DecisionTreeStop
- IssueListMessage
- IssueListCancelled
type: string
LocationId:
format: int32
type: integer
Source:
type: string
Category:
type: string
Trade:
type: string
Priority:
type: string
CategoryId:
format: int32
type: integer
TradeId:
format: int32
type: integer
ProblemCode:
type: string
ProblemDescription:
type: string
WorkOrderId:
format: int32
type: integer
NTE:
format: double
type: number
CurrencyId:
format: int32
type: integer
ServiceChannel.Services.Messaging.Invoices.InvoiceTravel:
description: Information on the trip.
type: object
properties:
Id:
format: int32
type: integer
InvoiceId:
format: int32
description: Invoice identifier.
type: integer
Description:
description: Description of the trip.
type: string
UnitType:
format: byte
description: Unit of measurement.
type: string
UnitPrice:
format: double
description: Price per unit.
type: number
Quantity:
format: double
description: Quantity.
type: number
Amount:
format: double
description: The amount of the trip cost. The sum of all `Amount` parameters in the `Travels` array must equal `InvoiceAmountsDetails.TravelAmount`.
type: number
IsOffShore:
description: Type of the shore (`1` - Onshore, `2` - Offshore).
default: false
type: boolean
ApprovalCodeGroup:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Invoices.InvoiceApprovalCodeGroup'
isNontaxableVATEU:
default: false
type: boolean
ServiceChannel.Services.Messaging.Workorders.CreateWorkOrdersProjectApprovalRequest:
required:
- Nte
- ProjectId
type: object
properties:
Nte:
format: double
type: number
ProjectId:
format: int32
type: integer
ServiceChannel.Services.Messaging.Workorders.AddFollowersRequest:
required:
- FollowersList
- UserIds
type: object
properties:
FollowersList:
description: Required, Followers List
type: string
UserIds:
description: Required, User Ids
type: string
ServiceChannel.Services.Messaging.RefrigerantTracking.RefrigerantUseReasonCode:
description: Object containing refrigerant use reasons.
type: object
properties:
Id:
format: int32
description: Unique numeric identifier of the refrigerant use reason code.
type: integer
Order:
format: int32
description: Order of appearance of a reason code.
type: integer
Purpose:
format: int32
description: "Unique numeric identifier of the reason code for the refrigerant part use. Possible values: `0` - Leak, `1` - InitialCharge, `2` - SystemExpansion, `3` - Removal, `4` - Other, `5` - RemovedReused, `6` - Retrofit.\n
Each reason code on the subscriber side is associated with a hardcoded purpose value in the database. Since reason codes can vary across subscribers, the purpose helps identify the valid reason code.\n
***Note:*** Purpose value `0` is assigned to the `Leak` and `Repair` reason codes, indicating that a leak record gets calculated for these reason codes."
type: integer
Name:
description: "Reason code name for the refrigerant part use as configured by the subscriber. Possible values:\n • `Leak`\n • `Repair`\n • `Adjustment`\n • `System Expansion`\n • `Removal`\n • `Initial Charge`\n • `Retrofit`\n • `Removed Reused`"
type: string
SubscriberId:
format: int32
description: Unique numeric identifier of the subscriber.
type: integer
IsActive:
description: "Defines whether a user can select a reason code when capturing refrigerant use. Possible response values:\n • `true`: Reason code is enabled.\n • `false`: Reason code is disabled."
default: false
type: boolean
ServiceChannel.Services.Messaging.Workorders.GetStatusResponse:
description: Object containing the details of the available work order statuses.
type: object
properties:
Id:
description: "Unique numeric identifier of the primary work order status. Possible response values:\n • `0`: NotSet \n • `1`: Open\n • `2`: InProgress \n • `3`: Completed"
enum:
- NotSet
- Open
- InProgress
- Completed
- Incomplete
type: string
Name:
description: Name of the main status.
type: string
Extended:
description: List of available extended statuses.
type: array
items:
type: string
ExtendedStatuses:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkorderExtendedStatus'
Constraints:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkorderStatusConstraints'
ServiceChannel.Services.Messaging.IssueLists.IssueTicketInformation:
type: object
properties:
Id:
format: int32
type: integer
AreaId:
format: int32
type: integer
AreaName:
type: string
ProblemGroup:
type: string
Equipment:
type: string
ProblemCode:
type: string
TicketType:
type: string
SetupId:
format: int32
type: integer
ServiceChannel.Api.Model.Workorders.WeatherEventType:
type: object
properties:
Id:
format: int32
type: integer
Name:
type: string
Description:
type: string
ServiceChannel.Services.Messaging.Assets.AssetAttributesMap:
type: object
properties:
StandardAttributesMap:
format: int32
type: integer
ViewableForProvidersAttributesMap:
format: int32
type: integer
EditableForProvidersAttributesMap:
format: int32
type: integer
RequiredStandardAttributesMap:
format: int32
type: integer
ServiceChannel.Services.Messaging.Workorders.WorkOrderAnalyticsResponse:
type: object
properties:
IVR:
description: 'Indicates whether the work order has both Check-In and Check-Out records and completes with a Check-Out. **Possible values**: *true*, *false*.'
default: false
type: boolean
SLA:
description: 'Indicates whether the work order met the original ETA. **Possible values**: *true*, *false*, or *null* (if the `Original ETA` or `CheckInTime` is not populated in source data).'
default: false
type: boolean
FirstTimeCompletionFlag:
format: int32
description: 'Indicates whether the work order was completed on the first visit. **Possible values**: `1` - *Yes*, `0` - *No*.'
type: integer
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.UpdateWorkOrderProjectedCompletionDateResponse:
type: object
properties:
WorkOrderId:
format: int32
type: integer
ServiceChannel.Services.Messaging.Workorders.ChangeWoTechnicianCertificateRequest:
description: Object containing the tech’s certificate ID.
type: object
properties:
CertificateId:
format: int32
description: "Numeric ID of the certificate assigned to the technician.\n
To get the certificate ID, run the `Get/RefrigerantCertifications` method in [Contractor Tools API Swagger](https://ctoolsapi.servicechannel.com/swagger/index.html?urls.primaryName=ContractorTools.API%20v1).\n
***Note:*** The tech’s certificates can be uploaded and managed in the tech’s profile in Provider Automation or the SC Provider mobile app."
type: integer
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.UpdateWorkOrderResolutionResponse:
description: Object containing the details of the modified work order resolution.
type: object
properties:
id:
format: int32
description: Unique work order resolution identifier.
type: integer
ServiceChannel.Services.Messaging.Workorders.GetGPSRadiusResponse:
description: GPS radius object.
type: object
properties:
WorkorderId:
format: int32
description: Unique numeric identifier of the work order.
type: integer
LocationID:
format: int32
description: Unique numeric identifier of the location.
type: integer
LocLatitude:
format: double
description: Location latitude, for example, 40.6107492.
type: number
LocLongitude:
format: double
description: Location longitude, for example, -73.9539362.
type: number
GPSRadius:
format: double
description: Distance around a facility within which a technician is considered to be on-site, for example, 3 miles.
type: number
ServiceChannel.Services.WebApi.Models.Response.Checklists.ChecklistResponses.CheckListDetailQuestionsExtendedResponse:
description: Checklist question details.
type: object
properties:
CheckListCreatedDate:
format: date-time
description: Date and time when the checklist was created.
type: string
CheckListName:
description: Name of the checklist the question belongs to.
type: string
Id:
format: int32
description: Checklist question ID.
type: integer
CheckListId:
format: int32
description: ID of the checklist the question belongs to.
type: integer
Question:
description: Checklist question that a technician is prompted to answer when working on a service request.
type: string
ShortDescription:
description: Not applicable to checklists.
type: string
AnswerRequired:
description: Defines whether answering this checklist question is mandatory.
default: false
type: boolean
PictureFlag:
description: "Defines whether a technician is required to upload an attachment when answering the question:\n • 0 — Adding an attachment is optional.\n • 1 — An attachment is not required.\n • 2 — Uploading an attachment is mandatory."
enum:
- Optional
- 'No'
- Required
type: string
Sequence:
format: int32
description: Not applicable to checklists.
type: integer
QuestionType:
description: "[Checklist question type](/guides/checklists/types-of-checklist-questions/):\n • 0 — **Acknowledgement**: Represents an on/off toggle prompting a technician to give a positive or negative response to a question.\n • 1 — **Selector**: Provides multiple configured answer options to choose from.\n • 2 — **Text Entry**: Allows entering a text answer.\n • 4 — **Numeric Input**: Prompts to submit a number as a response."
enum:
- CheckBox
- RadioButton
- TextEntry
- TriState
- NumericInput
type: string
CheckListQuestionOptions:
description: Answer options for questions of the Selector type.
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Checklists.ChecklistResponses.ChecklistQuestionOptionResponse'
AnswerCanPersist:
description: Defines whether the answer to this question can persist. If the answer is persistent, the last submitted response populates on the question. A technician can either opt for the current response or update it.
default: false
type: boolean
CheckListTimingType:
description: 'Defines the checklist segment the question belongs to: 1 — check-in segment, 2 — check-out segment.'
enum:
- CheckIn
- CheckOut
type: string
AcknowledgeUrl:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Checklists.ChecklistResponses.CheckListAcknowledgeUrlResponse'
description: AcknowledgeUrl
AllowMultiSelect:
description: AllowMultiSelect
default: false
type: boolean
ChecklistFailure:
description: ChecklistFailure
default: false
type: boolean
AssetTypeIds:
description: Asset type IDs that the question is applicable to
type: array
items:
format: int32
type: integer
ChecklistQuestionNumericType:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Checklists.ChecklistResponses.ChecklistQuestionNumericType'
description: Answer option of the Numeric type question
ServiceChannel.Services.WebApi.Models.Request.WorkOrder.ReassignWorkOrder.AdditionalApprovalCodeRequest:
type: object
properties:
Value:
type: string
Options:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Request.WorkOrder.ReassignWorkOrder.AdditionalApprovalCodeOptionRequest'
Header:
type: string
SetupId:
format: int32
type: integer
LocationId:
format: int32
type: integer
DefaultOptionId:
format: int32
type: integer
ValueFormat:
format: int32
type: integer
EditableAtLineItemLevel:
format: int32
type: integer
ServiceChannel.Services.Messaging.Workorders.WorkOrderStatisticsResponse:
description: Work Orders Statistics responce
type: object
properties:
DaysPeriod:
format: int32
description: Period in days, last X days for which Work Orders statistics was collected
type: integer
OpenWo:
format: int32
description: Count of Open/In progress Work Orders
type: integer
RecallWo:
format: int32
description: Count of recall Work Orders
type: integer
NegativeFbWo:
format: int32
description: Count of Work Orders with negative feedback
type: integer
ServiceChannel.Services.Messaging.Workorders.WorkorderStatusDescriptor:
type: object
properties:
Primary:
description: Primary work order status value, you can pass status id or its name here. To get all subscriber's statuses see [Statuses] in Statuses section
type: string
Extended:
description: Extended status value
type: string
CanCreateInvoice:
description: True if invoice creation is allowed
default: false
type: boolean
ServiceChannel.Services.Messaging.Workorders.ChangeWoStatusRequestExt:
required:
- Status
type: object
properties:
Status:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkorderStatusExt'
description: Required, Work order Status
Note:
description: Optional, Note
type: string
Actor:
description: Optional, Actor
type: string
DeclineReasonId:
format: int32
description: Optional, for OPEN/DECLINED status if DeclineHistoryWO FF is on
type: integer
CustomDeclineReason:
description: Optional, for OPEN/DECLINED status if the decline reason has AskCustomReason=true
type: string
ServiceChannel.Services.Messaging.ApprovalCodes.AdditionalApprovalCodeOption:
type: object
properties:
Id:
format: int32
type: integer
Value:
type: string
ServiceChannel.Services.Messaging.ApplicationAccess.FeatureResponse:
description: Feature response entity.
type: object
properties:
Features:
description: Subscribers features set
type: array
items:
type: string
ServiceChannel.Services.WebApi.Models.Request.Labels.AddWorkOrderLabelsRequest:
description: Request object for adding labels to a work order
required:
- LabelIds
type: object
properties:
LabelIds:
description: List of unique numeric identifiers of the labels
type: array
items:
format: int32
type: integer
Actor:
description: Name of the user who performs actions with the labels
type: string
ServiceChannel.Services.Messaging.Workorders.UnlinkWorkordersRequest:
description: Unlink Workorders Request
type: object
properties:
WorkorderIds:
description: "Array of Workorder Ids to Unlink, \n Required if 'UnlinkAllLinkedWorkorders' is false\n Ignored if 'UnlinkAllLinkedWorkorders' is true"
type: array
items:
format: int32
type: integer
UnlinkAllLinkedWorkorders:
description: Unlink all linked Workorders if true, Optional
default: false
type: boolean
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.WorkOrderLabel:
description: The label associated with a work order.
type: object
properties:
Id:
format: int32
description: Unique identifier for the label.
type: integer
Label:
description: Text of the label.
type: string
ServiceChannel.Services.Messaging.Invoices.Tax2Details:
description: Information on the additional tax. Only invoices for Canadian locations can have Tax2Details.
type: object
properties:
Tax2Amount:
format: double
description: Amount of the additional tax.
type: number
Tax2Name:
description: Name of the additional tax, for example, *VAT*, *HST*, *PST*, or *QST*.
type: string
ServiceChannel.Services.WebApi.Models.Response.Checklists.ChecklistResponses.ChecklistQuestionNumericType:
description: The object defines the failure criteria used to evaluate answers for the **Numeric Input** question
type: object
properties:
Id:
format: int32
description: ID of the failure criteria object.
type: integer
Type:
description: Defines the type of failure criteria used to evaluate the response to a question.
enum:
- LessThan
- MoreThan
- InBetween
type: string
SingleValue:
format: int32
description: The threshold value used to evaluate the answer to a question for the LessThan or MoreThan criterion.
type: integer
MinValue:
format: int32
description: The lower threshold value used to evaluate the response to the question for the InBetween criterion.
type: integer
MaxValue:
format: int32
description: The upper threshold value used to evaluate a question's response to the InBetween criterion.
type: integer
ServiceChannel.Services.Messaging.V4.Workorders.WorkTypeResponse:
description: WorkTypeResponse
type: object
properties:
Id:
format: int32
description: Id
type: integer
Name:
description: Name
type: string
ServiceChannel.Services.Messaging.Workorders.WorkOrderLabelRequest:
description: Object containing information about the work order label
type: object
properties:
LabelId:
format: int32
description: Unique numeric identifier of the label
type: integer
Label:
description: Label name
type: string
Actor:
description: Name of the user who performs actions with the label
type: string
ServiceChannel.Services.Messaging.Workorders.ChangeWorkOrderStatusResponse:
type: object
properties:
result:
description: Last note
type: string
id:
format: int32
description: Unique work order identifier.
type: integer
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.IssueTicketInfo:
description: Issue ticket information.
type: object
properties:
Id:
format: int32
description: Issue ticket identifier.
type: integer
SetupId:
format: int32
description: Issue ticket setup identifier.
type: integer
ServiceChannel.Services.WebApi.Models.Response.Labels.DeleteWorkOrderLabelsResponse:
type: object
properties:
WorkOrderId:
format: int32
type: integer
ServiceChannel.Services.Messaging.ApprovalCodes.EditableAdditionalApprovalCode:
type: object
properties:
Header:
type: string
Value:
type: string
SetupId:
format: int32
type: integer
LocationId:
format: int32
type: integer
DefaultOptionId:
format: int32
type: integer
ValueFormat:
format: int32
type: integer
EditableAtLineItemLevel:
format: int32
type: integer
Options:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.ApprovalCodes.AdditionalApprovalCodeOption'
DefaultValue:
type: string
readOnly: true
ServiceChannel.Services.Messaging.IdentityObject:
type: object
properties:
Id:
format: int32
type: integer
ServiceChannel.Services.Messaging.Workorders.IssueChoiceRequest:
type: object
properties:
AreaId:
format: int32
type: integer
ProblemType:
type: string
AssetType:
type: string
ProblemCode:
type: string
SetupId:
format: int32
type: integer
AdditionalFields:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Data.FieldValue'
IsUpdateScrecProblemType:
default: false
type: boolean
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.Currency:
description: Currency information.
type: object
properties:
Id:
format: int32
description: Currency identifier.
type: integer
AlphabeticalCode:
description: Alphabetical currency code.
type: string
Rate:
format: double
description: Exchange rate.
type: number
ServiceChannel.Services.Messaging.Users.MlpUserInfo:
type: object
properties:
Id:
format: int32
type: integer
MlpLevel:
type: string
MlpLocations:
type: array
items:
format: int32
type: integer
ServiceChannel.Services.Messaging.Users.LimitOptions:
description: Object for NTE, proposal, and invoice limits set for a subscriber user.
type: object
properties:
NteLimit:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Users.Limit'
description: Limit for the NTE amount that a user can not exceed upon editing work orders. If a user who has permission to edit work orders tries to enter the NTE amount above the set limit, an error message will appear.
ProposalLimit:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Users.Limit'
description: Limit for the proposal amount above which a user can not approve proposals — for users with the corresponding permission. The user can put on hold or reject proposals above their limit.
InvoiceLimit:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Users.Limit'
description: Limit for the invoice amount above which a user can not process invoices by changing their status. The user can view invoices above their limit if they have the corresponding permission.
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.WarrantyProvider:
description: Object containing warranty provider details.
type: object
properties:
Type:
description: 'Defines the provider type responsible for warranty services. **Possible values**: `0` - Fixed provider, `1`- Primary rank provider, `2` - Fixed rank provider.'
enum:
- Fixed
- PrimaryRanked
- FixedRanked
type: string
Value:
format: int32
description: Provider type value. Displays provider ID for the fixed provider type; provider rank number — from 1 to 100 — for the fixed rank type; 1 for a primary rank provider.
type: integer
ServiceChannel.Services.Messaging.Attachments.AddAttachmentRequest:
type: object
properties:
Name:
type: string
Description:
type: string
Path:
type: string
Type:
enum:
- File
- RemoteStorage
type: string
MediaType:
description: Mime type of the attachment
type: string
Visibility:
format: int32
description: 'Note visibility - valid values: null, 1, 2, 3'
type: integer
IsInvoiceDigitalCopy:
description: Mark attachment as Invoice Digital Copy
default: false
type: boolean
IsLocationAttachment:
description: Indicates if the attachment is copied from location
default: false
type: boolean
ServiceChannel.Services.WebApi.Models.Response.Checklists.ChecklistResponses.CheckListAcknowledgeUrlResponse:
type: object
properties:
Url:
type: string
Required:
default: false
type: boolean
ServiceChannel.Services.WebApi.Models.Response.Checklists.ChecklistResponses.GetResponsesByWorkOrderResponse:
description: Object for checklist responses submitted for a work order.
type: object
properties:
Responses:
description: Responses to checklist questions submitted for a work order.
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Checklists.ChecklistResponses.CheckListResponseExtended'
ServiceChannel.Services.Messaging.Workorders.UpdateWorkOrdersProjectApprovalRequest:
required:
- IsApproved
- ProjectId
type: object
properties:
IsApproved:
default: false
type: boolean
ProjectId:
format: int32
type: integer
ServiceChannel.Services.Messaging.Workorders.ChangeWoNteRequest:
type: object
properties:
Details:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.NteDetails'
CurrencyId:
format: int32
description: Optional, by default current Work Order Currency
type: integer
Value:
description: Optionally required(can be calculated automatically by Details), String Value of the NTE amount
type: string
ProviderEmail:
description: Provider e-mail
type: string
Actor:
description: Optional, Actor
type: string
ServiceChannel.Services.Messaging.Workorders.CheckOutRequest:
description: Check-out request
required:
- Latitude
- Longitude
type: object
properties:
WorkTypeId:
format: int32
description: "The unique ID of the work type.\n **Possible values:** `1` — Repair, `2` — Travel. Other values are possible when custom types are set up for the subscriber.\n **Default value:** 1."
type: integer
PrimaryStatus:
description: "The status that is set for the WO when checking out.\n Required for the Repair type. Ignored for the Travel and custom types as well when `ActionStatus` = `Cancel`.\n **Default value:** NoStatusChange."
enum:
- NoStatusChange
- InProgress
- Completed
- WaitingForQuote
- PartsOnOrder
- Incomplete
type: string
ExtendedStatus:
description: "The extended status that is set for the WO when checking out.\n Optional for the Repair type. Ignored for the Travel and custom types, when `ActionStatus` = `Cancel`, and for 'Completed' PrimaryStatus (generated automatically).\n Refrigerant WO with 'Completed' PrimaryStatus — special case by RefrigerationTracking feature."
type: string
ActionStatus:
description: "The status of the activity.\n **Possible values:** `Complete`, `Cancel`. Both values result in recording a check-out.\n `Complete` means that the technician has finished the activity. `Cancel` means the technician needs to pause the activity, for example, to have a break outside of the location. GPS coordinates are not required.\n **Default value:** Complete."
enum:
- Complete
- Cancel
type: string
Resolution:
description: "The comment entered when checking out. Usually describes what was done during the recorded time. Ignored for the Travel and custom types as well as when `ActionStatus` = `Cancel`.\n **Default value:** empty."
type: string
UserId:
format: int32
description: "The user ID of the technician that is checking out. Use the same `UserId` for one pair of check-in and check-out records.\n **Default value:** ID of the current user."
type: integer
TechsCount:
format: int32
description: "The number of technicians that are checking out.\n **Default value:** 1."
type: integer
Latitude:
format: double
description: "The latitude of the technician’s current position.\n Required for the Repair and Travel type. Not required for custom types, for the Repair and Travel types when the [XML check-in/out permission](/guides/checkin/before-you-start/#xml-check-inout-permission) is enabled, and when `ActionStatus` = `Cancel`."
type: number
Longitude:
format: double
description: "The longitude of the technician’s current position.\n Required for the Repair and Travel type. Not required for custom types, for the Repair and Travel types when the [XML check-in/out permission](/guides/checkin/before-you-start/#xml-check-inout-permission) is enabled, and when `ActionStatus` = `Cancel`."
type: number
CheckOutTime:
format: date-time
description: "The date and time of the check-out. Either indicate in UTC or pass the current time and add the UTC offset.\n You can pass this value only when the [XML check-in/out permission](/guides/checkin/before-you-start/#xml-check-inout-permission) is enabled.\n **Default value:** current date and time."
type: string
CheckoutAll:
default: false
type: boolean
Actor:
description: Optional, Actor
type: string
SignatureAttachmentId:
format: int32
description: "Optional, SignatureAttachmentId\n **Default value:** null"
type: integer
UnableObtainSignatureNoteId:
format: int64
description: "Optional, UnableObtainSignatureNoteId\n **Default value:** null"
type: integer
UnableObtainSignatureNoteDocumentId:
description: "Optional, UnableObtainSignatureNoteDocumentId\n **Default value:** null"
type: string
ServiceChannel.Services.Messaging.Workorders.ChangeWoWeatherTypeIdRequest:
required:
- Value
type: object
properties:
Value:
format: int32
description: Weather Type Id (leave blank to delete)
type: integer
ServiceChannel.Services.Messaging.Workorders.ChangeWoCategoryRequest:
required:
- Value
type: object
properties:
Value:
type: string
Actor:
type: string
Id:
format: int32
type: integer
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.AttachmentsDescriptor:
description: Attachments descriptor information.
type: object
properties:
Count:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.CountDescriptor'
description: Count of attachments.
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.Provider:
description: Provider associated with a work order.
type: object
properties:
Id:
format: int32
description: Id.
type: integer
Name:
description: Name.
type: string
DoNotDispatch:
description: DoNotDispatch enabled?
default: false
type: boolean
Phone:
description: Phone number of the provider.
type: string
IsInternal:
description: Is Internal.
default: false
type: boolean
IsOnOffShoreFeatureEnabled:
description: Is OnOffShoreFeature Enabled.
default: false
type: boolean
ServiceChannel.Services.Messaging.Subscribers.Subscriber:
required:
- Name
type: object
properties:
Id:
format: int32
type: integer
ShortName:
type: string
Email:
type: string
Users:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Users.User'
PrimaryCurrency:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Currencies.Currency'
IsOutsourcedWorkOn:
default: false
type: boolean
Name:
description: "Required Name\n Name - name of the subscriber"
type: string
Address1:
description: Optional
type: string
Address2:
description: Optional
type: string
Country:
description: Optional
type: string
State:
description: Optional
type: string
City:
description: Optional
type: string
Zip:
description: Optional
type: string
Phone:
description: Optional
type: string
Fax:
description: Optional
type: string
ContactName:
description: Optional
type: string
TimeFormat:
type: string
DateFormat:
type: string
DecimalSeparator:
type: string
ServiceChannel.Services.Messaging.Notes.NoteInfo:
type: object
properties:
Id:
format: int64
type: integer
DocumentId:
type: string
Number:
format: int32
type: integer
NoteData:
type: string
DateCreated:
format: date-time
type: string
DateCreated_DTO:
format: date-time
type: string
ActionRequired:
default: false
type: boolean
MailedTo:
type: string
CreatedBy:
type: string
ServiceChannel.Services.Messaging.ODataRequest:
type: object
properties:
Expand:
description: Expand a navigation property.
type: string
Select:
description: Select a set of properties to return.
type: string
Filter:
description: Filter a collection of resources addressed by a request URL.
type: string
Orderby:
description: Order resources by the specified property in the response.
type: string
Count:
description: Include the count of the matching resources in the response.
type: string
Top:
format: int32
description: Return the specified number of items in the response.
type: integer
Skip:
format: int32
description: Skip the specified number of items in the response.
type: integer
ServiceChannel.Services.Messaging.Workorders.NteDetails:
type: object
properties:
Tax:
format: double
description: Optional Tax amount
type: number
Tax2:
format: double
description: Optional Tax2 amount
type: number
Price:
format: double
description: Optional Price amount
type: number
Tax2Type:
description: Optional Tax2 type
type: string
ServiceChannel.Services.Messaging.Workorders.WorkorderExtendedStatus:
description: Object containing the list of available extended statuses for a specific primary status.
type: object
properties:
Id:
format: int32
description: Unique numeric identifier of the extended status.
type: integer
Name:
description: Name of the extended status.
type: string
ServiceChannel.Services.Messaging.Category.CategoryResponse:
description: Object containing the details of the available categories.
type: object
properties:
Id:
format: int32
description: Category ID.
type: integer
SubscriberId:
format: int32
description: Unique numeric subscriber ID.
type: integer
Name:
description: Category name.
type: string
HasDependency:
description: Parameter is not populated. The only value is "false".
default: false
type: boolean
PrimaryCategoryID:
format: int32
description: Primary category ID.
type: integer
PrimaryCategoryName:
description: Primary category name.
type: string
ServiceChannel.Services.Messaging.Workorders.ChangeWoFieldsRequest:
description: Request to update the value of a work order parameter.
required:
- Value
type: object
properties:
Value:
description: Value of the work order parameter to update.
type: string
Actor:
description: Name of the person on whose behalf you are updating the parameter value.
type: string
ServiceChannel.Services.Messaging.Workorders.WorkOrderServiceNowIdRequest:
type: object
properties:
ServiceNowId:
type: string
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.AssetResponse:
description: Object details of an asset.
type: object
properties:
Id:
format: int32
description: Unique numeric asset identifier assigned by the system.
type: integer
Tag:
description: Alphanumeric asset identifier assigned by the client.
type: string
Manufacturer:
description: Company name that produces an asset.
type: string
ModelNo:
description: Asset model number.
type: string
SerialNo:
description: Asset serial number.
type: string
LocationId:
format: int32
description: Unique numeric identifier of a location an asset is assigned to.
type: integer
Area:
description: Place where an asset is physically located.
type: string
StoreId:
description: Alphanumeric location identifier assigned by the client.
type: string
Trade:
description: Trade of an asset type the asset is assigned to, for example, *HVAC*, *DOORS*, *ELECTRICAL*.
type: string
TradeId:
format: int32
description: Numeric identifier of the primary trade of an asset.
type: integer
Type:
description: Asset type, for example, *Refrigerator*, *Computer Monitor*, etc.
type: string
AssetTypeId:
format: int32
description: Unique numeric identifier of an asset type.
type: integer
BrandId:
format: int32
description: Unique numeric identifier of a manufacturer that produces an asset.
type: integer
InstallDate:
description: Date and time when an asset was installed at the current location.
type: string
ManufacturerDate:
format: date-time
description: Date and time when an asset was produced.
type: string
ManufacturerDateStr:
description: Date and time when an asset was produced by the manufacturer.
type: string
PurchaseDate:
description: Date and time when an asset was purchased.
type: string
UsesRefrigerant:
format: int32
description: 'Defines whether an asset uses a refrigerant. **Possible values**: 0 - no, 1 - yes.'
type: integer
Active:
description: 'Shows whether an asset is still in use. **Possible values**: *true*, *false*.'
default: false
type: boolean
IsLeased:
description: 'Defines whether an asset is leased. **Possible values**: *true*, *false*.'
default: false
type: boolean
LifeExpectancy:
format: int32
description: Estimated useful life of an asset in months.
type: integer
OriginalValue:
format: double
description: Original asset price.
type: number
LeaseDate:
description: Date and time when a lease was signed.
type: string
LeasePeriod:
format: int32
description: Period of time in months a contracted lease is in place.
type: integer
Condition:
format: int32
description: 'Value representation of an asset condition. **Possible values**: `0` - *broken*, `25` - *poor*, `50` - *average*, `75` - *good*, `100` - *excellent*.'
type: integer
EnergyEfficiency:
description: Provides information on energy efficiency of a particular asset. Maximum is 150 characters.
type: string
Capacity:
description: Provides information on the maximum amount of the refrigerant an asset can contain. Maximum is 150 characters.
type: string
HasLeakDetector:
description: 'Defines whether an asset has a leak detector and belongs to the Leak Detector asset type. **Possible values**: *true*, *false*.'
default: false
type: boolean
Location:
description: Place where an asset is physically located.
type: string
readOnly: true
Warranty:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.Warranty'
description: Object containing warranty parameters.
IsReplaceEquipment:
description: 'Defines if the current asset is a replacement for another on condition that a tracking number is provided. **Possible values**: *true*, *false*.'
default: false
type: boolean
HasTagged:
description: Defines if an asset contains ‘Asset Tag’.
default: false
type: boolean
AssetTag:
description: Unique alphanumeric decoded value contained in a barcode, QR code, or NFC tag of an asset. It is used to scan assets via [ServiceChannel Mobile](https://servicechannel.atlassian.net/wiki/spaces/SCU/pages/575341308/Asset+Tagging#AssetTagging-AccessingtheAssetScanningModuleinSCMobile) and [ServiceChannel Provider](https://servicechannel.atlassian.net/wiki/spaces/SCU/pages/1181745372/Scanning+and+Validating+Assets+via+SC+Provider+for+FTM+Internal+Techs).
type: string
ParentId:
format: int32
description: Unique numeric identification of an asset that has a circuit or component.
type: integer
Description:
description: Comment created by a user when adding an asset.
type: string
HasComponents:
description: 'Defines whether an asset has components. **Possible values**: *true*, *false*.'
default: false
type: boolean
HasCircuits:
description: 'Defines if an asset has an added circuit. **Possible values**: *true*, *false*.'
default: false
type: boolean
IsCircuit:
description: 'Defines whether an asset is a circuit. **Possible values**: *true*, *false*.'
default: false
type: boolean
SubscriberId:
format: int32
description: Unique numeric ID of the subscriber an asset belongs to.
type: integer
AssetValidated:
description: 'Defines whether the asset has been validated by a technician. **Possible values**: *true*, *false*.'
default: false
type: boolean
ValidationRequired:
description: Defines whether an asset needs to be validated by a technician upon check-in.
default: false
type: boolean
IsLeakDetector:
description: Defines whether an asset belongs to the *Leak Detector* asset type.
default: false
type: boolean
AssetStatus:
format: byte
description: 'Defines an asset repair status. **Possible values**: `0` - *In Use*, `1` - *Out For Repair*, `2` - *Replacement Recommended*, `3` - *Repaired*.'
type: string
AssetUpdatesStatus:
format: byte
description: 'Defines the asset update status. **Possible values**: 0 - Attributes updated by provider, 1- New unconfirmed - asset created by provider, 2 - Rejected, 3 - Asset change confirmed.'
type: string
AssetTypeGroupId:
format: int32
description: Unique ID of an asset type group.
type: integer
AssetValidationStatus:
format: int32
description: ''
type: integer
CustomAttributes:
description: Custom Attributes
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.EquipmentAttributeDescription'
HasChilds:
description: ''
default: false
type: boolean
ModifiedDateDto:
format: date-time
description: ModifiedDate datetime offset
type: string
ServiceChannel.Services.Messaging.Location.Location:
description: General location details object.
type: object
properties:
Id:
format: int32
description: Unique location identifier.
type: integer
SubscriberId:
format: int32
description: Unique subscriber identifier.
type: integer
SubscriberName:
type: string
StoreId:
description: Alphanumeric identifier of the store in the client's system. Assigned by and unique per subscriber.
type: string
Name:
description: Location name.
type: string
ShortName:
description: Shortened location name.
type: string
Latitude:
format: double
description: Global position. Latitude.
type: number
Longitude:
format: double
description: Global position. Longitude.
type: number
Distance:
format: double
description: Distance from GPS coordinate to this location
type: number
Radius:
format: double
description: GPS radius for the location.
type: number
LocationTypeId:
format: int32
description: Numeric identifier of the location type.
type: integer
Address1:
description: Additional location address.
type: string
Address2:
description: Main location address.
type: string
City:
description: Location city.
type: string
State:
description: State where the location is situated.
type: string
StateId:
format: int32
description: Numeric identifier of the location’s state.
type: integer
Region:
description: Part of the country where the location is situated.
type: string
District:
description: Abbreviation of the town or country area where the location is situated.
type: string
Zip:
description: Location ZIP or postal code.
type: string
Country:
description: Abbreviation of the country name where the location is situated.
type: string
CountryId:
format: int32
description: Numeric identifier of the country of the location.
type: integer
ClosedDate:
format: date-time
description: Last day when the location is open for business.
type: string
OpenDate:
format: date-time
description: First day when the location is open for business.
type: string
Status:
description: 'Status of the location. Possible values: *open*, *closed*.'
type: string
Email:
description: Email the location can be contacted at.
type: string
FaxNumber:
description: Fax number the location can be contacted at.
type: string
Phone:
description: Contact phone number of the location.
type: string
Contact:
description: Name of the main person to contact at the location.
type: string
HasInventory:
description: 'Indicates whether it’s an inventory location or not. Possible values: *true*, *false*.'
default: false
type: boolean
SquareValue:
format: double
description: Square value of the facility.
type: number
SquareMeasure:
description: Unit or system of units for measuring location area.
type: string
TimeZoneInfoId:
format: int32
description: Numeric identifier of the location time zone.
type: integer
TimeZoneShortDescription:
description: Location time zone abbreviation.
type: string
TimeZoneMsName:
description: Location time zone Microsoft Name. e.g "Eastern Standard Time"
type: string
TimeZoneIanaName:
description: Location time zone Iana Name. e.g. "America/New_York"
type: string
TypeLabel:
description: '[Inventory location type](https://servicechannel.atlassian.net/wiki/spaces/SCU/pages/1209106525/Creating+Inventory+Locations?preview=%2F1209106525%2F1205830388%2FSupply-House-Type.png). Possible values: *Location*, *Warehouse*, *Supply House*, *Truck*.'
type: string
Supplier:
description: Supplier’s location name.
type: string
CountyId:
format: int32
description: County numeric identifier.
type: integer
Notes:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.LocationNote.LocationNote'
TimeShiftToEST:
format: int32
type: integer
AddressTypeId:
format: int32
description: Address format pattern Id
type: integer
FormattedAddress:
type: string
LocationFormattedAddressTail:
type: string
IsInternational:
default: false
type: boolean
readOnly: true
Address:
type: string
ServiceChannel.Services.Messaging.Workorders.CreateWoRequest.Material:
type: object
properties:
Quantity:
format: float
type: number
Description:
type: string
Price:
format: double
type: number
Reason:
type: string
SupplierPartId:
type: string
SupplierPartAuxiliaryId:
type: string
SupplierName:
type: string
NteMultiplier:
format: double
type: number
DefaultNte:
format: double
type: number
ServiceChannel.Services.WebApi.Models.Response.Checklists.ChecklistResponses.CheckListResponseExtended:
description: Object for checklist response details.
type: object
properties:
Pictures:
description: Files attached to the checklist response.
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Checklists.ChecklistResponses.ChecklistPictureResponse'
Question:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Checklists.ChecklistResponses.CheckListDetailQuestionsExtendedResponse'
description: Checklist question details.
QuestionOptions:
description: List of the answer options configured for a checklist question of the **Selector** type where multiple options can be selected.
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Checklists.ChecklistResponses.ChecklistQuestionOptionResponse'
QuestionOption:
$ref: '#/components/schemas/ServiceChannel.Services.WebApi.Models.Response.Checklists.ChecklistResponses.ChecklistQuestionOptionResponse'
description: Answer option submitted for a question of the **Selector** type.
IsCurrentChecklist:
description: Is current checklist flag.
default: false
type: boolean
IsFrequencyChecklist:
description: Is PM frequency checklist flag.
default: false
type: boolean
CreatedBy:
format: int32
description: ID of the user on whose behalf the response was submitted.
type: integer
AssetId:
format: int32
description: ID of the asset for which the response was submitted.
type: integer
Id:
format: int32
description: Checklist response ID.
type: integer
Answer:
description: Answer to a checklist question.
type: string
FreeTextAnswer:
description: Comment to an answer option with the `IsConditionalFollowUp` attribute. Answer options are configured for questions of the **Selector** type.
type: string
EntityId:
format: int32
description: ID of the work order the response was submitted for.
type: integer
EntityTypeId:
format: int32
description: ID of the entity the response was submitted for. 0 is returned for work orders.
type: integer
Attempt:
format: int32
description: Order of a technician’s on-site visit when the response was submitted.
type: integer
ProviderId:
format: int32
description: ID of the provider on whose behalf the response was submitted.
type: integer
TechnicianId:
format: int32
description: ID of the technician on whose behalf the response was submitted.
type: integer
UpdatedDate:
format: date-time
description: Date and time when the response was last updated set in EST. The format is `YYYY-MM-DDThh:mm:ss.sss`.
type: string
UpdatedDateStr:
description: Date and time when the response was last updated set in the location’s time zone. The format is `Month Day Year hh:mm`.
type: string
UpdatedDateDto:
format: date-time
description: Date and time when the response was last updated set in the location’s time zone with the UTC offset. The format is `YYYY-MM-DDThh:mm:ss.sss±hh:mm`.
type: string
IsPassed:
description: Indicates whether the response avoids the failure criteria.
default: false
type: boolean
LinkedWorkOrderId:
format: int32
description: "ID of the linked work order if the response results in a failure and generates a linked work order.\n Null if the response does not result in a failure or if the failure does not generate a linked work order."
type: integer
ServiceChannel.Services.Messaging.Equipments.EquipmentAttributeDescription:
type: object
properties:
EquipmentAttributeId:
format: int32
type: integer
EquipmentTypeAttributeId:
format: int32
type: integer
ValueType:
format: int32
type: integer
EquipmentId:
format: int32
type: integer
Value:
$ref: '#/components/schemas/System.Object'
ValueText:
type: string
SelectedOptionsText:
type: string
Visible:
default: false
type: boolean
Editable:
default: false
type: boolean
Required:
default: false
type: boolean
Name:
type: string
Custom:
default: false
type: boolean
ServiceChannel.Services.Messaging.Workorders.WorkorderStatus:
required:
- Primary
- Extended
type: object
properties:
Primary:
description: Required, primary work order status value
enum:
- NotSet
- Open
- InProgress
- Completed
- Incomplete
type: string
Extended:
description: Required, but can be empty. Extended status value
type: string
PrimaryStatusValue:
type: string
readOnly: true
ServiceChannel.Services.Messaging.Invoices.InvoiceApprovalCodeGroup:
type: object
properties:
ApprovalCodeType:
enum:
- Labor
- Travel
- Material
- Freight
- Other
- Tax
- Tax2
- LineItem
- FreightGenerated
type: string
ApprovalCode:
type: string
AdditionalApprovalCode:
type: string
Amount:
format: double
type: number
ApprovalCodes:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Invoices.InvoiceApprovalCodeChild'
ServiceChannel.Services.Messaging.Workorders.CreateWoRequest.ExtendedRequestInfo:
description: ExtendedRequestInfo
type: object
properties:
ExpirationDate:
format: date-time
description: Optional, Expiration Date
type: string
GracePeriod:
format: int32
description: Optional, Grace Period
type: integer
Tax:
format: double
description: Optional, Tax
type: number
Tax2:
format: double
description: Optional, Tax2
type: number
Tax2Type:
description: Optional, Tax2Type
type: string
Price:
format: double
description: Optional, Price
type: number
AutoInvoice:
description: Optional, Auto Invoice
default: false
type: boolean
CallerIdMatch:
description: Optional, Caller Id Match
default: false
type: boolean
AutoComplete:
description: Optional, Auto Complete
default: false
type: boolean
AutoDispatch:
description: Optional, Auto Dispatch
default: false
type: boolean
IsTransferAsset:
description: Indicates whether the work order has an asset for transfer
default: false
type: boolean
NewLocationIdForAssetTransfer:
format: int32
description: Identifier of the new location for asset transfer
type: integer
AssetTransferCode:
format: int32
description: Identifier of the reason for asset transfer
type: integer
ServiceChannel.Services.WebApi.Models.Response.Checklists.ChecklistResponses.ChecklistQuestionOptionResponse:
description: Answer option configured for a checklist question of the **Selector** type.
type: object
properties:
Id:
format: int32
description: ID of the answer option for a checklist question of the **Selector** type.
type: integer
Answer:
description: Answer option for a checklist question of the **Selector** type. A technician can select from a list of configured options when answering the question.
type: string
Sequence:
format: int32
description: Not applicable to checklists.
type: integer
IsConditionalFollowUp:
description: Defines whether a technician is prompted to add a comment to the selected answer option. A comment is mandatory if answering the checklist question is required.
default: false
type: boolean
ResponseResultInFailure:
description: Option for a checklist question of the **Selector** type.
default: false
type: boolean
ServiceChannel.Services.Messaging.Workorders.ChangeWoProjectIdRequest:
required:
- Value
type: object
properties:
Value:
format: int32
description: Project Id
type: integer
SendRequestToProjectApi:
description: Optional, Send Request To Project Api
default: false
type: boolean
Actor:
description: Optional, Actor
type: string
ServiceChannel.Services.Messaging.Workorders.CreateWoRequest.AdditionalField:
description: Service Request Additional Field (Name, Value) pairs
type: object
properties:
Name:
description: Additional Field Name
type: string
Value:
description: Additional Field Value
type: string
ServiceChannel.Services.Messaging.Workorders.DeclineWorkOrderRequest:
description: Request model to add information about the work order decline
type: object
properties:
DeclineReasonId:
format: int32
description: "Unique numeric identifier of the work order decline reason. \n
**Possible values**: `1` - Can't make ETA, `2` - \tTrade not serviced, `3` - Location not serviced, `4` - Not under warranty, `5` - Other, `6` - NTE too low. \n
***Note***: The parameter is required when the *DeclineHistoryWO* feature flag is on."
type: integer
CustomDeclineReason:
description: "Text explaining the reason for the work order decline. \n
***Note***: The parameter is required when the decline reason has AskCustomReason=true."
type: string
Note:
description: '*Optional*. Note text.'
type: string
ServiceChannel.Services.WebApi.Models.Request.Labels.CreateWorkOrdersLabelsRequest:
description: Request object for adding labels for a subscriber.
required:
- Labels
type: object
properties:
Labels:
description: List of labels
type: array
items:
type: string
ServiceChannel.Api.Model.Proposals.MlpLevelSimpleModel:
type: object
properties:
UserId:
format: int32
type: integer
LocationIds:
type: array
items:
format: int32
type: integer
LevelId:
format: int32
type: integer
LevelName:
type: string
Order:
format: int32
type: integer
UsersLocations:
type: object
additionalProperties:
type: array
items:
format: int32
type: integer
CategoryChange:
default: false
type: boolean
PriorityChange:
default: false
type: boolean
CodeChange:
default: false
type: boolean
DivisionId:
format: int32
type: integer
ServiceChannel.Services.WebApi.Models.Request.WorkOrder.ReassignWorkOrder.AdditionalApprovalCodeOptionRequest:
type: object
properties:
Id:
format: int32
type: integer
Value:
type: string
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.ChecklistFailureState:
description: Object containing the work order checklist failure state information.
type: object
properties:
IsPassed:
description: Indicates whether the work order avoids the failure criteria.
default: false
type: boolean
ServiceChannel.Services.Messaging.Workorders.CheckInRequest:
description: Check-in request
required:
- Latitude
- Longitude
type: object
properties:
WorkTypeId:
format: int32
description: "The unique ID of the work type.\n **Possible values:** `1` — Repair, `2` — Travel. Other values are possible when custom types are set up for the subscriber.\n **Default value:** 1."
type: integer
UserId:
format: int32
description: "The user ID of the technician that is checking in. Use the same `UserId` for one pair of check-in and check-out records.\n **Default value:** ID of the current user."
type: integer
TechsCount:
format: int32
description: "The number of technicians that are checking in.\n **Default value:** 1."
type: integer
Latitude:
format: double
description: "The latitude of the technician’s current position.\n Required for the Repair type. Not required for the Travel and custom types as well as for the Repair type when the [XML check-in/out permission](/guides/checkin/before-you-start/#xml-check-inout-permission) is enabled."
type: number
Longitude:
format: double
description: "The longitude of the technician’s current position.\n Required for the Repair type. Not required for the Travel and custom types as well as for the Repair type when the [XML check-in/out permission](/guides/checkin/before-you-start/#xml-check-inout-permission) is enabled."
type: number
CheckInTime:
format: date-time
description: "The date and time of the check-in. Either indicate in UTC or pass the current time and add the UTC offset.\n You can pass this value only when the [XML check-in/out permission](/guides/checkin/before-you-start/#xml-check-inout-permission) is enabled.\n **Default value:** current date and time."
type: string
Actor:
description: Optional, Actor
type: string
ServiceChannel.Services.Messaging.Workorders.AcceptWorkOrderRequest:
description: Request model to add a note to the work order while accepting it.
type: object
properties:
Note:
description: '*Optional*. Note text.'
type: string
ServiceChannel.Services.Messaging.Workorders.AssigneeUser:
type: object
properties:
UserId:
format: int32
type: integer
UserName:
type: string
System.Object:
type: object
properties: {}
ServiceChannel.Services.Messaging.Workorders.WorkOrder:
description: Workorder object for Messages exchenge.
type: object
properties:
Id:
format: int32
description: Work Order identifier.
type: integer
Number:
description: Work Order Number
type: string
PurchaseNumber:
description: Purchase number of work order
type: string
Subscriber:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Subscribers.Subscriber'
description: Subscriber info
Provider:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Providers.Provider'
description: Provider info
Location:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Location.Location'
description: Location info
LocationId:
format: int32
description: LocationId for use in ODATA calls without expanding Location property (ref. PLAT-55878)
type: integer
Status:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkorderStatusDescriptor'
description: Workorder Status
IssueTicketInfo:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.IssueLists.IssueTicketInformation'
description: Issue ticket info
Caller:
description: Caller
type: string
CreatedBy:
type: string
CallDate:
format: date-time
type: string
CallDate_DTO:
format: date-time
type: string
ReassignDate:
format: date-time
type: string
ReassignDate_DTO:
format: date-time
type: string
LocationOpenDate:
type: string
LocationRemodelDate:
type: string
EstimatedCompletionDate:
format: date-time
type: string
OriginalEstimatedCompletionDate:
format: date-time
type: string
ProjectedCompletionDate:
format: date-time
type: string
OriginalProjectedCompletionDate:
format: date-time
type: string
Priority:
type: string
PriorityId:
format: int32
type: integer
Trade:
type: string
TradeId:
format: int32
type: integer
ApprovalCode:
type: string
ScheduledDate:
format: date-time
type: string
ScheduledDate_DTO:
format: date-time
type: string
CompletedDate:
format: date-time
type: string
CompletedDate_DTO:
format: date-time
type: string
ExpirationDate:
format: date-time
description: Gets or sets ExpirationDate.
type: string
ExpirationDate_DTO:
format: date-time
type: string
OriginalEta:
format: date-time
type: string
OriginalEta_DTO:
format: date-time
type: string
UpdatedDate:
format: date-time
description: Updated Date
type: string
UpdatedDate_DTO:
format: date-time
type: string
CreatedDate:
format: date-time
description: "s\n Created Date"
type: string
CreatedDate_DTO:
format: date-time
type: string
Description:
type: string
CategoryId:
format: int32
type: integer
Category:
type: string
Nte:
format: double
type: number
Tax:
format: double
description: Tax
type: number
Tax2:
format: double
description: Tax2
type: number
Tax2Type:
description: Tax2Type
type: string
Price:
format: double
description: Price (subtotal)
type: number
Currency:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Currencies.Currency'
ProblemCode:
type: string
Invoice:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Invoices.Invoice'
Resolution:
type: string
Asset:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Assets.AssetResponse'
Assets:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Assets.AssetResponse'
AssetCount:
format: int32
type: integer
Attachments:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Attachments.AttachmentsDescriptor'
Notes:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Notes.NotesDescriptor'
PostedId:
format: int32
description: Gets or sets PostedId.
type: integer
LinkedWorkOrders:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.IdentityObject'
LinkedInWorkOrders:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.IdentityObject'
IsCheckInDenied:
description: Gets or sets a value indicating whether IsDenied.
default: false
type: boolean
CheckInDeniedReason:
description: Gets or sets Reason.
type: string
RecallWorkOrder:
format: int32
description: Recall WorkOrder Id
type: integer
IsInvoiced:
description: Gets or sets IsInvoiced.
default: false
type: boolean
readOnly: true
IsExpired:
description: Gets or sets IsExpired.
default: false
type: boolean
IsEnabledForMobile:
description: Gets or sets value that allowed clients to manage their vendors to participate in the mobile App process.
default: false
type: boolean
HasWorkActivity:
default: false
type: boolean
Source:
type: string
ClosingAuthorizationNumber:
format: int32
type: integer
CallerId:
format: int32
type: integer
AutoComplete:
default: false
type: boolean
Labels:
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Api.Model.Workorders.WorkOrderLabel'
AutoInvoice:
default: false
type: boolean
Assignee:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.AssigneeUser'
ProjectId:
format: int32
type: integer
FrequencyId:
format: int32
type: integer
ServiceId:
format: int32
type: integer
WeatherEvent:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WeatherEvent'
WorkFlowType:
format: int32
type: integer
ProjectedCompletionDate_DTO:
format: date-time
type: string
OriginalProjectedCompletionDate_DTO:
format: date-time
type: string
ServiceChannel.Services.Messaging.Invoices.InvoiceAmountsDetails:
description: Object containing the list of the invoice charges.
type: object
properties:
LaborAmount:
format: double
description: Amount of the labor charge. Must equal `Labors.Amount`.
type: number
MaterialAmount:
format: double
description: Amount of the material charge. Must equal `Materials.Amount`.
type: number
TravelAmount:
format: double
description: Amount of the trip charge.
type: number
FreightAmount:
format: double
description: Amount of the freight charge.
type: number
OtherAmount:
format: double
description: Amount of other charges. When you add this parameter, also specify `InvoiceAmountsDetails.OtherDescription`.
type: number
OtherDescription:
type: string
ServiceChannel.Services.Messaging.Invoices.InvoiceMaterial:
description: Information on the materials used. Add a separate object for each material.
type: object
properties:
Id:
format: int32
type: integer
InvoiceId:
format: int32
description: Invoice identifier.
type: integer
Description:
description: Name or description of the material. Length limit is 100 symbols.
type: string
PartNum:
description: Part, serial, or manufacturer number of the material. Length limit is 100 symbols.
type: string
UnitType:
format: byte
description: 'Unit of measurement. Valid values: 1 — Each; 2 — Box; 3 — Feet; 4 — Sqft; 5 — Lbs; 6 — Gal; 7 — Oz. Default value: 1.'
type: string
UnitPrice:
format: double
description: Price per unit.
type: number
PartName:
description: Part name.
type: string
MarkUpPercent:
format: double
description: Markup percent.
type: number
AgreedMarkUpPercent:
format: double
description: Agreed markup percent.
type: number
MarkUpDiscrepancyReason:
description: Mark up discrepancy reason.
type: string
AgreedPartPrice:
format: double
description: Agreed part price.
type: number
Quantity:
format: double
description: Quantity of the material.
type: number
Amount:
format: double
description: The amount of the material cost. The sum of all `Amount` parameters in the `Materials` array must equal `InvoiceAmountsDetails.MaterialAmount`.
type: number
ApprovalCodeGroup:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Invoices.InvoiceApprovalCodeGroup'
IsMarkUpDiscrepancy:
description: Markup discrepancy.
default: false
type: boolean
IsPartPriceDiscrepancy:
description: Part price discrepancy.
default: false
type: boolean
PriceDiscrepancyReason:
description: Price discrepancy reason.
type: string
isNontaxableVATEU:
default: false
type: boolean
ServiceChannel.Services.Messaging.Workorders.CreateWoRequest:
description: CreateWoRequest
required:
- ContractInfo
- Category
- CallDate
- Description
- ProblemCode
type: object
properties:
Number:
description: Work Order Number
type: string
PurchaseNumber:
description: Purchase Order Number
type: string
HasTruncatedDescription:
description: Optional
default: false
type: boolean
ContractInfo:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.ContractInfo'
description: "Required Contract Data Info to define ContractId.\n Describes who, where and what will perform as well as the one who requested work"
Comment:
description: Optional, Gets or sets the comment. Describes comments in work order
type: string
SetupId:
format: int32
description: "Optional Dashboard Id, UID of dashboard from which this work order was created\n must be bigger then zero and belong to existing dashboard"
type: integer
AssetId:
format: int32
description: "Optional Asset, UID of asset, that will be repaired/reinstalled\n must be present and correspond to valid asset if system finds that asset exists for specified LocationId,\n TradeName, IssueRequest.EquipmentType params and asset is required for issue choice specified by IssueRequest,\n SubscriberId and SetupId params"
type: integer
ReplaceAsset:
description: Optional
default: false
type: boolean
CallerName:
description: Optional, can be empty Caller Name. Name of the person/organization who created work order
type: string
Category:
description: "Required, not empty Category must be valid category for specified subscriber. Describes what type of work will be performed.\n This definition is broader then TradeName.\n For example if TradeName is \"FLOOR MAINTENANCE\" then Category will be \"Maintenance\""
type: string
CategoryId:
format: int32
type: integer
Priority:
description: "Required, not empty Priority must be valid priority for specified subscriber. Describes work order priority.\n For example \"Normal\", \"Emergency\""
type: string
PriorityId:
format: int32
type: integer
Nte:
format: double
description: "Required Nte value; optional only for users that have no access to change NTE. (decimal number (e.g. 1.00)) - describes maximum amount of money to be spent on work order.\n Must not exceed max amount defined by Subscriber.\n If you specify ExtendedInfo.Tax, ExtendedInfo.Tax2 and ExtendedInfo.Price then Nte must be equal to sum of those three params"
type: number
CallDate:
description: Required, date when work order was created.
type: string
CallDateDto:
format: date-time
description: Date when work order was created in DateTimeOffset format.
type: string
ScheduledDate:
description: "Optional, calculated based on CallDate and Priority by default. Date when provider will come to perform work order.\n Must be an actual date (i.e. not 1/1/1900 or 1/1/3001) + must be bigger then CallDate and smaller then ExpirationDate"
type: string
ScheduledDateDto:
format: date-time
description: Date when provider will come to perform work order in DateTimeOffset format.
type: string
CompletedDate:
description: Optional, WorkDate when its not completed status.
type: string
ProblemSource:
description: Optional, source from which the problem came from
type: string
Description:
description: Required problem description, Must not be empty. Overall description of a problem (e.g. "Coffee machines are broken all over the place - please help!")
type: string
ProblemCode:
description: Required, describes problem similar to Description attribute, but its value is predefined in subscriber's [IssueList].
type: string
RecallWorkOrder:
format: int32
description: Optional, UID of recalled work order. Work order is set as 'recalled' when subscriber isn't satisfied with work that was done by provider
type: integer
ServiceNowId:
description: Optional, Service Now Id
type: string
CurrencyId:
format: int32
description: "Optional, UID of currency used to pay for work order. Defaul value is '1' which corresponds to USD.\n Must be bigger then 0 and correspond to valid currency in dashboard which is found by SetupId param"
type: integer
FollowupWorkOrder:
format: int32
description: Optional, UID of work order that is created if problem cannot be fully solved in terms of original work order
type: integer
ApprovalCode:
description: Optional
type: string
IssueRequestInfo:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.CreateWoRequest.IssueRequest'
description: Optional, describes problem in terms of [Dashboard] application
DispatchSettingsInfo:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.CreateWoRequest.DispatchSettings'
description: Describes email notification settings on work order creation
Status:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.WorkorderStatus'
description: Status
ExtendedInfo:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.CreateWoRequest.ExtendedRequestInfo'
description: Optional, extended status value
Attachments:
description: "Optional, at least one attachement must be present in list if system finds that attachments are required for issue choice specified by IssueRequest,\n SubscriberId and SetupId params"
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Attachments.AddAttachmentRequest'
IgnoreAttachmentsRequiredFlag:
default: false
type: boolean
ApiRequest:
default: false
type: boolean
Materials:
description: Optional
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.CreateWoRequest.Material'
MaterialsUsed:
description: Optional
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.RefrigerantTracking.AddWorkOrderPartRefrigerantItem'
AdditionalFields:
description: Interactive troubleshooting additional fileds
type: array
items:
$ref: '#/components/schemas/ServiceChannel.Services.Messaging.Workorders.CreateWoRequest.AdditionalField'
IssueListHeaderId:
format: int32
description: Optional. Id in dash_IssueListHeader table
type: integer
ProposedNte:
format: double
description: Optional
type: number
NotifyProvider:
description: Optional
default: false
type: boolean
IsDashboardRequest:
description: Optional
default: false
type: boolean
FloorPlansImagePath:
description: Optional
type: string
AssigneeUserId:
format: int32
description: Optional
type: integer
SessionId:
description: SessionId to link work order with feedback session
type: string
ProjectId:
format: int32
description: Optional. Project Id from Project Tracker
type: integer
WeatherTypeId:
format: int32
description: Optional. Associate with a specific weather type
type: integer
LabelId:
format: int32
description: Optional, Label Id
type: integer
Labels:
description: Optional, Labels names
type: array
items:
type: string
AdditionalApprovalCodesList:
description: Additional Approval Codes List with id as a key
type: object
additionalProperties:
type: string
LeaseNote:
type: string
UserName:
type: string
UserId:
format: int32
type: integer
WorkFlowTypeId:
format: int32
type: integer
EstimatedCompletionDate:
format: date-time
type: string
IsAnomalyProviderOverwritten:
description: Flag to show that Anomaly Override has happened.
default: false
type: boolean
Anomaly:
$ref: '#/components/schemas/ServiceChannel.Api.Model.Workorders.OverrideProperties.Anomaly'
description: Info about work order anomaly (if it was found).
DecisionAnswers:
description: See {ServiceChannel.Services.Messaging.Workorders.GetWorkOrderPropertiesRequest.DecisionAnswers} for details
type: array
items:
$ref: '#/components/schemas/DecisionAnswer'
AssetNotListed:
default: false
type: boolean
SpaceId:
format: int32
type: integer
LocationPath:
type: string
ServiceChannel.Services.WebApi.Models.Response.WorkOrder.GetWorkOrdersResponse.CountDescriptor:
description: Count descriptor information.
type: object
properties:
Total:
format: int32
description: Total count.
type: integer
Own:
format: int32
description: Own count.
type: integer
ServiceChannel.Api.Model.Workorders.WorkOrderLabel:
type: object
properties:
Id:
format: int32
type: integer
Label:
type: string
ServiceChannel.Services.Messaging.Workorders.WeatherEvent:
type: object
properties:
Id:
format: int32
type: integer
Name:
type: string
ServiceChannel.Services.Messaging.CheckInOut.CheckInOutResponse:
description: Check In/Out Response
type: object
properties:
MechanicId:
format: int32
description: The unique ID of the reported check-in/out action.
type: integer
ServiceChannel.Services.Messaging.Workorders.CreateWoRequest.IssueRequest:
required:
- AreaId
type: object
properties:
AreaId:
format: int32
description: "Required, UID of problem area.\n Must be bigger then zero and belong and belong to existing area"
type: integer
ExtendedAreaName:
description: Optional, area name. Must be not empty
type: string
ProblemType:
description: Optional, Type of problem. Must be not empty
type: string
AssetType:
description: "Optional, type of asset, has predefined values in [IssueList]\n Must be not empty"
type: string
ServiceChannel.Services.Messaging.Providers.Provider:
type: object
properties:
Phone:
type: string
FullName:
description: Full Name
type: string
Address1:
description: Address1
type: string
Address2:
description: Adress2
type: string
City:
description: City
type: string
State:
description: State
type: string
Zip:
description: Zip
type: string
Country:
description: Country
type: string
MainContact:
description: Main Contact
type: string
DateCreated:
format: date-time
description: Date Created
type: string
LastUserDate:
description: Last User Date
type: string
SuperUser:
description: SuperUser
type: string
WebSite:
description: WebSite
type: string
Email:
description: Email
type: string
TaxId:
description: Tax Id
type: string
Trade:
description: Trade
type: string
ProcessingEmail:
description: Processing Email
type: string
FaxNumber:
description: Fax Number
type: string
SuiteFloor:
description: Suite Floor
type: string
MailInfo:
description: Mail Info
type: string
ImageFile:
description: Image File
type: string
ReturnMail:
description: Return Mail
type: string
MailFrequency:
format: int32
description: Mail Frequency
type: integer
FormId:
format: int32
description: Form Id
type: integer
Pager:
description: Pager
type: string
NightRequest:
format: int32
description: NightRequest
type: integer
ShortFormatEmail:
description: Short Format Email
type: string
LastTrainingDate:
format: date-time
description: Last Training Date
type: string
LastTrainingDateStr:
description: Last Training Date as a string
type: string
IsInternal:
description: Is Internal
default: false
type: boolean
IsOnOffShoreFeatureEnabled:
description: Is OnOffShoreFeature Enabled
default: false
type: boolean
Id:
format: int32
description: Id
type: integer
Name:
description: Name
type: string
DoNotDispatch:
description: DoNotDispatch enabled?
default: false
type: boolean
securitySchemes:
oauth2:
type: oauth2
flows:
authorizationCode:
scopes: {}
authorizationUrl: https://sb2login.servicechannel.com/oauth/authorize
tokenUrl: https://sb2login.servicechannel.com/oauth/token
description: OAuth2 Authorization