openapi: 3.1.1 info: title: D-Tools SI API Documentation description: 'The API allows integrations to: - Publish catalogs and projects to SI users. - Subscribe to projects and catalogs published by SI users. All API calls must pass an API key in the request header. The API key can be generated in SI 2016 Control Panel using the ''Manage Integrations'' feature. An API key is specific to a SI user and an integration. API callers must add to each call a custom header named **X-DTSI-ApiKey** along with the value of the API key. For example, if the API key value is `q54R39UBr0Skgd7VHvEbuwiRAOArUpt02o7z/vY+iwrg`, the custom header would be as follows: ``` X-DTSI-ApiKey: q54R39UBr0Skgd7VHvEbuwiRAOArUpt02o7z/vY+iwrg ```' version: 1.0.0 servers: - url: https://api.d-tools.com/si paths: /Publish/Projects: post: tags: - PublishProjects summary: Publish a new project to SI. requestBody: description: The project. content: application/json-patch+json: schema: $ref: '#/components/schemas/Project' application/json: schema: $ref: '#/components/schemas/Project' text/json: schema: $ref: '#/components/schemas/Project' application/*+json: schema: $ref: '#/components/schemas/Project' application/xml: schema: $ref: '#/components/schemas/Project' text/xml: schema: $ref: '#/components/schemas/Project' application/*+xml: schema: $ref: '#/components/schemas/Project' required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PublishProjectResponse' text/json: schema: $ref: '#/components/schemas/PublishProjectResponse' application/xml: schema: $ref: '#/components/schemas/PublishProjectResponse' text/xml: schema: $ref: '#/components/schemas/PublishProjectResponse' /Publish/Projects/Update: post: tags: - PublishProjects summary: Update an existing project in SI requestBody: description: '' content: application/json-patch+json: schema: $ref: '#/components/schemas/UpdateProject' application/json: schema: $ref: '#/components/schemas/UpdateProject' text/json: schema: $ref: '#/components/schemas/UpdateProject' application/*+json: schema: $ref: '#/components/schemas/UpdateProject' application/xml: schema: $ref: '#/components/schemas/UpdateProject' text/xml: schema: $ref: '#/components/schemas/UpdateProject' application/*+xml: schema: $ref: '#/components/schemas/UpdateProject' required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PublishResponse' text/json: schema: $ref: '#/components/schemas/PublishResponse' application/xml: schema: $ref: '#/components/schemas/PublishResponse' text/xml: schema: $ref: '#/components/schemas/PublishResponse' /Publish/Projects/NewChangeOrder: post: tags: - PublishProjects summary: Publish a new change order or update an existing change order (using the IntegrationChangeOrderId) for an existing SI project. requestBody: description: The new change order information. content: application/json-patch+json: schema: $ref: '#/components/schemas/NewChangeOrderInfo' application/json: schema: $ref: '#/components/schemas/NewChangeOrderInfo' text/json: schema: $ref: '#/components/schemas/NewChangeOrderInfo' application/*+json: schema: $ref: '#/components/schemas/NewChangeOrderInfo' application/xml: schema: $ref: '#/components/schemas/NewChangeOrderInfo' text/xml: schema: $ref: '#/components/schemas/NewChangeOrderInfo' application/*+xml: schema: $ref: '#/components/schemas/NewChangeOrderInfo' required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PublishResponse' text/json: schema: $ref: '#/components/schemas/PublishResponse' application/xml: schema: $ref: '#/components/schemas/PublishResponse' text/xml: schema: $ref: '#/components/schemas/PublishResponse' /Publish/Projects/ArchiveProjects: post: tags: - PublishProjects summary: Mark existing SI projects as archived (must be checked in). requestBody: description: '' content: application/json-patch+json: schema: type: array items: type: string application/json: schema: type: array items: type: string text/json: schema: type: array items: type: string application/*+json: schema: type: array items: type: string application/xml: schema: type: array items: type: string text/xml: schema: type: array items: type: string application/*+xml: schema: type: array items: type: string required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PublishResponse' text/json: schema: $ref: '#/components/schemas/PublishResponse' application/xml: schema: $ref: '#/components/schemas/PublishResponse' text/xml: schema: $ref: '#/components/schemas/PublishResponse' /Publish/Projects/LockProjects: post: tags: - PublishProjects summary: Mark existing SI projects as locked (must be checked in). requestBody: description: '' content: application/json-patch+json: schema: type: array items: type: string application/json: schema: type: array items: type: string text/json: schema: type: array items: type: string application/*+json: schema: type: array items: type: string application/xml: schema: type: array items: type: string text/xml: schema: type: array items: type: string application/*+xml: schema: type: array items: type: string required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PublishResponse' text/json: schema: $ref: '#/components/schemas/PublishResponse' application/xml: schema: $ref: '#/components/schemas/PublishResponse' text/xml: schema: $ref: '#/components/schemas/PublishResponse' /Publish/Projects/UnarchiveProjects: post: tags: - PublishProjects summary: Mark existing SI projects as unarchived. requestBody: description: '' content: application/json-patch+json: schema: type: array items: type: string application/json: schema: type: array items: type: string text/json: schema: type: array items: type: string application/*+json: schema: type: array items: type: string application/xml: schema: type: array items: type: string text/xml: schema: type: array items: type: string application/*+xml: schema: type: array items: type: string required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PublishResponse' text/json: schema: $ref: '#/components/schemas/PublishResponse' application/xml: schema: $ref: '#/components/schemas/PublishResponse' text/xml: schema: $ref: '#/components/schemas/PublishResponse' /Publish/Projects/UnlockProjects: post: tags: - PublishProjects summary: Mark existing SI projects as unlocked (must be checked in). requestBody: description: '' content: application/json-patch+json: schema: type: array items: type: string application/json: schema: type: array items: type: string text/json: schema: type: array items: type: string application/*+json: schema: type: array items: type: string application/xml: schema: type: array items: type: string text/xml: schema: type: array items: type: string application/*+xml: schema: type: array items: type: string required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PublishResponse' text/json: schema: $ref: '#/components/schemas/PublishResponse' application/xml: schema: $ref: '#/components/schemas/PublishResponse' text/xml: schema: $ref: '#/components/schemas/PublishResponse' /Publish/Projects/LockChangeOrderStatus: post: tags: - PublishProjects summary: Mark existing SI project change order status as locked or unlocked. requestBody: description: '' content: application/json-patch+json: schema: $ref: '#/components/schemas/LockChangeOrderStatus' application/json: schema: $ref: '#/components/schemas/LockChangeOrderStatus' text/json: schema: $ref: '#/components/schemas/LockChangeOrderStatus' application/*+json: schema: $ref: '#/components/schemas/LockChangeOrderStatus' application/xml: schema: $ref: '#/components/schemas/LockChangeOrderStatus' text/xml: schema: $ref: '#/components/schemas/LockChangeOrderStatus' application/*+xml: schema: $ref: '#/components/schemas/LockChangeOrderStatus' required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PublishResponse' text/json: schema: $ref: '#/components/schemas/PublishResponse' application/xml: schema: $ref: '#/components/schemas/PublishResponse' text/xml: schema: $ref: '#/components/schemas/PublishResponse' /Publish/Projects/ProjectComments: post: tags: - PublishProjects summary: Publish comments to an existing SI project. requestBody: description: '' content: application/json-patch+json: schema: type: array items: $ref: '#/components/schemas/AppProjectComment' application/json: schema: type: array items: $ref: '#/components/schemas/AppProjectComment' text/json: schema: type: array items: $ref: '#/components/schemas/AppProjectComment' application/*+json: schema: type: array items: $ref: '#/components/schemas/AppProjectComment' application/xml: schema: type: array items: $ref: '#/components/schemas/AppProjectComment' text/xml: schema: type: array items: $ref: '#/components/schemas/AppProjectComment' application/*+xml: schema: type: array items: $ref: '#/components/schemas/AppProjectComment' required: true responses: '200': description: '' /Subscribe/Projects: get: tags: - SubscribeProjects summary: Get projects and change orders published by a SI user. parameters: - name: clients in: query description: Clients to filter projects (Optional) schema: type: array items: type: string - name: progresses in: query description: Progresses to filter projects (Optional) schema: type: array items: type: string - name: includeImported in: query description: "Boolean. Include already imported projects. Optional with default value false which means\r\nby default\ \ you will only see projects which are not imported." schema: type: boolean default: false - name: includeArchived in: query description: "Boolean. Include archived projects. Optional with default value false which means\r\nby default you\ \ will only see projects which are not archived." schema: type: boolean default: false - name: searchText in: query description: The search text. schema: type: string - name: includeDeleted in: query description: "Boolean. Include project deleted in SI. Optional with default value false which means\r\nby default\ \ you will only see active projects which are not deleted." schema: type: boolean default: false - name: pageNumber in: query description: The page number. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 1 - name: pageSize in: query description: The page size. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 50 - name: projectNumber in: query description: The project number. schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/ProjectsResult' text/json: schema: $ref: '#/components/schemas/ProjectsResult' /Subscribe/Projects/GetProjectByMessageId: get: tags: - SubscribeProjects summary: Get a specific project or change order for a given message id published by a SI user. parameters: - name: messageId in: query description: The message Id schema: type: string - name: aggregateBy in: query description: "aggregateBy is an optional parameter and the value can be Item, Location, System or\r\nPhase. If aggregateBy\ \ is not provided then the project is returned unit wise (not aggregated)." schema: type: string - name: getAdjustmentsByItem in: query description: "getAdjustmentsByItem is an optional parameter.\r\nIf true then adjustments are returned with each project\ \ item.\r\nIf false the adjustments are aggregated and returned as project items." schema: type: boolean default: false responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/Project' text/json: schema: $ref: '#/components/schemas/Project' application/xml: schema: $ref: '#/components/schemas/Project' text/xml: schema: $ref: '#/components/schemas/Project' /Subscribe/Projects/GetProjectComments: get: tags: - SubscribeProjects summary: Get project comments published by a SI user. parameters: - name: id in: query description: The project id. schema: type: string - name: pageNumber in: query description: The page number. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 1 - name: pageSize in: query description: The page size. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 100 responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/ProjectCommentsResult' text/json: schema: $ref: '#/components/schemas/ProjectCommentsResult' /Subscribe/Projects/MarkAsImported: put: tags: - SubscribeProjects summary: Mark a project or change order as imported for a given project id. parameters: - name: id in: query description: The project id. schema: type: string - name: coNumber in: query description: coNumber is an optional parameter and is the Change Order Number. For approved projects you can pass the change order number. schema: type: string - name: publishedOnUnixTimeMs in: query description: publishedOnUnixTimeMs is an optional parameter and is the date the project was published in Unix epoch milliseconds. This property can be read from the project property PublishedOnUnixTimeMs and if passed will make sure no one has updated this project since you last read it. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string format: int64 responses: '200': description: '' /Subscribe/Projects/MarkAsImportedByMessageId: put: tags: - SubscribeProjects summary: Mark a project or change order as imported for a given message id. parameters: - name: messageId in: query description: The message Id schema: type: string - name: publishedOnUnixTimeMs in: query description: publishedOnUnixTimeMs is an optional parameter and is the date the project was published in Unix epoch milliseconds. This property can be read from the project property PublishedOnUnixTimeMs and if passed will make sure no one has updated this project since you last read it. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string format: int64 responses: '200': description: '' /Subscribe/Projects/{id}: get: tags: - SubscribeProjects summary: Get a specific project or change order for a given project id published by a SI user. parameters: - name: id in: path description: The project id. required: true schema: type: string - name: coNumber in: query description: "coNumber is an optional parameter and is the Change Order Number.\r\nFor approved project you can pass\ \ a change order number to get a specific change order for the approved project." schema: type: string - name: aggregateBy in: query description: "aggregateBy is an optional parameter and the value can be Item, Location, System or\r\nPhase. If aggregateBy\ \ is not provided then the project is returned unit wise (not aggregated)." schema: type: string - name: getAdjustmentsByItem in: query description: "getAdjustmentsByItem is an optional parameter.\r\nIf true then adjustments are returned with each project\ \ item.\r\nIf false the adjustments are aggregated and returned as project items." schema: type: boolean default: false responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/Project' text/json: schema: $ref: '#/components/schemas/Project' application/xml: schema: $ref: '#/components/schemas/Project' text/xml: schema: $ref: '#/components/schemas/Project' /SubscribePartialProjects/Projects: get: tags: - SubscribePartialProjects summary: Get partial projects published by a SI user . parameters: - name: clients in: query description: Clients to filter projects (Optional) schema: type: array items: type: string - name: progresses in: query description: Progresses to filter projects (Optional) schema: type: array items: type: string - name: includeImported in: query description: "Boolean. Include already imported projects. Optional with default value false which means\r\nby default\ \ you will only see projects which are not imported." schema: type: boolean default: false - name: searchText in: query description: The search text. schema: type: string - name: includeDeleted in: query description: "Boolean. Include project deleted in SI. Optional with default value false which means\r\nby default\ \ you will only see active projects which are not deleted." schema: type: boolean default: false - name: pageNumber in: query description: The page number. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 1 - name: pageSize in: query description: The page size. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 50 - name: projectNumber in: query description: The project number. schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PartialProjectsResult' text/json: schema: $ref: '#/components/schemas/PartialProjectsResult' /SubscribePartialProjects/MarkAsImported: put: tags: - SubscribePartialProjects summary: Mark a partial project as imported for a given message id. parameters: - name: messageId in: query description: The message id. schema: type: string responses: '200': description: '' /SubscribePartialProjects/Projects/{messageId}: get: tags: - SubscribePartialProjects summary: Get a specific partial project for a given message id published by a SI user. parameters: - name: messageId in: path description: The message id. required: true schema: type: string - name: aggregateBy in: query description: "aggregateBy is an optional parameter and the value can be Item, Location, System or\r\nPhase. If aggregateBy\ \ is not provided then the project is returned unit wise (not aggregated)." schema: type: string - name: getAdjustmentsByItem in: query description: "getAdjustmentsByItem is an optional parameter. \r\nIf true then adjustments are returned with each project\ \ item. \r\nIf false the adjustments are aggreegated and returend as project items." schema: type: boolean default: false responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/Project' text/json: schema: $ref: '#/components/schemas/Project' application/xml: schema: $ref: '#/components/schemas/Project' text/xml: schema: $ref: '#/components/schemas/Project' /Publish/Task: post: tags: - PublishTasks summary: Allows an integration to publish a task to a SI user. requestBody: description: The Task. content: application/json-patch+json: schema: $ref: '#/components/schemas/NewTask' application/json: schema: $ref: '#/components/schemas/NewTask' text/json: schema: $ref: '#/components/schemas/NewTask' application/*+json: schema: $ref: '#/components/schemas/NewTask' application/xml: schema: $ref: '#/components/schemas/NewTask' text/xml: schema: $ref: '#/components/schemas/NewTask' application/*+xml: schema: $ref: '#/components/schemas/NewTask' required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PublishTaskResponse' text/json: schema: $ref: '#/components/schemas/PublishTaskResponse' application/xml: schema: $ref: '#/components/schemas/PublishTaskResponse' text/xml: schema: $ref: '#/components/schemas/PublishTaskResponse' /Publish/UpdateTask: post: tags: - PublishTasks summary: Update an existing task in SI. requestBody: description: Update Task. content: application/json-patch+json: schema: $ref: '#/components/schemas/UpdateTask' application/json: schema: $ref: '#/components/schemas/UpdateTask' text/json: schema: $ref: '#/components/schemas/UpdateTask' application/*+json: schema: $ref: '#/components/schemas/UpdateTask' application/xml: schema: $ref: '#/components/schemas/UpdateTask' text/xml: schema: $ref: '#/components/schemas/UpdateTask' application/*+xml: schema: $ref: '#/components/schemas/UpdateTask' required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PublishResponse' text/json: schema: $ref: '#/components/schemas/PublishResponse' application/xml: schema: $ref: '#/components/schemas/PublishResponse' text/xml: schema: $ref: '#/components/schemas/PublishResponse' /Publish/DeleteTasks: post: tags: - PublishTasks summary: Delete existing tasks in SI (BETA). requestBody: description: Delete Task. content: application/json-patch+json: schema: $ref: '#/components/schemas/DeleteTasksRequest' application/json: schema: $ref: '#/components/schemas/DeleteTasksRequest' text/json: schema: $ref: '#/components/schemas/DeleteTasksRequest' application/*+json: schema: $ref: '#/components/schemas/DeleteTasksRequest' application/xml: schema: $ref: '#/components/schemas/DeleteTasksRequest' text/xml: schema: $ref: '#/components/schemas/DeleteTasksRequest' application/*+xml: schema: $ref: '#/components/schemas/DeleteTasksRequest' required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PublishResponse' text/json: schema: $ref: '#/components/schemas/PublishResponse' application/xml: schema: $ref: '#/components/schemas/PublishResponse' text/xml: schema: $ref: '#/components/schemas/PublishResponse' /Subscribe/Tasks: get: tags: - SubscribeTask summary: Get tasks published by a SI user. parameters: - name: clients in: query description: Clients to filter tasks (Optional) schema: type: array items: type: string - name: progresses in: query description: Progresses to filter tasks (Optional) schema: type: array items: type: string - name: projectId in: query description: ProjectId to filter tasks (Optional) schema: type: string - name: includeImported in: query description: Boolean. Include already imported tasks. Optional with default value false which means by default you will only see tasks which are not imported. schema: type: boolean default: false - name: searchText in: query description: The search text. schema: type: string - name: includeDeleted in: query description: "Boolean. Include task deleted in SI. Optional with default value false which means\r\nby default you\ \ will only see active tasks which are not deleted." schema: type: boolean default: false - name: pageNumber in: query description: The page number. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 1 - name: pageSize in: query description: The page size. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 50 responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/TasksResult' text/json: schema: $ref: '#/components/schemas/TasksResult' /Subscribe/Task/GetMobileInstallSiteNotes: get: tags: - SubscribeTask summary: Get Mobile Install task site notes for a given task id parameters: - name: id in: query description: Task id. schema: type: string responses: '200': description: '' content: application/json: schema: type: array items: $ref: '#/components/schemas/SiteNote' text/json: schema: type: array items: $ref: '#/components/schemas/SiteNote' application/xml: schema: type: array items: $ref: '#/components/schemas/SiteNote' text/xml: schema: type: array items: $ref: '#/components/schemas/SiteNote' /Subscribe/Task/MarkAsImported: put: tags: - SubscribeTask summary: Mark a task as imported for a given task id. parameters: - name: id in: query description: The task id. schema: type: string - name: publishedOnUnixTimeMs in: query description: The published on Unix time in milliseconds. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string format: int64 responses: '200': description: '' /Subscribe/Tasks/ByProject/{projectId}: get: tags: - SubscribeTask summary: Get a tasks for a given project id. parameters: - name: projectId in: path description: The project id. required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/SITask' text/json: schema: $ref: '#/components/schemas/SITask' application/xml: schema: $ref: '#/components/schemas/SITask' text/xml: schema: $ref: '#/components/schemas/SITask' /Subscribe/Tasks/{id}: get: tags: - SubscribeTask summary: Get a task for a given task id. parameters: - name: id in: path description: The task id. required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/SITask' text/json: schema: $ref: '#/components/schemas/SITask' application/xml: schema: $ref: '#/components/schemas/SITask' text/xml: schema: $ref: '#/components/schemas/SITask' /Publish/ServiceOrder: post: tags: - PublishServiceOrders summary: Publish a new service order to SI. requestBody: description: The Service Order. content: application/json-patch+json: schema: $ref: '#/components/schemas/NewServiceOrder' application/json: schema: $ref: '#/components/schemas/NewServiceOrder' text/json: schema: $ref: '#/components/schemas/NewServiceOrder' application/*+json: schema: $ref: '#/components/schemas/NewServiceOrder' application/xml: schema: $ref: '#/components/schemas/NewServiceOrder' text/xml: schema: $ref: '#/components/schemas/NewServiceOrder' application/*+xml: schema: $ref: '#/components/schemas/NewServiceOrder' required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PublishResponse' text/json: schema: $ref: '#/components/schemas/PublishResponse' application/xml: schema: $ref: '#/components/schemas/PublishResponse' text/xml: schema: $ref: '#/components/schemas/PublishResponse' /Publish/UpdateServiceOrder: post: tags: - PublishServiceOrders summary: Update an existing service order in SI. requestBody: description: Update Service Order. content: application/json-patch+json: schema: $ref: '#/components/schemas/UpdateServiceOrder' application/json: schema: $ref: '#/components/schemas/UpdateServiceOrder' text/json: schema: $ref: '#/components/schemas/UpdateServiceOrder' application/*+json: schema: $ref: '#/components/schemas/UpdateServiceOrder' application/xml: schema: $ref: '#/components/schemas/UpdateServiceOrder' text/xml: schema: $ref: '#/components/schemas/UpdateServiceOrder' application/*+xml: schema: $ref: '#/components/schemas/UpdateServiceOrder' required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PublishResponse' text/json: schema: $ref: '#/components/schemas/PublishResponse' application/xml: schema: $ref: '#/components/schemas/PublishResponse' text/xml: schema: $ref: '#/components/schemas/PublishResponse' /Subscribe/ServiceOrders: get: tags: - SubscribeServiceOrder summary: Get service order published by a SI user. parameters: - name: clients in: query description: Clients to filter service orders (Optional) schema: type: array items: type: string - name: progresses in: query description: Progresses to filter servic orders (Optional) schema: type: array items: type: string - name: includeImported in: query description: Boolean. Include already imported service orders. Optional with default value false which means by default you will only see service orders which are not imported. schema: type: boolean default: false - name: searchText in: query description: The search text. schema: type: string - name: includeDeleted in: query description: "Boolean. Include service order deleted in SI. Optional with default value false which means\r\nby default\ \ you will only see active service orders which are not deleted." schema: type: boolean default: false - name: pageNumber in: query description: The page number. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 1 - name: pageSize in: query description: The page size. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 50 responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/ServiceOrdersResult' text/json: schema: $ref: '#/components/schemas/ServiceOrdersResult' /Subscribe/ServiceOrder/GetMobileInstallSiteNotes: get: tags: - SubscribeServiceOrder summary: Get Mobile Install service order site notes for a given service order id parameters: - name: id in: query description: Service order id. schema: type: string responses: '200': description: '' content: application/json: schema: type: array items: $ref: '#/components/schemas/SiteNote' text/json: schema: type: array items: $ref: '#/components/schemas/SiteNote' application/xml: schema: type: array items: $ref: '#/components/schemas/SiteNote' text/xml: schema: type: array items: $ref: '#/components/schemas/SiteNote' /Subscribe/ServiceOrders/MarkAsImported: put: tags: - SubscribeServiceOrder summary: Mark a service order as imported for a given service order id. parameters: - name: id in: query description: The service order id. schema: type: string - name: publishedOnUnixTimeMs in: query description: The published on Unix time in milliseconds. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string format: int64 responses: '200': description: '' /Subscribe/ServiceOrders/{id}: get: tags: - SubscribeServiceOrder summary: Get a service order for a given service order id. parameters: - name: id in: path description: The service order id. required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/ServiceOrder' text/json: schema: $ref: '#/components/schemas/ServiceOrder' application/xml: schema: $ref: '#/components/schemas/ServiceOrder' text/xml: schema: $ref: '#/components/schemas/ServiceOrder' /Subscribe/PurchaseOrders: get: tags: - SubscribePurchaseOrder summary: Get purchase orders published by a SI user. parameters: - name: vendors in: query description: Vendors to filter purchase orders (Optional) schema: type: array items: type: string - name: statuses in: query description: Statuses to filter purchase orders (Optional) schema: type: array items: type: string - name: includeImported in: query description: Boolean. Include already imported purchase orders. Optional with default value false which means by default you will only see purchase orders which are not imported. schema: type: boolean default: false - name: searchText in: query description: The search text. schema: type: string - name: includeDeleted in: query description: "Boolean. Include purchase order deleted in SI. Optional with default value false which means\r\nby default\ \ you will only see active purchase orders which are not deleted." schema: type: boolean default: false - name: pageNumber in: query description: The page number. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 1 - name: pageSize in: query description: The page size. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 50 responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PurchaseOrdersResult' text/json: schema: $ref: '#/components/schemas/PurchaseOrdersResult' /Subscribe/PurchaseOrders/MarkAsImported: put: tags: - SubscribePurchaseOrder summary: Mark a purchase order as imported for a given purchase order id. parameters: - name: id in: query description: The purchase order id. schema: type: string - name: publishedOnUnixTimeMs in: query description: The published on Unix time in milliseconds. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string format: int64 responses: '200': description: '' /Subscribe/PurchaseOrders/{id}: get: tags: - SubscribePurchaseOrder summary: Get a purchase order for a given purchase order id. parameters: - name: id in: path description: The purchase order id. required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PurchaseOrder' text/json: schema: $ref: '#/components/schemas/PurchaseOrder' application/xml: schema: $ref: '#/components/schemas/PurchaseOrder' text/xml: schema: $ref: '#/components/schemas/PurchaseOrder' /Subscribe/ServicePlans: get: tags: - SubscribeServicePlan summary: Get service plans published by a SI user parameters: - name: clients in: query description: Clients to filter service plans (Optional) schema: type: array items: type: string - name: statuses in: query description: Statuses to filter servic plans (Optional) schema: type: array items: type: string - name: includeImported in: query description: Boolean. Include already imported service plans. Optional with default value false which means by default you will only see service plans which are not imported. schema: type: boolean default: false - name: searchText in: query description: The search text. schema: type: string - name: includeDeleted in: query description: "Boolean. Include servic plan deleted in SI. Optional with default value false which means\r\nby default\ \ you will only see active servic plans which are not deleted." schema: type: boolean default: false - name: pageNumber in: query description: The page number. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 1 - name: pageSize in: query description: The page size. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 50 responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/ServicePlansResult' text/json: schema: $ref: '#/components/schemas/ServicePlansResult' /Subscribe/ServicePlans/MarkAsImported: put: tags: - SubscribeServicePlan summary: Mark a service plan as imported for a given service plan id. parameters: - name: id in: query description: The service plan id. schema: type: string - name: publishedOnUnixTimeMs in: query description: The published on Unix time in milliseconds. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string format: int64 responses: '200': description: '' /Subscribe/ServicePlans/{id}: get: tags: - SubscribeServicePlan summary: Get a service plan for a given service plan id. parameters: - name: id in: path description: The service plan id. required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/ServicePlan' text/json: schema: $ref: '#/components/schemas/ServicePlan' application/xml: schema: $ref: '#/components/schemas/ServicePlan' text/xml: schema: $ref: '#/components/schemas/ServicePlan' /Publish/TimeSheets: post: tags: - PublishTimeSheets summary: Publish a new time sheet to SI. requestBody: description: NewTimeSheetRequest. content: application/json-patch+json: schema: $ref: '#/components/schemas/NewTimeSheetsRequest' application/json: schema: $ref: '#/components/schemas/NewTimeSheetsRequest' text/json: schema: $ref: '#/components/schemas/NewTimeSheetsRequest' application/*+json: schema: $ref: '#/components/schemas/NewTimeSheetsRequest' application/xml: schema: $ref: '#/components/schemas/NewTimeSheetsRequest' text/xml: schema: $ref: '#/components/schemas/NewTimeSheetsRequest' application/*+xml: schema: $ref: '#/components/schemas/NewTimeSheetsRequest' required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PublishResponse' text/json: schema: $ref: '#/components/schemas/PublishResponse' application/xml: schema: $ref: '#/components/schemas/PublishResponse' text/xml: schema: $ref: '#/components/schemas/PublishResponse' /Publish/UpdateTimeSheets: post: tags: - PublishTimeSheets summary: Update an existing time sheets in SI. requestBody: description: Update Time Sheets. content: application/json-patch+json: schema: $ref: '#/components/schemas/UpdateTimeSheetsRequest' application/json: schema: $ref: '#/components/schemas/UpdateTimeSheetsRequest' text/json: schema: $ref: '#/components/schemas/UpdateTimeSheetsRequest' application/*+json: schema: $ref: '#/components/schemas/UpdateTimeSheetsRequest' application/xml: schema: $ref: '#/components/schemas/UpdateTimeSheetsRequest' text/xml: schema: $ref: '#/components/schemas/UpdateTimeSheetsRequest' application/*+xml: schema: $ref: '#/components/schemas/UpdateTimeSheetsRequest' required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PublishResponse' text/json: schema: $ref: '#/components/schemas/PublishResponse' application/xml: schema: $ref: '#/components/schemas/PublishResponse' text/xml: schema: $ref: '#/components/schemas/PublishResponse' /Subscribe/TimeSheets: get: tags: - SubscribeTimeSheet summary: Get time sheets published by a SI user. parameters: - name: clients in: query description: Clients to filter time sheets (Optional) schema: type: array items: type: string - name: includeImported in: query description: Boolean. Include already imported time sheets. Optional with default value false which means by default you will only see time sheets which are not imported. schema: type: boolean default: false - name: searchText in: query description: The search text. schema: type: string - name: includeDeleted in: query description: "Boolean. Include time sheet deleted in SI. Optional with default value false which means\r\nby default\ \ you will only see active time sheets which are not deleted." schema: type: boolean default: false - name: pageNumber in: query description: The page number. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 1 - name: pageSize in: query description: The page size. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 50 responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/TimeSheetsResult' text/json: schema: $ref: '#/components/schemas/TimeSheetsResult' /Subscribe/TimeSheets/MarkAsImported: put: tags: - SubscribeTimeSheet summary: Mark a time sheet as imported for a given time sheet id parameters: - name: id in: query description: The time sheet id. schema: type: string - name: publishedOnUnixTimeMs in: query description: The published on Unix time in milliseconds. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string format: int64 responses: '200': description: '' /Subscribe/TimeSheets/{id}: get: tags: - SubscribeTimeSheet summary: Get a time sheet for a given time sheet id parameters: - name: id in: path description: The time sheet id. required: true schema: type: string responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/TimeSheet' text/json: schema: $ref: '#/components/schemas/TimeSheet' application/xml: schema: $ref: '#/components/schemas/TimeSheet' text/xml: schema: $ref: '#/components/schemas/TimeSheet' /Publish/ProductCatalogs: post: tags: - PublishProductCatalogs summary: Publish a product catalog to a SI user. requestBody: description: The product catalog. content: application/json-patch+json: schema: $ref: '#/components/schemas/ProductCatalog' application/json: schema: $ref: '#/components/schemas/ProductCatalog' text/json: schema: $ref: '#/components/schemas/ProductCatalog' application/*+json: schema: $ref: '#/components/schemas/ProductCatalog' application/xml: schema: $ref: '#/components/schemas/ProductCatalog' text/xml: schema: $ref: '#/components/schemas/ProductCatalog' application/*+xml: schema: $ref: '#/components/schemas/ProductCatalog' required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PublishResponse' text/json: schema: $ref: '#/components/schemas/PublishResponse' application/xml: schema: $ref: '#/components/schemas/PublishResponse' text/xml: schema: $ref: '#/components/schemas/PublishResponse' /Subscribe/ProductCatalogs: get: tags: - SubscribeProductCatalogs summary: Get product catalogs published by a SI user. parameters: - name: includeImported in: query description: "Boolean. Include already imported product catalogs. Optional with default value false\r\nwhich means\ \ by default you will only see product catalogs which are not imported." schema: type: boolean default: false - name: searchText in: query description: The search text. schema: type: string - name: pageNumber in: query description: The page number. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 1 - name: pageSize in: query description: The page size. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 50 responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/CatalogsResult' text/json: schema: $ref: '#/components/schemas/CatalogsResult' /Subscribe/ProductCatalogs/MarkAsImported: put: tags: - SubscribeProductCatalogs summary: Mark a product catalog as imported for a given catalog id. parameters: - name: id in: query description: The product catalog id. schema: type: string responses: '200': description: '' /Subscribe/ProductCatalogs/{id}: get: tags: - SubscribeProductCatalogs summary: Get a product catalog for a given catalog id. parameters: - name: id in: path description: The product catalog id. required: true schema: type: string - name: pageNumber in: query description: The page number. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 1 - name: pageSize in: query description: The page size. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 10000 responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/ProductCatalog' text/json: schema: $ref: '#/components/schemas/ProductCatalog' application/xml: schema: $ref: '#/components/schemas/ProductCatalog' text/xml: schema: $ref: '#/components/schemas/ProductCatalog' /Publish/Clients: post: tags: - PublishClients summary: Publish a list of clients to SI. requestBody: description: The client list. content: application/json-patch+json: schema: $ref: '#/components/schemas/ClientList' application/json: schema: $ref: '#/components/schemas/ClientList' text/json: schema: $ref: '#/components/schemas/ClientList' application/*+json: schema: $ref: '#/components/schemas/ClientList' application/xml: schema: $ref: '#/components/schemas/ClientList' text/xml: schema: $ref: '#/components/schemas/ClientList' application/*+xml: schema: $ref: '#/components/schemas/ClientList' required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PublishResponse' text/json: schema: $ref: '#/components/schemas/PublishResponse' application/xml: schema: $ref: '#/components/schemas/PublishResponse' text/xml: schema: $ref: '#/components/schemas/PublishResponse' /Publish/Clients/Update: post: tags: - PublishClients summary: Update an existing client in SI requestBody: description: '' content: application/json-patch+json: schema: $ref: '#/components/schemas/UpdateClient' application/json: schema: $ref: '#/components/schemas/UpdateClient' text/json: schema: $ref: '#/components/schemas/UpdateClient' application/*+json: schema: $ref: '#/components/schemas/UpdateClient' application/xml: schema: $ref: '#/components/schemas/UpdateClient' text/xml: schema: $ref: '#/components/schemas/UpdateClient' application/*+xml: schema: $ref: '#/components/schemas/UpdateClient' required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PublishResponse' text/json: schema: $ref: '#/components/schemas/PublishResponse' application/xml: schema: $ref: '#/components/schemas/PublishResponse' text/xml: schema: $ref: '#/components/schemas/PublishResponse' /Subscribe/Clients: get: tags: - SubscribeClients summary: Get clients published by a SI user. parameters: - name: includeImported in: query description: "Boolean. Include already imported clients. Optional with default value false which means\r\nby default\ \ you will only see clients which are not imported." schema: type: boolean default: false - name: searchText in: query description: The search text. schema: type: string - name: includeDeleted in: query description: "Boolean. Include client deleted in SI. Optional with default value false which means\r\nby default you\ \ will only see active clients which are not deleted." schema: type: boolean default: false - name: pageNumber in: query description: The page number. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 1 - name: pageSize in: query description: The page size. schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 50 responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/ClientsResult' text/json: schema: $ref: '#/components/schemas/ClientsResult' /Subscribe/Clients/ClientList: post: tags: - SubscribeClients summary: Get clients for given client ids published by a SI user. You can pass a maximum of 100 client ids. requestBody: description: Send single or multiple clientIds content: application/json-patch+json: schema: type: array items: type: string application/json: schema: type: array items: type: string text/json: schema: type: array items: type: string application/*+json: schema: type: array items: type: string required: true responses: '200': description: '' content: application/json: schema: type: array items: $ref: '#/components/schemas/Client' text/json: schema: type: array items: $ref: '#/components/schemas/Client' application/xml: schema: type: array items: $ref: '#/components/schemas/Client' text/xml: schema: type: array items: $ref: '#/components/schemas/Client' /Subscribe/Clients/MarkAsImported: post: tags: - SubscribeClients summary: Mark clients as imported for given client ids. You can pass a maximum of 100 client ids. requestBody: description: Send single or multiple clientIds content: application/json-patch+json: schema: type: array items: type: string application/json: schema: type: array items: type: string text/json: schema: type: array items: type: string application/*+json: schema: type: array items: type: string required: true responses: '200': description: '' /Message/PublishedMessageStatus: get: tags: - Message summary: Get status of a published message. parameters: - name: messageId in: query description: Id of the message schema: type: string format: uuid responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/MessageStatus' text/json: schema: $ref: '#/components/schemas/MessageStatus' application/xml: schema: $ref: '#/components/schemas/MessageStatus' text/xml: schema: $ref: '#/components/schemas/MessageStatus' /Message/PublishedMessagesStatus: get: tags: - Message summary: Get status of published messages. parameters: - name: messageStatusIds in: query description: 'Message status Id: Pending = 1, Imported = 2, Failed = 3' schema: type: array items: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: uint8 - name: messageTypeIds in: query description: 'Message type Id: ProductCatalog = 1, Project = 11, UpdateProject = 12, NewProjectChangeOrderInfo = 13, UpdateClient = 21' schema: type: array items: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: uint8 - name: pageNumber in: query description: Page Number schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 1 - name: pageSize in: query description: Page Size schema: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 default: 50 responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/MessageResponse' text/json: schema: $ref: '#/components/schemas/MessageResponse' /Publish/Vendors: post: tags: - PublishVendors summary: Publish a list of vendors to SI. requestBody: description: The vendor list. content: application/json-patch+json: schema: $ref: '#/components/schemas/VendorList' application/json: schema: $ref: '#/components/schemas/VendorList' text/json: schema: $ref: '#/components/schemas/VendorList' application/*+json: schema: $ref: '#/components/schemas/VendorList' application/xml: schema: $ref: '#/components/schemas/VendorList' text/xml: schema: $ref: '#/components/schemas/VendorList' application/*+xml: schema: $ref: '#/components/schemas/VendorList' required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PublishResponse' text/json: schema: $ref: '#/components/schemas/PublishResponse' application/xml: schema: $ref: '#/components/schemas/PublishResponse' text/xml: schema: $ref: '#/components/schemas/PublishResponse' /Publish/Vendors/Update: post: tags: - PublishVendors summary: Update an existing vendor in SI requestBody: description: '' content: application/json-patch+json: schema: $ref: '#/components/schemas/UpdateVendor' application/json: schema: $ref: '#/components/schemas/UpdateVendor' text/json: schema: $ref: '#/components/schemas/UpdateVendor' application/*+json: schema: $ref: '#/components/schemas/UpdateVendor' application/xml: schema: $ref: '#/components/schemas/UpdateVendor' text/xml: schema: $ref: '#/components/schemas/UpdateVendor' application/*+xml: schema: $ref: '#/components/schemas/UpdateVendor' required: true responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/PublishResponse' text/json: schema: $ref: '#/components/schemas/PublishResponse' application/xml: schema: $ref: '#/components/schemas/PublishResponse' text/xml: schema: $ref: '#/components/schemas/PublishResponse' components: schemas: Address: type: object properties: street1: type: - 'null' - string street2: type: - 'null' - string city: type: - 'null' - string state: type: - 'null' - string postalCode: type: - 'null' - string country: type: - 'null' - string phone: type: - 'null' - string fax: type: - 'null' - string AppProjectComment: type: object properties: projectId: type: - 'null' - string description: ProjectId for project (must be a Guid). (Required) comment: type: - 'null' - string description: Comment (Required) commentedBy: type: - 'null' - string description: Commented By CatalogInfo: type: object properties: id: type: - 'null' - string description: Unique Id for the catalog name: type: - 'null' - string description: Catalog name description: type: - 'null' - string description: Catalog description importedOn: type: - 'null' - string description: Date catalog was imported by SI user format: date-time publishedOn: type: string description: Date catalog was published format: date-time description: Catalog Information CatalogsResult: type: object properties: catalogs: type: - 'null' - array items: $ref: '#/components/schemas/CatalogInfo' description: Catalogs array totalCount: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Total count of catalogs format: int32 Client: type: object properties: id: type: - 'null' - string description: Unique Id for the client (must be Guid). Client will be created in SI with this Guid and will be used to update client. name: type: - 'null' - string description: Client name (Required) number: type: - 'null' - string description: Number integrationId: type: - 'null' - string description: Optional Id provided by the Integration for client. The IntegrationId can be used to update clients phone: type: - 'null' - string description: Phone fax: type: - 'null' - string description: Fax email: type: - 'null' - string description: Email webSite: type: - 'null' - string description: Web site clientType: type: - 'null' - string description: Client Type - must be Lead or Prospect or Client leadSource: type: - 'null' - string description: Lead source tax: type: - 'null' - string description: Tax laborTax: type: - 'null' - string description: Labor tax createdOn: type: string description: Date the client was created (UTC Time) format: date-time updatedOn: type: string description: Date the client was updated (UTC Time) format: date-time updatedBy: type: - 'null' - string description: Client Updated By publishedBy: type: - 'null' - string description: Client Published By clientAddresses: type: - 'null' - array items: $ref: '#/components/schemas/ClientAddress' description: Client addresses for client clientContacts: type: - 'null' - array items: $ref: '#/components/schemas/ClientContact' description: Client contacts for client customField1: type: - 'null' - string description: CustomField1 (Text) (BETA). customField2: type: - 'null' - string description: CustomField2 (Text) (BETA). customField3: type: - 'null' - string description: CustomField3 (Text) (BETA). customField4: type: - 'null' - string description: CustomField4 (Text) (BETA). customField5: type: - 'null' - string description: CustomField5 (Text) (BETA). customField6: type: - 'null' - boolean description: CustomField6 (Boolean) (BETA). customField7: type: - 'null' - boolean description: CustomField7 (Boolean) (BETA). customField8: type: - 'null' - boolean description: CustomField8 (Boolean) (BETA). customField9: type: - 'null' - boolean description: CustomField9 (Boolean) (BETA). customField10: type: - 'null' - boolean description: CustomField10 (Boolean) (BETA). customField11: type: - 'null' - string description: CustomField11 (Date) (BETA). format: date-time customField12: type: - 'null' - string description: CustomField12 (Date) (BETA). format: date-time customField13: type: - 'null' - string description: CustomField13 (Date) (BETA). format: date-time customField14: type: - 'null' - string description: CustomField14 (Date) (BETA). format: date-time customField15: type: - 'null' - string description: CustomField15 (Date) (BETA). format: date-time customField16: type: - 'null' - string description: CustomField16 (List) (BETA). customField17: type: - 'null' - string description: CustomField17 (List) (BETA). customField18: type: - 'null' - string description: CustomField18 (List) (BETA). customField19: type: - 'null' - string description: CustomField19 (List) (BETA). customField20: type: - 'null' - string description: CustomField20 (List) (BETA). customField21: type: - 'null' - string description: CustomField21 (Hyperlink) (BETA). customField22: type: - 'null' - string description: CustomField22 (Hyperlink) (BETA). customField23: type: - 'null' - string description: CustomField23 (Hyperlink) (BETA). customField24: type: - 'null' - string description: CustomField24 (Hyperlink) (BETA). description: Client object ClientAddress: type: object properties: typeId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Client Addres Type - must be type 1 = Billing, 2 = Site, 3 = Other format: uint8 name: type: - 'null' - string street1: type: - 'null' - string street2: type: - 'null' - string city: type: - 'null' - string state: type: - 'null' - string postalCode: type: - 'null' - string country: type: - 'null' - string phone: type: - 'null' - string fax: type: - 'null' - string description: Client address object ClientContact: type: object properties: firstName: type: - 'null' - string lastName: type: - 'null' - string company: type: - 'null' - string title: type: - 'null' - string email: type: - 'null' - string phone: type: - 'null' - string fax: type: - 'null' - string mobile: type: - 'null' - string street1: type: - 'null' - string street2: type: - 'null' - string city: type: - 'null' - string state: type: - 'null' - string postalCode: type: - 'null' - string country: type: - 'null' - string notes: type: - 'null' - string description: Client contact object ClientInfo: type: object properties: id: type: - 'null' - string description: Unique Id for the client list name: type: - 'null' - string description: Client name email: type: - 'null' - string description: Client Email phone: type: - 'null' - string description: Client Phone deleted: type: - 'null' - boolean description: Client deleted importedOn: type: - 'null' - string description: Date client list was imported by SI user format: date-time publishedOn: type: string description: Date client list was published format: date-time description: Client List Information ClientList: type: object properties: id: type: - 'null' - string description: Unique Id for the client (Required) name: type: - 'null' - string description: Name for the client list (Required) description: type: - 'null' - string description: Client list description clients: type: - 'null' - array items: $ref: '#/components/schemas/Client' description: Client list. description: Client List objects ClientsResult: type: object properties: clientInfos: type: - 'null' - array items: $ref: '#/components/schemas/ClientInfo' totalCount: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 Contact: type: object properties: name: type: - 'null' - string description: Name of the contact (Required) title: type: - 'null' - string description: Contact Title email: type: - 'null' - string description: Contact Email phone: type: - 'null' - string description: Contact Phone mobile: type: - 'null' - string description: Contact Mobile isPrimary: type: boolean description: Is contact the primary contact for the project? One contact can be marked as the primary contact in project. ContactInfo: type: object properties: name: type: - 'null' - string description: Name of the contact title: type: - 'null' - string email: type: - 'null' - string phone: type: - 'null' - string mobile: type: - 'null' - string DeleteTasksRequest: type: object properties: ids: type: - 'null' - array items: type: string description: Ids of tasks to delete (Required and must match existing task ids in SI) (BETA). ItemLaborType: type: object properties: name: type: - 'null' - string description: Labor Type name hours: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Labor Type Hours format: double totalHours: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Total Labor Hours includes Base, Misc, Mgt and Design hours and accounts for wire length (if any) and quantity format: double Location: type: object properties: id: type: - 'null' - string description: Unique Id for the location (Required) name: type: - 'null' - string description: Name for the location (Required) fullName: type: - 'null' - string description: Full name for the location including parent name number: type: - 'null' - string description: Number for the location fullNumber: type: - 'null' - string description: Full number for the location including parent number description: type: - 'null' - string description: Location description parentId: type: - 'null' - string description: Id of parent location LockChangeOrderInfo: type: object properties: integrationChangeOrderId: type: - 'null' - string description: Id for the change order sent by integration (matching field can be Integration ChangeOrder Id or (Number and Type)) number: type: - 'null' - string description: Number of the change order (matching field can be Integration ChangeOrder Id or (Number and Type)) type: type: - 'null' - string description: Type of the change order (External or Internal) (matching field can be Integration ChangeOrder Id or (Number and Type)) lock: type: boolean description: Change Order Lock LockChangeOrderStatus: type: object properties: projectId: type: - 'null' - string description: Id of project to update (Required) messageId: type: string format: uuid date: type: string format: date-time lockChangeOrderStatusInfos: type: - 'null' - array items: $ref: '#/components/schemas/LockChangeOrderStatusInfo' description: List of Change Order to lock status or unlock status description: Lock Change Order Status LockChangeOrderStatusInfo: type: object properties: integrationChangeOrderId: type: - 'null' - string description: Id for the change order sent by integration (matching field can be Integration ChangeOrder Id or (Number and Type)) number: type: - 'null' - string description: Number of the change order (matching field can be Integration ChangeOrder Id or (Number and Type)) type: type: - 'null' - string description: Type of the change order (External or Internal) (matching field can be Integration ChangeOrder Id or (Number and Type)) lockStatus: type: boolean description: Change Order Lock Status MessageResponse: type: object properties: messageStatuses: type: - 'null' - array items: $ref: '#/components/schemas/MessageStatus' totalCount: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 description: Message response MessageStatus: type: object properties: id: type: string description: Id of Message format: uuid typeId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Type Id of the message. ProductCatalog = 1, Project = 11, UpdateProject = 12, NewProjectChangeOrderInfo = 13, UpdateClient = 21, ClientList = 22 format: uint8 statusId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Status Id of the message. Pending = 1, Imported = 2, Failed = 3 (check Error Message) format: uint8 importedOn: type: - 'null' - string description: Date imported to SI format: date-time errorMessage: type: - 'null' - string description: Error message (populated if StatusId = 3 (Failed) description: Message status MiscItem: type: object properties: name: type: - 'null' - string description: Name of Misc. Item description: type: - 'null' - string quantity: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 unitPrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string format: double NewChangeOrderInfo: type: object properties: projectId: type: - 'null' - string description: ProjectId for project (must be a Guid). (Required) integrationChangeOrderId: type: - 'null' - string description: Id for the change order sent by integration (Required). Can be used to update an existing change order. name: type: - 'null' - string description: Name of the change order (Required) typeId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: 'TypeId: 1 = Internal, 2 = External' format: uint8 notes: type: - 'null' - string description: Change Order Notes coCustomField1: type: - 'null' - string description: Change Order Custom Field1 (BETA) coCustomField2: type: - 'null' - string description: Change Order Custom Field2 (BETA) coCustomField3: type: - 'null' - string description: Change Order Custom Field3 (BETA) coCustomField4: type: - 'null' - string description: Change Order Custom Field4 (BETA) coCustomField5: type: - 'null' - string description: Change Order Custom Field5 (BETA) coCustomField6: type: - 'null' - string description: Change Order Custom Field6 (BETA) coCustomField7: type: - 'null' - string description: Change Order Custom Field7 (BETA) coCustomField8: type: - 'null' - string description: Change Order Custom Field8 (BETA) coCustomField9: type: - 'null' - string description: Change Order Custom Field9 (BETA) coCustomField10: type: - 'null' - string description: Change Order Custom Field10 (BETA) coCustomField11: type: - 'null' - string description: Change Order Custom Field11 (BETA) coCustomField12: type: - 'null' - string description: Change Order Custom Field12 (BETA) coCustomField13: type: - 'null' - string description: Change Order Custom Field13 (BETA) coCustomField14: type: - 'null' - string description: Change Order Custom Field14 (BETA) coCustomField15: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Change Order Custom Field15 (BETA) format: double coCustomField16: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Change Order Custom Field16 (BETA) format: double coCustomField17: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Change Order Custom Field17 (BETA) format: double coCustomField18: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Change Order Custom Field18 (BETA) format: double coCustomField19: type: - 'null' - string description: Change Order Custom Field19 (BETA) format: date-time coCustomField20: type: - 'null' - string description: Change Order Custom Field20 (BETA) format: date-time coCustomField21: type: - 'null' - string description: Change Order Custom Field21 (BETA) format: date-time coCustomField22: type: - 'null' - string description: Change Order Custom Field22 (BETA) format: date-time coCustomField23: type: - 'null' - boolean description: Change Order Custom Field23 (BETA) coCustomField24: type: - 'null' - boolean description: Change Order Custom Field24 (BETA) coCustomField25: type: - 'null' - boolean description: Change Order Custom Field25 (BETA) coCustomField26: type: - 'null' - boolean description: Change Order Custom Field26 (BETA) coCustomField27: type: - 'null' - string description: Change Order Custom Field27 (BETA) coCustomField28: type: - 'null' - string description: Change Order Custom Field28 (BETA) coCustomField29: type: - 'null' - string description: Change Order Custom Field29 (BETA) coCustomField30: type: - 'null' - string description: Change Order Custom Field30 (BETA) coCustomField31: type: - 'null' - string description: Change Order Custom Field31 (BETA) coCustomField32: type: - 'null' - string description: Change Order Custom Field32 (BETA) coCustomField33: type: - 'null' - string description: Change Order Custom Field33 (BETA) coCustomField34: type: - 'null' - string description: Change Order Custom Field34 (BETA) coCustomField35: type: - 'null' - string description: Change Order Custom Field35 (BETA) coCustomField36: type: - 'null' - string description: Change Order Custom Field36 (BETA) coCustomField37: type: - 'null' - string description: Change Order Custom Field37 (BETA) coCustomField38: type: - 'null' - string description: Change Order Custom Field38 (BETA) coCustomField39: type: - 'null' - string description: Change Order Custom Field39 (BETA) coCustomField40: type: - 'null' - string description: Change Order Custom Field40 (BETA) coCustomField41: type: - 'null' - string description: Change Order Custom Field41 (BETA) coCustomField42: type: - 'null' - string description: Change Order Custom Field42 (BETA) coCustomField43: type: - 'null' - string description: Change Order Custom Field43 (BETA) coCustomField44: type: - 'null' - string description: Change Order Custom Field44 (BETA) coCustomField45: type: - 'null' - string description: Change Order Custom Field45 (BETA) coCustomField46: type: - 'null' - string description: Change Order Custom Field46 (BETA) coCustomField47: type: - 'null' - string description: Change Order Custom Field47 (BETA) coCustomField48: type: - 'null' - string description: Change Order Custom Field48 (BETA) coCustomField49: type: - 'null' - string description: Change Order Custom Field49 (BETA) coCustomField50: type: - 'null' - string description: Change Order Custom Field50 (BETA) coCustomField51: type: - 'null' - string description: Change Order Custom Field51 (BETA) coCustomField52: type: - 'null' - string description: Change Order Custom Field52 (BETA) coCustomField53: type: - 'null' - string description: Change Order Custom Field53 (BETA) coCustomField54: type: - 'null' - string description: Change Order Custom Field54 (BETA) coCustomField55: type: - 'null' - boolean description: Change Order Custom Field55 (BETA) coCustomField56: type: - 'null' - boolean description: Change Order Custom Field56 (BETA) coCustomField57: type: - 'null' - boolean description: Change Order Custom Field57 (BETA) coCustomField58: type: - 'null' - boolean description: Change Order Custom Field58 (BETA) coCustomField59: type: - 'null' - boolean description: Change Order Custom Field59 (BETA) coCustomField60: type: - 'null' - boolean description: Change Order Custom Field60 (BETA) coCustomField61: type: - 'null' - boolean description: Change Order Custom Field61 (BETA) coCustomField62: type: - 'null' - boolean description: Change Order Custom Field62 (BETA) coCustomField63: type: - 'null' - boolean description: Change Order Custom Field63 (BETA) coCustomField64: type: - 'null' - boolean description: Change Order Custom Field64 (BETA) coCustomField65: type: - 'null' - boolean description: Change Order Custom Field65 (BETA) NewServiceOrder: type: object properties: integrationId: type: - 'null' - string description: Id for the service order (Optional). The Id must be a valid Guid and can be used to retrieve service order. client: type: - 'null' - string description: Client name (Required) clientNumber: type: - 'null' - string description: Client number name: type: - 'null' - string description: Name (Required) start: type: string description: Start date required (Required) format: date-time startTicks: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int64 end: type: string description: End date required (Required) format: date-time endTicks: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int64 description: type: - 'null' - string description: Description of the SO description: Service Order Information NewTask: type: object properties: integrationId: type: - 'null' - string description: Unique Id for the task (must be Guid). The Id must be a valid Guid and can be used to retrieve and update task. projectId: type: - 'null' - string description: Id of the Project (Required and ProjectId must exist in SI) name: type: - 'null' - string description: Name (Required) start: type: string description: Start date required (Required) format: date-time startTicks: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int64 end: type: string description: End date required (Required) format: date-time endTicks: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int64 description: type: - 'null' - string description: Description of the task contact: description: Contact information $ref: '#/components/schemas/ContactInfo' siteAddress: description: Site address information $ref: '#/components/schemas/Address' resources: type: - 'null' - array items: $ref: '#/components/schemas/TaskResource' description: Resources in a task customField1: type: - 'null' - string description: CustomField1 (Text) customField2: type: - 'null' - string description: CustomField2 (Text) customField3: type: - 'null' - string description: CustomField3 (Text) customField4: type: - 'null' - string description: CustomField4 (Text) customField5: type: - 'null' - string description: CustomField5 (Text) customField6: type: - 'null' - boolean description: CustomField6 (Boolean) customField7: type: - 'null' - boolean description: CustomField7 (Boolean) customField8: type: - 'null' - boolean description: CustomField8 (Boolean) customField9: type: - 'null' - boolean description: CustomField9 (Boolean) customField10: type: - 'null' - boolean description: CustomField10 (Boolean) customField11: type: - 'null' - string description: CustomField11 (DateTime) format: date-time customField12: type: - 'null' - string description: CustomField12 (DateTime) format: date-time customField13: type: - 'null' - string description: CustomField13 (DateTime) format: date-time customField14: type: - 'null' - string description: CustomField14 (DateTime) format: date-time customField15: type: - 'null' - string description: CustomField15 (DateTime) format: date-time customField16: type: - 'null' - string description: CustomField16 (Text) customField17: type: - 'null' - string description: CustomField17 (Text) customField18: type: - 'null' - string description: CustomField18 (Text) customField19: type: - 'null' - string description: CustomField19 (Text) customField20: type: - 'null' - string description: CustomField20 (Text) customField21: type: - 'null' - string description: CustomField21 (Text) customField22: type: - 'null' - string description: CustomField22 (Text) customField23: type: - 'null' - string description: CustomField23 (Text) customField24: type: - 'null' - string description: CustomField24 (Text) description: New Task NewTimeSheet: type: object properties: entityId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: 'Entity associated to Time Sheet: Project = 1, Task = 2, Service Order = 3, Company = 4' format: uint8 entitySourceId: type: - 'null' - string description: Id of the Project or Task or Service Order. EntitySourceId is not required If company time sheet date: type: string description: Date (Required) format: date-time dateTicks: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int64 resource: type: - 'null' - string description: Resource resourceEmail: type: - 'null' - string description: Resource Email cF1: type: - 'null' - string description: Custom Fields 1 (Text) cF2: type: - 'null' - string description: Custom Fields 2 (Text) cF3: type: - 'null' - string description: Custom Fields 3 (Text) cF4: type: - 'null' - string description: Custom Fields 4 (Text) cF5: type: - 'null' - string description: Custom Fields 5 (Text) cF6: type: - 'null' - boolean description: Custom Fields 6 (boolean) cF7: type: - 'null' - boolean description: Custom Fields 7 (boolean) cF8: type: - 'null' - boolean description: Custom Fields 8 (boolean) cF9: type: - 'null' - boolean description: Custom Fields 9 (boolean) cF10: type: - 'null' - boolean description: Custom Fields 10 (boolean) cF11: type: - 'null' - string description: Custom Fields 11 (DateTime) format: date-time cF12: type: - 'null' - string description: Custom Fields 12 (DateTime) format: date-time cF13: type: - 'null' - string description: Custom Fields 13 (DateTime) format: date-time cF14: type: - 'null' - string description: Custom Fields 14 (DateTime) format: date-time cF15: type: - 'null' - string description: Custom Fields 15 (DateTime) format: date-time cF16: type: - 'null' - string description: Custom Fields 16 (List) cF17: type: - 'null' - string description: Custom Fields 17 (List) cF18: type: - 'null' - string description: Custom Fields 18 (List) cF19: type: - 'null' - string description: Custom Fields 19 (List) cF20: type: - 'null' - string description: Custom Fields 20 (List) cF21: type: - 'null' - string description: Custom Fields 21 (Hyperlink) cF22: type: - 'null' - string description: Custom Fields 22 (Hyperlink) cF23: type: - 'null' - string description: Custom Fields 23 (Hyperlink) cF24: type: - 'null' - string description: Custom Fields 24 (Hyperlink) cF25: type: - 'null' - string description: Custom Fields 25 (Long Text) cF26: type: - 'null' - string description: Custom Fields 26 (Long Text) cF27: type: - 'null' - string description: Custom Fields 27 (Long Text) cF28: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Fields 28 (Number) format: double cF29: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Fields 29 (Number) format: double cF30: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Fields 30 (Number) format: double cF31: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Fields 31 (Number) format: double cF32: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Fields 32 (Number) format: double phase: type: - 'null' - string description: Phase laborType: type: - 'null' - string description: Labor Type subLaborType: type: - 'null' - string description: 'Sub-Labor Type: Values can be Install, Miscellaneous, Management, Design' typeId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: 'Type: Duration = 1, Time In/Out = 2 (Required)' format: uint8 duration: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Duration in Hours (applicable if TypeId = 1 (Duration)) format: double startTime: type: - 'null' - string description: Start Time (applicable if TypeId = 2 (Time In/Out)) format: date-time endTime: type: - 'null' - string description: End Time (applicable if TypeId = 2 (Time In/Out)) format: date-time billable: type: - 'null' - boolean description: Billable overtime: type: boolean description: Overtime description: type: - 'null' - string description: Description NewTimeSheetsRequest: type: object properties: name: type: - 'null' - string description: Name (Optional) newTimeSheets: type: - 'null' - array items: $ref: '#/components/schemas/NewTimeSheet' description: Array of new time sheets Package: type: object properties: id: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Unique Id for the project item format: int32 typeId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: TypeId. 1 = Package, 2 = Solution format: int32 name: type: - 'null' - string description: Name of the package. componentId: type: - 'null' - string description: Component ID partNumber: type: - 'null' - string description: Part Number description: type: - 'null' - string description: Description of package locationId: type: - 'null' - string description: Location Id for the package in project locations systemId: type: - 'null' - string description: System Id for the package in project systems parentId: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string description: If package is in a solution Id of the solution. format: int32 customField1: type: - 'null' - string description: Custom Field 1 customField2: type: - 'null' - string description: Custom Field 2 customField3: type: - 'null' - string description: Custom Field 3 customField4: type: - 'null' - string description: Custom Field 4 customField5: type: - 'null' - string description: Custom Field 5 customField6: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Field 6 (Decimal) format: double customField7: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Field 7 (Decimal) format: double customField8: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Field 8 (Decimal) format: double customField9: type: - 'null' - string description: Custom Field 9 Date (ISO 8601 format - yyyy-mm-dd) customField10: type: - 'null' - string description: Custom Field 10 Date (ISO 8601 format - yyyy-mm-dd) customField11: type: - 'null' - string description: Custom Field 11 Date (ISO 8601 format - yyyy-mm-dd) customField12: type: - 'null' - string description: Custom Field 12 (Long Text) customField13: type: - 'null' - string description: Custom Field 13 (Long Text) customField14: type: - 'null' - string description: Custom Field 14 (Long Text) customField15: type: - 'null' - string description: Custom field 15 customField16: type: - 'null' - string description: Custom field 16 customField17: type: - 'null' - string description: Custom field 17 customField18: type: - 'null' - string description: Custom field 18 customField19: type: - 'null' - boolean description: Custom field 19 (Boolean) customField20: type: - 'null' - boolean description: Custom field 20 (Boolean) customField21: type: - 'null' - boolean description: Custom field 21 (Boolean) customField22: type: - 'null' - boolean description: Custom field 22 (Boolean) customField23: type: - 'null' - string description: Custom field 23 customField24: type: - 'null' - string description: Custom field 24 customField25: type: - 'null' - string description: Custom field 25 customField26: type: - 'null' - string description: Custom field 26 customField27: type: - 'null' - string description: Custom field 27 customField28: type: - 'null' - string description: Custom field 28 customField29: type: - 'null' - string description: Custom field 29 customField30: type: - 'null' - string description: Custom field 30 customField31: type: - 'null' - string description: Custom field 31 customField32: type: - 'null' - string description: Custom field 32 customField33: type: - 'null' - string description: Custom field 33 customField34: type: - 'null' - string description: Custom field 34 customField35: type: - 'null' - string description: Custom field 35 customField36: type: - 'null' - string description: Custom field 36 customField37: type: - 'null' - string description: Custom field 37 customField38: type: - 'null' - string description: Custom field 38 customField39: type: - 'null' - string description: Custom field 39 customField40: type: - 'null' - string description: Custom field 40 customField41: type: - 'null' - string description: Custom field 41 customField42: type: - 'null' - string description: Custom field 42 customField43: type: - 'null' - string description: Custom field 43 customField44: type: - 'null' - string description: Custom field 44 customField45: type: - 'null' - string description: Custom field 45 customField46: type: - 'null' - string description: Custom field 46 customField47: type: - 'null' - string description: Custom field 47 customField48: type: - 'null' - string description: Custom field 48 customField49: type: - 'null' - string description: Custom field 49 customField50: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom field 50 format: double customField51: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom field 51 format: double customField52: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom field 52 format: double customField53: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom field 53 format: double customField54: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom field 54 format: double customField55: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom field 55 format: double customField56: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom field 56 format: double customField57: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom field 57 format: double customField58: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom field 58 format: double customField59: type: - 'null' - string description: Custom field 59 format: date-time customField60: type: - 'null' - string description: Custom field 60 format: date-time customField61: type: - 'null' - string description: Custom field 61 format: date-time customField62: type: - 'null' - string description: Custom field 62 format: date-time customField63: type: - 'null' - string description: Custom field 63 format: date-time customField64: type: - 'null' - string description: Custom field 64 format: date-time customField65: type: - 'null' - string description: Custom field 65 format: date-time customField66: type: - 'null' - string description: Custom field 66 format: date-time customField67: type: - 'null' - string description: Custom field 67 format: date-time customField68: type: - 'null' - boolean description: Custom field 68 customField69: type: - 'null' - boolean description: Custom field 69 customField70: type: - 'null' - boolean description: Custom field 70 customField71: type: - 'null' - boolean description: Custom field 71 customField72: type: - 'null' - boolean description: Custom field 72 customField73: type: - 'null' - boolean description: Custom field 73 customField74: type: - 'null' - boolean description: Custom field 74 customField75: type: - 'null' - boolean description: Custom field 75 description: A project item of type package or solution PartialProjectInfo: type: object properties: id: type: - 'null' - string description: Id for the project (Guid) integrationProjectId: type: - 'null' - string description: Id for the project sent by integration messageId: type: - 'null' - string description: Unique message Id (Guid). clientId: type: - 'null' - string description: Unique Id for the client client: type: - 'null' - string description: Client name for the project clientNumber: type: - 'null' - string description: Client Number name: type: - 'null' - string description: Name of the project number: type: - 'null' - string description: Project Number progress: type: - 'null' - string description: Project Progress approved: type: boolean description: Project Approved coNumber: type: - 'null' - string description: Project Change Order Number currencyCode: type: - 'null' - string description: ISO currency symbol for the project price: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Total price of the project including taxes format: double importedOn: type: - 'null' - string description: Date project was imported by SI user format: date-time publishedOn: type: string description: Date project was published by SI user format: date-time publishedOnUnixTimeMs: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Date project was published by SI user in Unix epoch milliseconds (UTC). This property can be passed to the Mark Project as Imported method optionally to make sure the project was not updated in SI since it was published. format: int64 deleted: type: - 'null' - boolean description: Project deleted archived: type: - 'null' - boolean description: Project Archived PartialProjectsResult: type: object properties: projects: type: - 'null' - array items: $ref: '#/components/schemas/PartialProjectInfo' description: Projects array totalCount: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Total count of projects format: int32 PaymentTerm: type: object properties: payment: type: - 'null' - string description: Payment Term name useFixedAmount: type: boolean description: Is the payment term a fixed amount billingPercentage: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Billing percentage for the payment term format: double billingAmount: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Amount payable on this billing term format: double billingDate: type: - 'null' - string description: Date on which payment is to be made format: date-time coNumber: type: - 'null' - string description: Applicable if project is a Change Order. Change Order Number Product: type: object properties: id: type: - 'null' - string description: Unique Id for the product (Required) integrationProductId: type: - 'null' - string description: Id for the product sent by integration. manufacturerId: type: - 'null' - string description: Id for the manufacturer. manufacturer: type: - 'null' - string description: Manufacturer for the product. (Required) model: type: - 'null' - string description: Model for the product (Required) partNumber: type: - 'null' - string description: Part Number category: type: - 'null' - string description: Category subcategory: type: - 'null' - string description: Subcategory description: type: - 'null' - string description: Short description url: type: - 'null' - string description: Product URL (BETA). tags: type: - 'null' - string description: Tags msrp: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: MSRP format: double unitCost: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Unit Cost format: double unitPrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Unit Price format: double ofe: type: boolean description: Owner Furnished Equipment allowZeroCost: type: - 'null' - boolean description: Allow Zero Cost (BETA) phase: type: - 'null' - string description: Phase laborHours: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Labor Hours to install the item format: double installPrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Install Price is the sum of product price and labor price to install the item format: double laborTypes: type: - 'null' - string description: Comma separated list of product labor types itemLaborTypes: type: - 'null' - array items: $ref: '#/components/schemas/ItemLaborType' description: Collection of labor types for product with name and hours taxable: type: - 'null' - boolean description: Is product taxable. Applicable if SI has IsItemLevelTax = false tax: type: - 'null' - string description: Tax for the product. Applicable if SI has IsItemLevelTax = true laborTax: type: - 'null' - string description: Labor Tax for the product. Applicable if SI has IsItemLevelTax = true avalaraTaxCode: type: - 'null' - string description: Avalara tax code avalaraLaborTaxCode: type: - 'null' - string description: Avalara labor tax code acctgName: type: - 'null' - string description: Accounting Item Name vendor: type: - 'null' - string description: Vendor vendorNumber: type: - 'null' - string description: Vendor Number orderUom: type: - 'null' - string description: UOM orderUomUnits: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string description: UOM units format: int32 doNotOrder: type: boolean description: Do Not Order purchaseCost: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Purchase Cost format: double purchaseCostCurrencyCode: type: - 'null' - string description: Purchase Cost Currency Code height: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Product Height format: double width: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Product Width format: double depth: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Product Depth format: double weight: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Product Weight format: double rackMounted: type: boolean description: Product Rack Mounted rackUnits: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string description: Product Rack Units format: int16 amps: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Product Amps format: double volts: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Product Volts format: double watts: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Product Watts format: double btu: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Product Btu format: double dispersion: type: - 'null' - string description: Product Dispersion bulkWire: type: boolean description: Product Bulk Wire inputTerminals: type: - 'null' - string description: Product Input Terminals inputSignals: type: - 'null' - string description: Product Input Signals inputLabels: type: - 'null' - string description: Product Input Labels outputTerminals: type: - 'null' - string description: Product Output Terminals outputSignals: type: - 'null' - string description: Product Output Signals outputLabels: type: - 'null' - string description: Product Output Labels customField1: type: - 'null' - string description: Product custom field 1 customField2: type: - 'null' - string description: Product custom field 2 customField3: type: - 'null' - string description: Product custom field 3 customField4: type: - 'null' - string description: Product custom field 4 customField5: type: - 'null' - string description: Product custom field 5 customField6: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Product custom field 6 format: double customField7: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Product custom field 7 format: double customField8: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Product custom field 8 format: double customField9: type: - 'null' - string description: Product custom field 9 format: date-time customField10: type: - 'null' - string description: Product custom field 10 format: date-time customField11: type: - 'null' - string description: Product custom field 11 format: date-time customField12: type: - 'null' - string description: Product custom field 12 customField13: type: - 'null' - string description: Product custom field 13 customField14: type: - 'null' - string description: Product custom field 14 customField15: type: - 'null' - string description: Product custom field 15 customField16: type: - 'null' - string description: Product custom field 16 customField17: type: - 'null' - string description: Product custom field 17 customField18: type: - 'null' - string description: Product custom field 18 customField19: type: - 'null' - boolean description: Product custom field 19 customField20: type: - 'null' - boolean description: Product custom field 20 customField21: type: - 'null' - boolean description: Product custom field 21 customField22: type: - 'null' - boolean description: Product custom field 22 customField23: type: - 'null' - string description: Product custom field 23 customField24: type: - 'null' - string description: Product custom field 24 customField25: type: - 'null' - string description: Product custom field 25 customField26: type: - 'null' - string description: Product custom field 26 customField27: type: - 'null' - string description: Product custom field 27 customField28: type: - 'null' - string description: Product custom field 28 customField29: type: - 'null' - string description: Product custom field 29 customField30: type: - 'null' - string description: Product custom field 30 customField31: type: - 'null' - string description: Product custom field 31 customField32: type: - 'null' - string description: Product custom field 32 customField33: type: - 'null' - string description: Product custom field 33 customField34: type: - 'null' - string description: Product custom field 34 customField35: type: - 'null' - string description: Product custom field 35 customField36: type: - 'null' - string description: Product custom field 36 customField37: type: - 'null' - string description: Product custom field 37 customField38: type: - 'null' - string description: Product custom field 38 customField39: type: - 'null' - string description: Product custom field 39 customField40: type: - 'null' - string description: Product custom field 40 customField41: type: - 'null' - string description: Product custom field 41 customField42: type: - 'null' - string description: Product custom field 42 customField43: type: - 'null' - string description: Product custom field 43 customField44: type: - 'null' - string description: Product custom field 44 customField45: type: - 'null' - string description: Product custom field 45 customField46: type: - 'null' - string description: Product custom field 46 customField47: type: - 'null' - string description: Product custom field 47 customField48: type: - 'null' - string description: Product custom field 48 customField49: type: - 'null' - string description: Product custom field 49 customField50: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Product custom field 50 format: double customField51: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Product custom field 51 format: double customField52: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Product custom field 52 format: double customField53: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Product custom field 53 format: double customField54: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Product custom field 54 format: double customField55: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Product custom field 55 format: double customField56: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Product custom field 56 format: double customField57: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Product custom field 57 format: double customField58: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Product custom field 58 format: double customField59: type: - 'null' - string description: Product custom field 59 format: date-time customField60: type: - 'null' - string description: Product custom field 60 format: date-time customField61: type: - 'null' - string description: Product custom field 61 format: date-time customField62: type: - 'null' - string description: Product custom field 62 format: date-time customField63: type: - 'null' - string description: Product custom field 63 format: date-time customField64: type: - 'null' - string description: Product custom field 64 format: date-time customField65: type: - 'null' - string description: Product custom field 65 format: date-time customField66: type: - 'null' - string description: Product custom field 66 format: date-time customField67: type: - 'null' - string description: Product custom field 67 format: date-time customField68: type: - 'null' - boolean description: Product custom field 68 customField69: type: - 'null' - boolean description: Product custom field 69 customField70: type: - 'null' - boolean description: Product custom field 70 customField71: type: - 'null' - boolean description: Product custom field 71 customField72: type: - 'null' - boolean description: Product custom field 72 customField73: type: - 'null' - boolean description: Product custom field 73 customField74: type: - 'null' - boolean description: Product custom field 74 customField75: type: - 'null' - boolean description: Product custom field 75 updatedOn: type: - 'null' - string description: Date the product was updated format: date-time updatedOnTicks: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Updated on date in ticks (number) format: int64 approved: type: - 'null' - boolean description: Product Approved discontinued: type: - 'null' - boolean description: Product Discontinued description: Product object ProductCatalog: type: object properties: id: type: - 'null' - string description: Unique Id for the catalog name: type: - 'null' - string description: Name for the catalog (Required) description: type: - 'null' - string description: Catalog description priceType: type: - 'null' - string description: Price type priceTypeDisplayName: type: - 'null' - string description: Price type display name isMetric: type: boolean description: Catalog Item H,W,D are in inches for non-metric catalogs and millimeters for metric catalogs. Item weight is in pounds for non-metric catalogs and kilograms for metric catalogs. totalProductsCount: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Total Products Count format: int32 products: type: - 'null' - array items: $ref: '#/components/schemas/Product' description: Products in the catalog. deletedProductIds: type: - 'null' - array items: type: string format: uuid description: Product Ids deleted (available only with automated SI Server Exports) description: Product catalog object Project: type: object properties: templateName: type: - 'null' - string description: Project template name to use when project is imported to D-Tools SI items: type: - 'null' - array items: $ref: '#/components/schemas/ProjectItem' description: Items in a project. Can be products, labor, allowance, bundled cable, and placeholder. packages: type: - 'null' - array items: $ref: '#/components/schemas/Package' description: Packages in a project. Can be package and solution. publishedOn: type: string description: Date project was published by SI user format: date-time importedOn: type: - 'null' - string description: Date project was imported by user format: date-time publishedOnUnixTimeMs: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Date project was published by SI user in Unix epoch milliseconds (UTC). This property can be passed to the Mark Project as Imported method optionally to make sure the project was not updated in SI since it was published. format: int64 id: type: - 'null' - string description: Unique Id for the project (must be Guid). Project will be created in SI with this Guid and will be used to update project. integrationProjectId: type: - 'null' - string description: Id for the project sent by integration client: type: - 'null' - string description: Client name for the project (Required) clientId: type: - 'null' - string description: Client Id integrationClientId: type: - 'null' - string description: Id for the client sent by integration clientNumber: type: - 'null' - string description: Client Number name: type: - 'null' - string description: Project name for the project (Required) number: type: - 'null' - string description: Project Number quantityBased: type: boolean description: Quantity Based Project progress: type: - 'null' - string description: Project Progress assignedTo: type: - 'null' - string description: Project Assigned To salesRep: type: - 'null' - string description: Project Sales Rep projectManager: type: - 'null' - string description: Project Project Manager designer: type: - 'null' - string description: Project Designer revision: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string description: Project Revision format: int16 currencyCode: type: - 'null' - string description: ISO currency symbol for the project currencyRate: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Currency rate format: double cost: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project cost format: double priceWithoutTax: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Price without tax and without Miscellaneous Items. PriceWithoutTax only includes Equipment, labor, and adjustments. format: double margin: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project Margin format: double markup: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project Markup format: double tax: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project tax format: double price: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Final Price of the project. It includes Tax, Misc. Items, Equipment, Labor, and adjustments. format: double hours: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project labor hours format: double budget: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project budget format: double productPriceType: type: - 'null' - string description: Price type for products in project clientPONumber: type: - 'null' - string description: Client Purchase Order Number startDate: type: - 'null' - string description: Project Start Date format: date-time endDate: type: - 'null' - string description: Project End Date format: date-time estimatedCloseDate: type: - 'null' - string description: Project Estimated Close Date format: date-time closeDate: type: - 'null' - string description: Project Close Date format: date-time accountingEstimateNumbers: type: - 'null' - string description: Project Accounting Estimate Numbers scopeOfWork: type: - 'null' - string description: Scope of work for project notes: type: - 'null' - string description: Notes for project siteAddress: description: Project Site Address $ref: '#/components/schemas/Address' billingAddress: description: Project Billing Address $ref: '#/components/schemas/Address' isItemLevelTax: type: boolean description: Does project support taxes at each item level productTaxId: type: - 'null' - string description: Applicable if IsItemLevelTax = false. The Tax Id for all taxable products laborTaxId: type: - 'null' - string description: Applicable if IsItemLevelTax = false. The Tax Id for all taxable labor createdOn: type: - 'null' - string description: Date the project was created (UTC Time) format: date-time updatedOn: type: - 'null' - string description: Date the project was updated (UTC Time) format: date-time updatedBy: type: - 'null' - string description: Project Updated By updatedByEmail: type: - 'null' - string description: Project Updated By Email createdBy: type: - 'null' - string description: Project Created By publishedBy: type: - 'null' - string description: Project Published By approved: type: boolean description: Is Project Approved approvedOn: type: - 'null' - string description: Applicable if project is Approved. Project Approved Date format: date-time isChangeOrder: type: boolean description: Is Project a Change Order coNumber: type: - 'null' - string description: Applicable if project is a Change Order. Change Order Number coId: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string format: int32 coName: type: - 'null' - string description: Applicable if project is a Change Order. Change Order Name coStatus: type: - 'null' - string description: Applicable if project is a Change Order. Change Order Status coType: type: - 'null' - string description: Applicable if project is a Change Order. Change Order Type coNotes: type: - 'null' - string description: Applicable if project is a Change Order. Change Order Notes coAcceptedOn: type: - 'null' - string description: Applicable if project is an Accepted Change Order. Change Order Accepted Date format: date-time coRejectedOn: type: - 'null' - string description: Applicable if project is an Rejected Change Order. Change Order Rejected Date format: date-time coCreatedOn: type: - 'null' - string description: Applicable if project is a Change Order. Change Order Created Date format: date-time customField1: type: - 'null' - string description: Project custom field 1 customField2: type: - 'null' - string description: Project custom field 2 customField3: type: - 'null' - string description: Project custom field 3 customField4: type: - 'null' - string description: Project custom field 4 customField5: type: - 'null' - string description: Project custom field 5 customField6: type: - 'null' - string description: Project custom field 6 customField7: type: - 'null' - string description: Project custom field 7 customField8: type: - 'null' - string description: Project custom field 8 customField9: type: - 'null' - string description: Project custom field 9 customField10: type: - 'null' - string description: Project custom field 10 customField11: type: - 'null' - string description: Project custom field 11 customField12: type: - 'null' - string description: Project custom field 12 customField13: type: - 'null' - string description: Project custom field 13 customField14: type: - 'null' - string description: Project custom field 14 customField15: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project custom field 15 format: double customField16: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project custom field 16 format: double customField17: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project custom field 17 format: double customField18: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project custom field 18 format: double customField19: type: - 'null' - string description: Project custom field 19 format: date-time customField20: type: - 'null' - string description: Project custom field 20 format: date-time customField21: type: - 'null' - string description: Project custom field 21 format: date-time customField22: type: - 'null' - string description: Project custom field 22 format: date-time customField23: type: - 'null' - boolean description: Project custom field 23 customField24: type: - 'null' - boolean description: Project custom field 24 customField25: type: - 'null' - boolean description: Project custom field 25 customField26: type: - 'null' - boolean description: Project custom field 26 customField27: type: - 'null' - string description: Project custom field 27 customField28: type: - 'null' - string description: Project custom field 28 customField29: type: - 'null' - string description: Project custom field 29 customField30: type: - 'null' - string description: Project custom field 30 customField31: type: - 'null' - string description: Project custom field 31 customField32: type: - 'null' - string description: Project custom field 32 customField33: type: - 'null' - string description: Project custom field 33 customField34: type: - 'null' - string description: Project custom field 34 customField35: type: - 'null' - string description: Project custom field 35 customField36: type: - 'null' - string description: Project custom field 36 customField37: type: - 'null' - string description: Project custom field 37 customField38: type: - 'null' - string description: Project custom field 38 customField39: type: - 'null' - string description: Project custom field 39 customField40: type: - 'null' - string description: Project custom field 40 customField41: type: - 'null' - string description: Project custom field 41 customField42: type: - 'null' - string description: Project custom field 42 customField43: type: - 'null' - string description: Project custom field 43 customField44: type: - 'null' - string description: Project custom field 44 customField45: type: - 'null' - string description: Project custom field 45 customField46: type: - 'null' - string description: Project custom field 46 customField47: type: - 'null' - string description: Project custom field 47 customField48: type: - 'null' - string description: Project custom field 48 customField49: type: - 'null' - string description: Project custom field 49 customField50: type: - 'null' - string description: Project custom field 50 customField51: type: - 'null' - string description: Project custom field 51 customField52: type: - 'null' - string description: Project custom field 52 customField53: type: - 'null' - string description: Project custom field 53 customField54: type: - 'null' - string description: Project custom field 54 customField55: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project custom field 55 format: double customField56: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project custom field 56 format: double customField57: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project custom field 57 format: double customField58: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project custom field 58 format: double customField59: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project custom field 59 format: double customField60: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project custom field 60 format: double customField61: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project custom field 61 format: double customField62: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project custom field 62 format: double customField63: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project custom field 63 format: double customField64: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project custom field 64 format: double customField65: type: - 'null' - boolean description: Project custom field 65 (BETA) customField66: type: - 'null' - boolean description: Project custom field 66 (BETA) customField67: type: - 'null' - boolean description: Project custom field 67 (BETA) customField68: type: - 'null' - boolean description: Project custom field 68 (BETA) customField69: type: - 'null' - boolean description: Project custom field 69 (BETA) customField70: type: - 'null' - boolean description: Project custom field 70 (BETA) customField71: type: - 'null' - boolean description: Project custom field 71 (BETA) customField72: type: - 'null' - boolean description: Project custom field 72 (BETA) customField73: type: - 'null' - boolean description: Project custom field 73 (BETA) customField74: type: - 'null' - boolean description: Project custom field 74 (BETA) customField75: type: - 'null' - boolean description: Project custom field 75 (BETA) contacts: type: - 'null' - array items: $ref: '#/components/schemas/Contact' description: Contacts in a project resources: type: - 'null' - array items: $ref: '#/components/schemas/Resource' description: Resources in a project locations: type: - 'null' - array items: $ref: '#/components/schemas/Location' description: Locations in a project systems: type: - 'null' - array items: $ref: '#/components/schemas/System' description: Systems in a project taxes: type: - 'null' - array items: $ref: '#/components/schemas/Tax' description: Taxes in a project paymentTerms: type: - 'null' - array items: $ref: '#/components/schemas/PaymentTerm' description: Payment terms in a project miscItems: type: - 'null' - array items: $ref: '#/components/schemas/MiscItem' description: Misc. Items in a project coCustomField1: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field1 (BETA) coCustomField2: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field2 (BETA) coCustomField3: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field3 (BETA) coCustomField4: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field4 (BETA) coCustomField5: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field5 (BETA) coCustomField6: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field6 (BETA) coCustomField7: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field7 (BETA) coCustomField8: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field8 (BETA) coCustomField9: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field9 (BETA) coCustomField10: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field10 (BETA) coCustomField11: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field11 (BETA) coCustomField12: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field12 (BETA) coCustomField13: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field13 (BETA) coCustomField14: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field14 (BETA) coCustomField15: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Applicable if project is a Change Order. Project Change Order Custom Field15 (BETA) format: double coCustomField16: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Applicable if project is a Change Order. Project Change Order Custom Field16 (BETA) format: double coCustomField17: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Applicable if project is a Change Order. Project Change Order Custom Field17 (BETA) format: double coCustomField18: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Applicable if project is a Change Order. Project Change Order Custom Field18 (BETA) format: double coCustomField19: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field19 (BETA) format: date-time coCustomField20: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field20 (BETA) format: date-time coCustomField21: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field21 (BETA) format: date-time coCustomField22: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field22 (BETA) format: date-time coCustomField23: type: - 'null' - boolean description: Applicable if project is a Change Order. Project Change Order Custom Field23 (BETA) coCustomField24: type: - 'null' - boolean description: Applicable if project is a Change Order. Project Change Order Custom Field24 (BETA) coCustomField25: type: - 'null' - boolean description: Applicable if project is a Change Order. Project Change Order Custom Field25 (BETA) coCustomField26: type: - 'null' - boolean description: Applicable if project is a Change Order. Project Change Order Custom Field26 (BETA) coCustomField27: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field27 (BETA) coCustomField28: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field28 (BETA) coCustomField29: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field29 (BETA) coCustomField30: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field30 (BETA) coCustomField31: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field31 (BETA) coCustomField32: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field32 (BETA) coCustomField33: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field33 (BETA) coCustomField34: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field34 (BETA) coCustomField35: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field35 (BETA) coCustomField36: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field36 (BETA) coCustomField37: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field37 (BETA) coCustomField38: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field38 (BETA) coCustomField39: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field39 (BETA) coCustomField40: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field40 (BETA) coCustomField41: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field41 (BETA) coCustomField42: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field42 (BETA) coCustomField43: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field43 (BETA) coCustomField44: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field44 (BETA) coCustomField45: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field45 (BETA) coCustomField46: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field46 (BETA) coCustomField47: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field47 (BETA) coCustomField48: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field48 (BETA) coCustomField49: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field49 (BETA) coCustomField50: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field50 (BETA) coCustomField51: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field51 (BETA) coCustomField52: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field52 (BETA) coCustomField53: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field53 (BETA) coCustomField54: type: - 'null' - string description: Applicable if project is a Change Order. Project Change Order Custom Field54 (BETA) coCustomField55: type: - 'null' - boolean description: Applicable if project is a Change Order. Project Change Order Custom Field55 (BETA) coCustomField56: type: - 'null' - boolean description: Applicable if project is a Change Order. Project Change Order Custom Field56 (BETA) coCustomField57: type: - 'null' - boolean description: Applicable if project is a Change Order. Project Change Order Custom Field57 (BETA) coCustomField58: type: - 'null' - boolean description: Applicable if project is a Change Order. Project Change Order Custom Field58 (BETA) coCustomField59: type: - 'null' - boolean description: Applicable if project is a Change Order. Project Change Order Custom Field59 (BETA) coCustomField60: type: - 'null' - boolean description: Applicable if project is a Change Order. Project Change Order Custom Field60 (BETA) coCustomField61: type: - 'null' - boolean description: Applicable if project is a Change Order. Project Change Order Custom Field61 (BETA) coCustomField62: type: - 'null' - boolean description: Applicable if project is a Change Order. Project Change Order Custom Field62 (BETA) coCustomField63: type: - 'null' - boolean description: Applicable if project is a Change Order. Project Change Order Custom Field63 (BETA) coCustomField64: type: - 'null' - boolean description: Applicable if project is a Change Order. Project Change Order Custom Field64 (BETA) coCustomField65: type: - 'null' - boolean description: Applicable if project is a Change Order. Project Change Order Custom Field65 (BETA) ProjectComment: type: object properties: comment: type: - 'null' - string description: Comment commentedOn: type: string description: Commented Date format: date-time commentedBy: type: - 'null' - string description: Commented By ProjectCommentsResult: type: object properties: projectComments: type: - 'null' - array items: $ref: '#/components/schemas/ProjectComment' description: Project comments array totalCount: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Total count of project comments format: int32 ProjectInfo: type: object properties: id: type: - 'null' - string description: Unique Id for the project (must be Guid). Project will be created in SI with this Guid and will be used to update project. integrationProjectId: type: - 'null' - string description: Id for the project sent by integration messageId: type: - 'null' - string description: Unique message Id (Guid). clientId: type: - 'null' - string description: Unique Id for the client client: type: - 'null' - string description: Client name for the project clientNumber: type: - 'null' - string description: Client Number name: type: - 'null' - string description: Name of the project number: type: - 'null' - string description: Project Number progress: type: - 'null' - string description: Project Progress approved: type: boolean description: Project Approved coNumber: type: - 'null' - string description: Project Change Order Number currencyCode: type: - 'null' - string description: ISO currency symbol for the project price: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Total price of the project including taxes format: double importedOn: type: - 'null' - string description: Date project was imported by SI user format: date-time publishedOn: type: string description: Date project was published by SI user format: date-time publishedOnUnixTimeMs: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Date project was published by SI user in Unix epoch milliseconds (UTC). This property can be passed to the Mark Project as Imported method optionally to make sure the project was not updated in SI since it was published. format: int64 deleted: type: - 'null' - boolean description: Project deleted archived: type: - 'null' - boolean description: Project Archived description: Project Information ProjectItem: type: object properties: id: type: - 'null' - string description: Unique Id for the project item (Required) typeId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: "TypeId: 1 = Product, 2 = Labor Item, 3 = Allowance, 4 = Bundled Cable, 5 = Placeholder (Required)\r\ \nProduct and Labor items can be posted to a project. Allowances, Bundled Cable and placeholders cannot be posted\ \ to a project." format: uint8 siItemId: type: - 'null' - string description: SIItemId - unique id of an item in SI - can be used for updates to SI project. This will be blank for adjustment items and phase labor items (calculated items). laborType: type: - 'null' - string description: 'LaborType: Item, Phase' coChangeTypeId: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string description: The change order change type Id. 1 = Added on Change Order, 2 = Deleted on Change Order. format: uint8 manufacturerId: type: - 'null' - string description: Id for the manufacturer. manufacturer: type: - 'null' - string description: Manufacturer for the project item. Required for product and labor. model: type: - 'null' - string description: Model for the project item. Required for product and labor. packageName: type: - 'null' - string description: Package Name for the allowance, bundled cable and placeholder (required). partNumber: type: - 'null' - string description: Part Number category: type: - 'null' - string description: Category subcategory: type: - 'null' - string description: Subcategory description: type: - 'null' - string description: Short description componentId: type: - 'null' - string description: Component ID bulkItem: type: boolean description: Bulk Item serialNumber: type: - 'null' - string description: Serial number ipAddress: type: - 'null' - string description: IP Address 1 ipAddress2: type: - 'null' - string description: IP Address 2 macAddress1: type: - 'null' - string description: MAC Address 1 macAddress2: type: - 'null' - string description: MAC Address 2 isOfe: type: boolean description: If project item owner furnished isNonBillable: type: boolean description: Is project item non-billable isOptional: type: - 'null' - boolean description: Is project item optional quantity: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Quantity of the project item. For bulk wire is the wire length. For variable labor and phase labor is the labor hours. format: double priceType: type: - 'null' - string description: Price Type of the item unitCost: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Unit Cost format: double unitPriceWithoutDiscount: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Unit Price (does not includes Discount) format: double unitPrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Unit Price (includes Discount) format: double unitPriceRounded: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Rounded Unit Price format: double discount: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Discount format: double laborCalculationMethodId: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string description: Id of the LaborCalculation. Fixed = 1, Variable = 2, Phase = 3 format: uint8 phase: type: - 'null' - string description: Phase laborHours: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: "For products the labor hours are the associated labor hours for that product.\r\nFixed labor has labor\ \ hours as 0 (quantity is 1).\r\nVariable labor has labor hours of the item (equal to quantity).\r\nPhase labor\ \ has labor hours as 0 (quantity has the total labor hours for the phase)." format: double totalLaborHours: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Total Labor Hours includes Base, Misc, Mgt and Design hours and accounts for wire length (if any) and quantity format: double laborTypes: type: - 'null' - string description: Comma separated list of item labor types itemLaborTypes: type: - 'null' - array items: $ref: '#/components/schemas/ItemLaborType' description: Collection of labor types for item with name and hours productAdjustment: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Product Adjustment format: double miscPartAdjustment: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Miscellaneous Parts Adjustment format: double laborAdjustment: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Labor Adjustment format: double installPrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Install Price is the sum of product price and labor price to install the item format: double isTaxable: type: boolean description: Is project item taxable. Applicable if project has IsItemLevelTax = false taxId: type: - 'null' - string description: Tax ID for the project item in project taxes. Applicable if project has IsItemLevelTax = true avalaraTaxCode: type: - 'null' - string description: Avalara tax code avalaraLaborTaxCode: type: - 'null' - string description: Avalara labor tax code acctgName: type: - 'null' - string description: Accounting Item Name includedAccessory: type: - 'null' - boolean description: Included Accessory vendor: type: - 'null' - string description: Vendor orderUom: type: - 'null' - string description: UOM orderUomUnits: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string description: UOM units format: int32 doNotOrder: type: - 'null' - boolean description: Do not order item bulkWire: type: - 'null' - boolean description: Item is Bulk Wire rackMounted: type: - 'null' - boolean description: Rack Mounted originalApprovedItemId: type: - 'null' - string description: Original Approved Item Id. The Original SI Item Id of an approved replaced item or an approved item whose quantity is reduced. locationId: type: - 'null' - string description: Location Id for the project item in project locations systemId: type: - 'null' - string description: System Id for the project item in project systems parentId: type: - 'null' - string description: If project item is an accessory id of the parent item catalogId: type: - 'null' - string description: Id of the item in the SI catalog packageId: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string description: If project item is in a package Id of the package (in Packages) format: int32 solutionId: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string description: If project item is in a solution Id of the solution (in Packages) format: int32 orderStatus: type: - 'null' - string description: Order Status (Ordered, Not Ordered etc.). orderNumber: type: - 'null' - string description: Order Number orderedDate: type: - 'null' - string description: Ordered Date format: date-time orderedDateTicks: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int64 expectedDeliveryDate: type: - 'null' - string description: Expected Delivery Date format: date-time expectedDeliveryDateTicks: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int64 receivedDate: type: - 'null' - string description: Received Date format: date-time receivedDateTicks: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int64 picked: type: boolean description: Picked (Is Item Picked?) pickedDate: type: - 'null' - string description: Picked Date format: date-time pickedDateTicks: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int64 installed: type: boolean description: Installed (Is Item Installed?) installedDate: type: - 'null' - string description: Installed Date format: date-time installedDateTicks: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int64 installedNotes: type: - 'null' - string description: Install Notes trackingNumber: type: - 'null' - string description: Tracking Number updatedOn: type: - 'null' - string description: Date the project item was updated. Populated only when data is returned unit wise (non aggregated). Not populated for calculated items like adjustments and phase labor. format: date-time updatedOnTicks: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Updated On date in ticks (number) format: int64 customField1: type: - 'null' - string description: Project item custom field 1 customField2: type: - 'null' - string description: Project item custom field 2 customField3: type: - 'null' - string description: Project item custom field 3 customField4: type: - 'null' - string description: Project item custom field 4 customField5: type: - 'null' - string description: Project item custom field 5 customField6: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project item custom field 6 format: double customField7: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project item custom field 7 format: double customField8: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project item custom field 8 format: double customField9: type: - 'null' - string description: Project item custom field 9 format: date-time customField10: type: - 'null' - string description: Project item custom field 10 format: date-time customField11: type: - 'null' - string description: Project item custom field 11 format: date-time customField12: type: - 'null' - string description: Project item custom field 12 customField13: type: - 'null' - string description: Project item custom field 13 customField14: type: - 'null' - string description: Project item custom field 14 customField15: type: - 'null' - string description: Project item custom field 15 customField16: type: - 'null' - string description: Project item custom field 16 customField17: type: - 'null' - string description: Project item custom field 17 customField18: type: - 'null' - string description: Project item custom field 18 customField19: type: - 'null' - boolean description: Project item custom field 19 customField20: type: - 'null' - boolean description: Project item custom field 20 customField21: type: - 'null' - boolean description: Project item custom field 21 customField22: type: - 'null' - boolean description: Project item custom field 22 customField23: type: - 'null' - string description: Project item custom field 23 customField24: type: - 'null' - string description: Project item custom field 24 customField25: type: - 'null' - string description: Project item custom field 25 customField26: type: - 'null' - string description: Project item custom field 26 customField27: type: - 'null' - string description: Project item custom field 27 customField28: type: - 'null' - string description: Project item custom field 28 customField29: type: - 'null' - string description: Project item custom field 29 customField30: type: - 'null' - string description: Project item custom field 30 customField31: type: - 'null' - string description: Project item custom field 31 customField32: type: - 'null' - string description: Project item custom field 32 customField33: type: - 'null' - string description: Project item custom field 33 customField34: type: - 'null' - string description: Project item custom field 34 customField35: type: - 'null' - string description: Project item custom field 35 customField36: type: - 'null' - string description: Project item custom field 36 customField37: type: - 'null' - string description: Project item custom field 37 customField38: type: - 'null' - string description: Project item custom field 38 customField39: type: - 'null' - string description: Project item custom field 39 customField40: type: - 'null' - string description: Project item custom field 40 customField41: type: - 'null' - string description: Project item custom field 41 customField42: type: - 'null' - string description: Project item custom field 42 customField43: type: - 'null' - string description: Project item custom field 43 customField44: type: - 'null' - string description: Project item custom field 44 customField45: type: - 'null' - string description: Project item custom field 45 customField46: type: - 'null' - string description: Project item custom field 46 customField47: type: - 'null' - string description: Project item custom field 47 customField48: type: - 'null' - string description: Project item custom field 48 customField49: type: - 'null' - string description: Project item custom field 49 customField50: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project item custom field 50 format: double customField51: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project item custom field 51 format: double customField52: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project item custom field 52 format: double customField53: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project item custom field 53 format: double customField54: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project item custom field 54 format: double customField55: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project item custom field 55 format: double customField56: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project item custom field 56 format: double customField57: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project item custom field 57 format: double customField58: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Project item custom field 58 format: double customField59: type: - 'null' - string description: Project item custom field 59 format: date-time customField60: type: - 'null' - string description: Project item custom field 60 format: date-time customField61: type: - 'null' - string description: Project item custom field 61 format: date-time customField62: type: - 'null' - string description: Project item custom field 62 format: date-time customField63: type: - 'null' - string description: Project item custom field 63 format: date-time customField64: type: - 'null' - string description: Project item custom field 64 format: date-time customField65: type: - 'null' - string description: Project item custom field 65 format: date-time customField66: type: - 'null' - string description: Project item custom field 66 format: date-time customField67: type: - 'null' - string description: Project item custom field 67 format: date-time customField68: type: - 'null' - boolean description: Project item custom field 68 customField69: type: - 'null' - boolean description: Project item custom field 69 customField70: type: - 'null' - boolean description: Project item custom field 70 customField71: type: - 'null' - boolean description: Project item custom field 71 customField72: type: - 'null' - boolean description: Project item custom field 72 customField73: type: - 'null' - boolean description: Project item custom field 73 customField74: type: - 'null' - boolean description: Project item custom field 74 customField75: type: - 'null' - boolean description: Project item custom field 75 description: "A project item which can be product or labor item or allowance or bundled cable or placeholder.\r\nProduct\ \ and Labor items can be posted to a project. Allowances, Bundled Cable and placeholders cannot be posted to a project." ProjectItemInfo: type: object properties: manufacturer: type: - 'null' - string description: Manufacturer for the project item. Required for product and labor. model: type: - 'null' - string description: Model for the project item. Required for product and labor. quantity: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Quantity of the project item to delete format: int32 description: A project item info which can be product or labor ProjectsResult: type: object properties: projects: type: - 'null' - array items: $ref: '#/components/schemas/ProjectInfo' description: Projects array totalCount: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Total count of projects format: int32 PublishProjectResponse: type: object properties: projectId: type: - 'null' - string description: Unique Id of project (will be generated if not provided. Can be used to update project) messageId: type: string description: Check the status of the transaction using this Message Id format: uuid message: type: - 'null' - string description: Success Message description: Project publish response PublishResponse: type: object properties: messageId: type: string description: Check the status of the transaction using this Message Id format: uuid message: type: - 'null' - string description: Success Message description: Project publish response PublishTaskResponse: type: object properties: taskId: type: - 'null' - string description: Unique Id of task (will be generated if not provided. Can be used to update task) messageId: type: string description: Check the status of the transaction using this Message Id format: uuid message: type: - 'null' - string description: Success Message description: Task publish response PurchaseOrder: type: object properties: id: type: - 'null' - string description: Unique Id vendor: type: - 'null' - string description: Vendor name (Rrequired) projects: type: - 'null' - string description: Projects number: type: - 'null' - string description: Number (Required) status: type: - 'null' - string description: Status (Required) date: type: string description: Date format: date-time requestDeliveryDate: type: - 'null' - string description: Request delivery date format: date-time shipPref: type: - 'null' - string description: Shipment preference vendorRefNumber: type: - 'null' - string description: Vendor reference number trackingNumber: type: - 'null' - string description: Tracking number acctgNumber: type: - 'null' - string description: Accounting number terms: type: - 'null' - string description: Terms notes: type: - 'null' - string description: Notes serviceOrders: type: - 'null' - string description: Service Orders currencyCode: type: - 'null' - string description: Currency code currencyRate: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Currency rate format: double createdOn: type: - 'null' - string description: Date the purchase order was created (UTC Time) format: date-time updatedOn: type: - 'null' - string description: Date the purchase order was updated (UTC Time) format: date-time createdBy: type: - 'null' - string description: Purchase order Created By updatedBy: type: - 'null' - string description: Purchase order Updated By publishedBy: type: - 'null' - string description: Purchase order Published By contacts: type: - 'null' - array items: $ref: '#/components/schemas/PurchaseOrderContact' description: Contacts information vendorAddress: description: Vendor address information $ref: '#/components/schemas/Address' shipToAddress: description: Ship To address information $ref: '#/components/schemas/ShipToAddress' purchaseOrderItems: type: - 'null' - array items: $ref: '#/components/schemas/PurchaseOrderItem' purchaseOrderTaxes: type: - 'null' - array items: $ref: '#/components/schemas/PurchaseOrderTax' publishedOn: type: string description: Date purchase order was published by SI format: date-time publishedOnUnixTimeMs: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Date purchase order was published by SI user in Unix epoch milliseconds (UTC). This property can be passed to the Mark Purchase Order as Imported method optionally to make sure the purchase order was not updated in SI since it was published. format: int64 description: Purchase order object PurchaseOrderContact: type: object properties: name: type: - 'null' - string firstName: type: - 'null' - string lastName: type: - 'null' - string group: type: - 'null' - string company: type: - 'null' - string title: type: - 'null' - string email: type: - 'null' - string mobile: type: - 'null' - string notes: type: - 'null' - string description: Purchase Order Contact PurchaseOrderInfo: type: object properties: id: type: - 'null' - string description: Unique Id vendor: type: - 'null' - string description: Vendor name number: type: - 'null' - string description: Purchase order Number status: type: - 'null' - string description: Status importedOn: type: - 'null' - string description: Date purchase order was imported by SI user format: date-time publishedOn: type: string description: Date purchase order was published by SI format: date-time publishedOnUnixTimeMs: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Date purchase order was published by SI user in Unix epoch milliseconds (UTC). This property can be passed to the Mark Purchase Order as Imported method optionally to make sure the purchase order was not updated in SI since it was published. format: int64 deleted: type: - 'null' - boolean description: Purchase order deleted description: Purchase Order Information PurchaseOrderItem: type: object properties: id: type: - 'null' - string description: Unique Id (Required) typeId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: 'TypeId: 1 = Product, 2 = Labor, 4 = Bundled Cable (Required)' format: uint8 manufacturerId: type: - 'null' - string description: Id for the manufacturer. manufacturer: type: - 'null' - string description: Manufacturer for the project item. Required for product and labor. model: type: - 'null' - string description: Model for the project item. Required for product and labor. quantity: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Quantity format: double packageName: type: - 'null' - string description: Package Name for the allowance, bundled cable and placeholder. catalogId: type: - 'null' - string description: Id of the item in the SI catalog partNumber: type: - 'null' - string description: Part Number categoryType: type: - 'null' - string description: Category Type description: type: - 'null' - string description: Short description projectId: type: - 'null' - string description: Id of the Project projectName: type: - 'null' - string description: Project name projectSIItemIds: type: - 'null' - string description: Comma seperated list of SIItemIds from the project. Only available if item is part of a project. serviceOrderId: type: - 'null' - string description: Id of the Service Order serviceOrderName: type: - 'null' - string description: Service Order Name laborHours: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Labor hours format: double uom: type: - 'null' - string description: UOM uomUnits: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string description: UOM units format: int32 projectUnits: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string description: Project units format: int64 price: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Price format: double totalPrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Total price format: double receivedQuantity: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string description: Received Quantity format: int64 edd: type: - 'null' - string description: Expected Delivery Date format: date-time trackingNumber: type: - 'null' - string description: Tracking Number taxId: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string description: TaxId format: int32 PurchaseOrdersResult: type: object properties: purchaseOrders: type: - 'null' - array items: $ref: '#/components/schemas/PurchaseOrderInfo' description: Purchase orders array totalCount: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Total count of purchase order format: int32 PurchaseOrderTax: type: object properties: taxId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 name: type: - 'null' - string rate: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string format: double group: type: boolean items: type: - 'null' - array items: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 Resource: type: object properties: name: type: - 'null' - string description: Name of the resource (Required) email: type: - 'null' - string roles: type: - 'null' - string isOwner: type: boolean description: Is resource the owner for the project? One resource can be marked as the owner in project. ResourceInfo: type: object properties: name: type: - 'null' - string description: Name of the resource email: type: - 'null' - string description: Email of the resource ServiceOrder: type: object properties: contact: description: Contact information $ref: '#/components/schemas/ContactInfo' billingAddress: description: Billing address information $ref: '#/components/schemas/Address' siteAddress: description: Site address information $ref: '#/components/schemas/Address' resources: type: - 'null' - array items: $ref: '#/components/schemas/ServiceOrderResource' description: Resource information labors: type: - 'null' - array items: $ref: '#/components/schemas/ServiceOrderLabor' products: type: - 'null' - array items: $ref: '#/components/schemas/ServiceOrderProduct' repairItems: type: - 'null' - array items: $ref: '#/components/schemas/ServiceOrderRepairItem' servicePlanNumber: type: - 'null' - string description: Service plan Number. Applicable if service order linked to service plan. publishedOn: type: string description: Date service order was published by SI user format: date-time publishedOnUnixTimeMs: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Date service order was published by SI user in Unix epoch milliseconds (UTC). This property can be passed to the Mark Service Order as Imported method optionally to make sure the service order was not updated in SI since it was published. format: int64 id: type: - 'null' - string description: Unique Id for the service order. client: type: - 'null' - string description: Client name (Required) clientNumber: type: - 'null' - string description: Client number clientId: type: string description: ClientId format: uuid acctgEstNumber: type: - 'null' - string description: Accounting estimate number projectId: type: - 'null' - string description: Project Id for the service order. Applicable if service order linked to project. project: type: - 'null' - string description: Project name (Required) projectNumber: type: - 'null' - string description: Project Number name: type: - 'null' - string description: Name (Required) number: type: - 'null' - string description: Number (Required) description: type: - 'null' - string description: Description totalPrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Total Price format: double totalPriceTC: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Total Price in transaction currency format: double start: type: string description: Start date required format: date-time end: type: string description: End date required format: date-time scheduledStart: type: - 'null' - string description: Scheduled start format: date-time scheduledEnd: type: - 'null' - string description: Scheduled end format: date-time progress: type: - 'null' - string description: Progress percentComplete: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Percent complete format: double notes: type: - 'null' - string description: Notes priority: type: - 'null' - string description: Priority customField1: type: - 'null' - string description: CustomField1 customField2: type: - 'null' - string description: CustomField2 customField3: type: - 'null' - string description: CustomField3 customField4: type: - 'null' - string description: CustomField4 customField5: type: - 'null' - string description: CustomField5 customField6: type: - 'null' - boolean description: CustomField6 customField7: type: - 'null' - boolean description: CustomField7 customField8: type: - 'null' - boolean description: CustomField8 customField9: type: - 'null' - boolean description: CustomField9 customField10: type: - 'null' - boolean description: CustomField10 customField11: type: - 'null' - string description: CustomField11 format: date-time customField12: type: - 'null' - string description: CustomField12 format: date-time customField13: type: - 'null' - string description: CustomField13 format: date-time customField14: type: - 'null' - string description: CustomField14 format: date-time customField15: type: - 'null' - string description: CustomField15 format: date-time customField16: type: - 'null' - string description: CustomField16 customField17: type: - 'null' - string description: CustomField17 customField18: type: - 'null' - string description: CustomField18 customField19: type: - 'null' - string description: CustomField19 customField20: type: - 'null' - string description: CustomField20 customField21: type: - 'null' - string description: CustomField21 customField22: type: - 'null' - string description: CustomField22 customField23: type: - 'null' - string description: CustomField23 customField24: type: - 'null' - string description: CustomField24 currencyCode: type: - 'null' - string description: Currency code currencyRate: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Currency rate format: double createdOn: type: - 'null' - string description: Date the service order was created (UTC Time) format: date-time updatedOn: type: - 'null' - string description: Date the service order was updated (UTC Time) format: date-time createdBy: type: - 'null' - string description: Service order Created By updatedBy: type: - 'null' - string description: Service order Updated By publishedBy: type: - 'null' - string description: Service order Published By ServiceOrderInfo: type: object properties: id: type: - 'null' - string description: Unique Id for the service order client: type: - 'null' - string description: Client Name number: type: - 'null' - string description: Service Order Number name: type: - 'null' - string description: Service order name progress: type: - 'null' - string description: Project progress description: type: - 'null' - string description: Service order description importedOn: type: - 'null' - string description: Date service order was imported by SI user format: date-time publishedOn: type: string description: Date service order was published by SI user format: date-time publishedOnUnixTimeMs: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Date service order was published by SI user in Unix epoch milliseconds (UTC). This property can be passed to the Mark Service Order as Imported method optionally to make sure the service order was not updated in SI since it was published. format: int64 deleted: type: - 'null' - boolean description: Service order deleted description: Service Order Information ServiceOrderLabor: type: object properties: id: type: - 'null' - string description: Unique Id required manufacturer: type: - 'null' - string description: Manufacturer required for labor. model: type: - 'null' - string description: Model required for labor. quantity: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Quantity of labor. format: int32 description: type: - 'null' - string description: Description of the labor. acctgItemName: type: - 'null' - string description: Accounting item name. fixedCost: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Fixed cost. format: double fixedPrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Fixed price. format: double hours: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Hours of the labor. format: double variableCost: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Variable cost. format: double variablePrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Variable price. format: double unitCost: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Unit cost. format: double unitPrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Unit price. format: double totalCost: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Total cost. format: double totalPrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Total price. format: double taxable: type: boolean description: Taxable. warranty: type: boolean description: Warranty. orderNumber: type: - 'null' - string description: Order Number (if on purchase order) orderDate: type: - 'null' - string description: Order Date (if on purchase order) format: date-time orderStatus: type: - 'null' - string description: Order Status (if on purchase order) receivedDate: type: - 'null' - string description: Received Date (if on purchase order) format: date-time vendorName: type: - 'null' - string description: Vendor name (if on purchase order) itemCustomField1: type: - 'null' - string description: ItemCustomField1 itemCustomField2: type: - 'null' - string description: ItemCustomField2 itemCustomField3: type: - 'null' - string description: ItemCustomField3 itemCustomField4: type: - 'null' - string description: ItemCustomField4 itemCustomField5: type: - 'null' - string description: ItemCustomField5 itemCustomField6: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: ItemCustomField6 format: double itemCustomField7: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: ItemCustomField7 format: double itemCustomField8: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: ItemCustomField8 format: double itemCustomField9: type: - 'null' - string description: ItemCustomField9 format: date-time itemCustomField10: type: - 'null' - string description: ItemCustomField10 format: date-time itemCustomField11: type: - 'null' - string description: ItemCustomField11 format: date-time itemCustomField12: type: - 'null' - string description: ItemCustomField12 itemCustomField13: type: - 'null' - string description: ItemCustomField13 itemCustomField14: type: - 'null' - string description: ItemCustomField14 itemCustomField15: type: - 'null' - string description: ItemCustomField15 itemCustomField16: type: - 'null' - string description: ItemCustomField16 itemCustomField17: type: - 'null' - string description: ItemCustomField17 itemCustomField18: type: - 'null' - string description: ItemCustomField18 itemCustomField19: type: - 'null' - boolean description: ItemCustomField19 itemCustomField20: type: - 'null' - boolean description: ItemCustomField20 itemCustomField21: type: - 'null' - boolean description: ItemCustomField21 itemCustomField22: type: - 'null' - boolean description: ItemCustomField22 name: type: - 'null' - string description: Labor Object ServiceOrderProduct: type: object properties: id: type: - 'null' - string description: Unique Id required manufacturer: type: - 'null' - string description: Manufacturer required for product. model: type: - 'null' - string description: Model required for product. quantity: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Quantity of product. format: int32 partNumber: type: - 'null' - string description: Part number of the product. description: type: - 'null' - string description: Description of the product. packageName: type: - 'null' - string description: Package name. acctgItemName: type: - 'null' - string description: Accounting item name. unitCost: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Unit cost. format: double unitPrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Unit price. format: double totalCost: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Total cost. format: double totalPrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Total price. format: double taxable: type: boolean description: Taxable. warranty: type: boolean description: Warranty. orderNumber: type: - 'null' - string description: Order Number (if on purchase order) orderDate: type: - 'null' - string description: Order Date (if on purchase order) format: date-time orderStatus: type: - 'null' - string description: Order Status (if on purchase order) receivedDate: type: - 'null' - string description: Received Date (if on purchase order) format: date-time vendorName: type: - 'null' - string description: Vendor name (if on purchase order) itemCustomField1: type: - 'null' - string description: ItemCustomField1 itemCustomField2: type: - 'null' - string description: ItemCustomField2 itemCustomField3: type: - 'null' - string description: ItemCustomField3 itemCustomField4: type: - 'null' - string description: ItemCustomField4 itemCustomField5: type: - 'null' - string description: ItemCustomField5 itemCustomField6: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: ItemCustomField6 format: double itemCustomField7: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: ItemCustomField7 format: double itemCustomField8: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: ItemCustomField8 format: double itemCustomField9: type: - 'null' - string description: ItemCustomField9 format: date-time itemCustomField10: type: - 'null' - string description: ItemCustomField10 format: date-time itemCustomField11: type: - 'null' - string description: ItemCustomField11 format: date-time itemCustomField12: type: - 'null' - string description: ItemCustomField12 itemCustomField13: type: - 'null' - string description: ItemCustomField13 itemCustomField14: type: - 'null' - string description: ItemCustomField14 itemCustomField15: type: - 'null' - string description: ItemCustomField15 itemCustomField16: type: - 'null' - string description: ItemCustomField16 itemCustomField17: type: - 'null' - string description: ItemCustomField17 itemCustomField18: type: - 'null' - string description: ItemCustomField18 itemCustomField19: type: - 'null' - boolean description: ItemCustomField19 itemCustomField20: type: - 'null' - boolean description: ItemCustomField20 itemCustomField21: type: - 'null' - boolean description: ItemCustomField21 itemCustomField22: type: - 'null' - boolean description: ItemCustomField22 name: type: - 'null' - string description: Product Object ServiceOrderRepairItem: type: object properties: id: type: - 'null' - string description: Unique Id required manufacturer: type: - 'null' - string description: Manufacturer required for repair item. model: type: - 'null' - string description: Model required for repair item. partNumber: type: - 'null' - string description: Part number of the repair item. category: type: - 'null' - string description: Category of the repair item. componentId: type: - 'null' - string description: ComponentId of the repair item. serialNumber: type: - 'null' - string description: Serial number of the repair item. description: type: - 'null' - string description: Description of the repair item. notes: type: - 'null' - string description: Notes of the repair item. location: type: - 'null' - string description: Location of the repair item. system: type: - 'null' - string description: Description of the repair item. description: Repair item Object ServiceOrderResource: type: object properties: name: type: - 'null' - string description: Name of the resource email: type: - 'null' - string description: Email estimatedHours: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Estimated hours format: double actualHours: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Actual hours format: double cost: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Cost format: double estimatedCost: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string format: double actualCost: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string format: double description: Service Order Resource Object ServiceOrdersResult: type: object properties: serviceOrders: type: - 'null' - array items: $ref: '#/components/schemas/ServiceOrderInfo' description: Service orders totalCount: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Total count of service orders format: int32 ServicePlan: type: object properties: contact: description: Contact information $ref: '#/components/schemas/ContactInfo' billingAddress: description: Billing address information $ref: '#/components/schemas/Address' siteAddress: description: Site address information $ref: '#/components/schemas/Address' servicePlanItems: type: - 'null' - array items: $ref: '#/components/schemas/ServicePlanItem' description: Service plan items in a service plan. servicePlanProjectItems: type: - 'null' - array items: $ref: '#/components/schemas/ServicePlanProjectItem' description: Project items in a service plan. servicePlanFeatures: type: - 'null' - array items: $ref: '#/components/schemas/ServicePlanFeature' description: Features in a service plan. publishedOn: type: string description: Date service plan was published by SI format: date-time publishedOnUnixTimeMs: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Date service plan was published by SI user in Unix epoch milliseconds (UTC). This property can be passed to the Mark Service Plan as Imported method optionally to make sure the service plan was not updated in SI since it was published. format: int64 oneTimePrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: One time price format: double monthlyPrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Monthly price format: double quarterlyPrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Quarterly price format: double annuallyPrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Annual price format: double weeklyPrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Weekly price format: double biweeklyPrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Biweekly price format: double bimonthlyPrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Bimonthly price format: double semiannuallyPrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Semiannual price format: double oneTimePriceTC: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: One time Price In transaction currency format: double monthlyPriceTC: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Monthly Price In transaction currency format: double quarterlyPriceTC: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Quarterly Price In transaction currency format: double annuallyPriceTC: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Annual Price In transaction currency format: double weeklyPriceTC: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Weekly Price In transaction currency format: double biweeklyPriceTC: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Biweekly Price In transaction currency format: double bimonthlyPriceTC: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Bimonthly Price In transaction currency format: double semiannuallyPriceTC: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Semiannual Price In transaction currency format: double oneTimePriceWithTax: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: One time priceWithTax format: double monthlyPriceWithTax: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Monthly Price With Tax format: double quarterlyPriceWithTax: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Quarterly Price With Tax format: double annuallyPriceWithTax: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Annually priceWithTax format: double weeklyPriceWithTax: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Weekly Price With Tax format: double biweeklyPriceWithTax: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Biweekly Price With Tax format: double bimonthlyPriceWithTax: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Bimonthly Price With Tax format: double semiannuallyPriceWithTax: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Semiannual Price With Tax format: double oneTimePriceWithTaxTC: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: One time Price With Tax in Transaction Currency format: double monthlyPriceWithTaxTC: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Monthly Price With Tax in Transaction Currency format: double quarterlyPriceWithTaxTC: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Quarterly Price With Tax in Transaction Currency format: double annuallyPriceWithTaxTC: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Annual Price With Tax in Transaction Currency format: double weeklyPriceWithTaxTC: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Weekly Price With Tax in Transaction Currency format: double biweeklyPriceWithTaxTC: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Biweekly Price With Tax in Transaction Currency format: double bimonthlyPriceWithTaxTC: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Bimonthly Price With Tax in Transaction Currency format: double semiannuallyPriceWithTaxTC: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Semiannual Price With Tax in Transaction Currency format: double id: type: - 'null' - string description: Unique Id client: type: - 'null' - string description: Client name (Required) clientNumber: type: - 'null' - string description: Client number clientId: type: string description: ClientId format: uuid projectId: type: - 'null' - string description: Id of project associated to the service plan project: type: - 'null' - string description: Project name projectNumber: type: - 'null' - string description: Project Number name: type: - 'null' - string description: Name required number: type: - 'null' - string description: Number (Required) description: type: - 'null' - string description: Description start: type: - 'null' - string description: Start date format: date-time end: type: - 'null' - string description: End date format: date-time status: type: - 'null' - string description: Status (Required) monthToMonth: type: boolean description: Month to month planLength: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string description: Plan length format: int32 planLengthPeriod: type: - 'null' - string description: Plan length period autoRenew: type: boolean description: Auto renew allowableHours: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Allowable hours format: double allowableHoursFrequency: type: - 'null' - string description: Allowable hours frequency customField1: type: - 'null' - string description: CustomField1 customField2: type: - 'null' - string description: CustomField2 customField3: type: - 'null' - string description: CustomField3 customField4: type: - 'null' - string description: CustomField4 customField5: type: - 'null' - string description: CustomField5 customField6: type: - 'null' - boolean description: CustomField6 customField7: type: - 'null' - boolean description: CustomField7 customField8: type: - 'null' - boolean description: CustomField8 customField9: type: - 'null' - boolean description: CustomField9 customField10: type: - 'null' - boolean description: CustomField10 customField11: type: - 'null' - string description: CustomField11 format: date-time customField12: type: - 'null' - string description: CustomField12 format: date-time customField13: type: - 'null' - string description: CustomField13 format: date-time customField14: type: - 'null' - string description: CustomField14 format: date-time customField15: type: - 'null' - string description: CustomField15 format: date-time customField16: type: - 'null' - string description: CustomField16 customField17: type: - 'null' - string description: CustomField17 customField18: type: - 'null' - string description: CustomField18 customField19: type: - 'null' - string description: CustomField19 customField20: type: - 'null' - string description: CustomField20 customField21: type: - 'null' - string description: CustomField21 customField22: type: - 'null' - string description: CustomField22 customField23: type: - 'null' - string description: CustomField23 customField24: type: - 'null' - string description: CustomField24 currencyCode: type: - 'null' - string description: Currency code currencyRate: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Currency rate format: double createdOn: type: - 'null' - string description: Date the service plan was created (UTC Time) format: date-time updatedOn: type: - 'null' - string description: Date the service plan was updated (UTC Time) format: date-time createdBy: type: - 'null' - string description: Service plan Created By updatedBy: type: - 'null' - string description: Service plan Updated By publishedBy: type: - 'null' - string description: Service plan Published By ServicePlanFeature: type: object properties: id: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int32 name: type: - 'null' - string description: type: - 'null' - string description: Service Plan Feature ServicePlanInfo: type: object properties: id: type: - 'null' - string description: Unique Id client: type: - 'null' - string description: Client name number: type: - 'null' - string description: Service Plan Number name: type: - 'null' - string description: Name status: type: - 'null' - string description: Status description: type: - 'null' - string description: Service plan description importedOn: type: - 'null' - string description: Date service plan was imported by SI user format: date-time publishedOn: type: string description: Date service plan was published by SI format: date-time publishedOnUnixTimeMs: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Date service plan was published by SI user in Unix epoch milliseconds (UTC). This property can be passed to the Mark Service Plan as Imported method optionally to make sure the service plan was not updated in SI since it was published. format: int64 deleted: type: - 'null' - boolean description: Service plan deleted description: Service Plan Information ServicePlanItem: type: object properties: id: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Unique Id (Required) format: int32 name: type: - 'null' - string description: Name description: type: - 'null' - string description: Description frequency: type: - 'null' - string description: Frequency calculated: type: boolean description: Calculated field for service plan item. price: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Price for the service plan item. format: double taxable: type: boolean description: Taxable startDate: type: - 'null' - string description: Start Date format: date-time numberOfPayments: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string description: Number of payments format: int32 description: Service Plan Item object ServicePlanProjectItem: type: object properties: id: type: - 'null' - string description: Unique Id (Required) typeId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: 'TypeId: 1 = Product, 2 = Labor, 3 = Allowance, 4 = Bundled Cable, 5 = Placeholder (Required)' format: uint8 siItemId: type: - 'null' - string description: SIItemId - unique id of project item in SI. manufacturer: type: - 'null' - string description: Manufacturer for the project item. Required for product and labor. model: type: - 'null' - string description: Model for the project item. Required for product and labor. acctgItemName: type: - 'null' - string description: Accounting item name. quantity: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Quantity format: double packageName: type: - 'null' - string description: Package Name for the allowance, bundled cable and placeholder. partNumber: type: - 'null' - string description: Part Number category: type: - 'null' - string description: Category subcategory: type: - 'null' - string description: Subcategory description: type: - 'null' - string description: Short description componentId: type: - 'null' - string description: Component ID serialNumber: type: - 'null' - string description: Serial number ipAddress: type: - 'null' - string description: IP Address 1 ipAddress2: type: - 'null' - string description: IP Address 2 macAddress1: type: - 'null' - string description: MAC Address 1 macAddress2: type: - 'null' - string description: MAC Address 2 location: type: - 'null' - string description: Location system: type: - 'null' - string description: System name: type: - 'null' - string ServicePlansResult: type: object properties: servicePlans: type: - 'null' - array items: $ref: '#/components/schemas/ServicePlanInfo' description: Service plans array totalCount: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Total count of service plans format: int32 ShipToAddress: type: object properties: name: type: - 'null' - string street1: type: - 'null' - string street2: type: - 'null' - string city: type: - 'null' - string state: type: - 'null' - string postalCode: type: - 'null' - string country: type: - 'null' - string phone: type: - 'null' - string fax: type: - 'null' - string SITask: type: object properties: contact: description: Contact information $ref: '#/components/schemas/ContactInfo' siteAddress: description: Address information $ref: '#/components/schemas/Address' resources: type: - 'null' - array items: $ref: '#/components/schemas/TaskResource' description: Resource information items: type: - 'null' - array items: $ref: '#/components/schemas/TaskItem' publishedOn: type: string description: Date task was published by SI user format: date-time publishedOnUnixTimeMs: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Date task was published by SI user in Unix epoch milliseconds (UTC). This property can be passed to the Mark Task as Imported method optionally to make sure the task was not updated in SI since it was published. format: int64 id: type: - 'null' - string description: Unique Id client: type: - 'null' - string description: Client name (Required) projectId: type: - 'null' - string description: Project Id for the task. project: type: - 'null' - string description: Project name (Required) projectNumber: type: - 'null' - string description: Project number projectStart: type: - 'null' - string description: Project start date format: date-time projectEnd: type: - 'null' - string description: Project end date format: date-time name: type: - 'null' - string description: Name (Required) number: type: - 'null' - string description: Number (Required) description: type: - 'null' - string description: Description start: type: string description: Start date (Required) format: date-time end: type: string description: End date (Required) format: date-time scheduledStart: type: - 'null' - string description: Scheduled start format: date-time scheduledEnd: type: - 'null' - string description: Scheduled end format: date-time progress: type: - 'null' - string description: Progress (Required) percentComplete: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Percent complete format: double customField1: type: - 'null' - string description: CustomField1 customField2: type: - 'null' - string description: CustomField2 customField3: type: - 'null' - string description: CustomField3 customField4: type: - 'null' - string description: CustomField4 customField5: type: - 'null' - string description: CustomField5 customField6: type: - 'null' - boolean description: CustomField6 customField7: type: - 'null' - boolean description: CustomField7 customField8: type: - 'null' - boolean description: CustomField8 customField9: type: - 'null' - boolean description: CustomField9 customField10: type: - 'null' - boolean description: CustomField10 customField11: type: - 'null' - string description: CustomField11 format: date-time customField12: type: - 'null' - string description: CustomField12 format: date-time customField13: type: - 'null' - string description: CustomField13 format: date-time customField14: type: - 'null' - string description: CustomField14 format: date-time customField15: type: - 'null' - string description: CustomField15 format: date-time customField16: type: - 'null' - string description: CustomField16 customField17: type: - 'null' - string description: CustomField17 customField18: type: - 'null' - string description: CustomField18 customField19: type: - 'null' - string description: CustomField19 customField20: type: - 'null' - string description: CustomField20 customField21: type: - 'null' - string description: CustomField21 customField22: type: - 'null' - string description: CustomField22 customField23: type: - 'null' - string description: CustomField23 customField24: type: - 'null' - string description: CustomField24 createdOn: type: - 'null' - string description: Date the task was created (UTC Time) format: date-time updatedOn: type: - 'null' - string description: Date the task was updated (UTC Time) format: date-time createdBy: type: - 'null' - string description: Task Created By updatedBy: type: - 'null' - string description: Task Updated By publishedBy: type: - 'null' - string description: Task Published By SiteNote: type: object properties: notes: type: - 'null' - string description: Task Notes updatedOn: type: string description: Updated On format: date-time updatedBy: type: - 'null' - string description: Updated By description: Mobile Install Site Notes System: type: object properties: id: type: - 'null' - string description: Unique Id for the system (Required) name: type: - 'null' - string description: Name of system (Required) fullName: type: - 'null' - string description: Full name for the system including parent name description: type: - 'null' - string description: System Description parentId: type: - 'null' - string description: Id of parent system TaskInfo: type: object properties: id: type: - 'null' - string description: Unique Id client: type: - 'null' - string description: Client name number: type: - 'null' - string description: Task Number name: type: - 'null' - string description: Task name progress: type: - 'null' - string description: Project progress description: type: - 'null' - string description: Task description importedOn: type: - 'null' - string description: Date task was imported by SI format: date-time publishedOn: type: string description: Date task was published by SI user format: date-time publishedOnUnixTimeMs: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Date task was published by SI user in Unix epoch milliseconds (UTC). This property can be passed to the Mark Task as Imported method optionally to make sure the task was not updated in SI since it was published. format: int64 deleted: type: - 'null' - boolean description: Task deleted description: Task Information TaskItem: type: object properties: id: type: - 'null' - string description: Unique Id (Required) siItemId: type: - 'null' - string description: SIItemId - unique id of item in SI project typeId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: 'TypeId: 1 = Product, 2 = Labor, 3 = Allowance, 4 = Bundled Cable (Required)' format: uint8 manufacturer: type: - 'null' - string description: Manufacturer (Required for product and labor) model: type: - 'null' - string description: Model (Required for product and labor) packageName: type: - 'null' - string description: Package Name for allowance, bundled cable and placeholder (required). partNumber: type: - 'null' - string category: type: - 'null' - string subcategory: type: - 'null' - string componentId: type: - 'null' - string description: ComponentId (Required) location: type: - 'null' - string system: type: - 'null' - string serialNumber: type: - 'null' - string ipAddress1: type: - 'null' - string ipAddress2: type: - 'null' - string macAddress1: type: - 'null' - string macAddress2: type: - 'null' - string picked: type: boolean pickedDate: type: - 'null' - string format: date-time installed: type: boolean installedOn: type: - 'null' - string format: date-time installedNotes: type: - 'null' - string description: Task Item TaskResource: type: object properties: name: type: - 'null' - string description: Name of the resource email: type: - 'null' - string estimatedHours: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string format: double actualHours: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string format: double cost: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string format: double estimatedCost: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string format: double actualCost: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string format: double TasksResult: type: object properties: tasks: type: - 'null' - array items: $ref: '#/components/schemas/TaskInfo' description: Tasks array totalCount: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Total count of tasks format: int32 Tax: type: object properties: id: type: - 'null' - string description: Unique Id for the tax (Required) name: type: - 'null' - string description: Name of tax (Required) rate: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Tax Rate format: double productTotal: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Calculated field. Total tax for all products in project format: double laborTotal: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Calculated field. Total tax for all labor in project format: double total: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Calculated field. Total tax in project (product and labor). format: double TimeSheet: type: object properties: id: type: - 'null' - string description: Unique Id entityId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: 'Entity associated to Time Sheet: Project = 1, Task = 2, Service Order = 3, Company = 4' format: uint8 entitySourceId: type: - 'null' - string description: Id of the Project or Task or Service Order. EntitySourceId is not required If company time sheet (Required) date: type: string description: Date format: date-time dateTicks: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int64 resource: type: - 'null' - string description: Resource resourceEmail: type: - 'null' - string description: Resource Email client: type: - 'null' - string description: Client projectName: type: - 'null' - string description: Project Name projectNumber: type: - 'null' - string description: Project Number taskOrSVOName: type: - 'null' - string description: Task or Service Order Name taskOrSVONumber: type: - 'null' - string description: Task or Service Order Number duration: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Total Duration for all non overtime entries in time sheet format: double durationOverTime: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Total Duration for all overtime entries in time sheet format: double createdOn: type: string description: Date the time sheet was created (UTC Time) format: date-time updatedOn: type: string description: Date the time sheet was updated (UTC Time) format: date-time approved: type: - 'null' - boolean description: Is time sheet Approved approvedBy: type: - 'null' - string description: If Time Sheet is approved the Time sheet Approved By approvedOn: type: - 'null' - string description: If Time Sheet is approved the Time sheet Approved Date format: date-time costHr: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Cost Per Hr for non overtime work format: double costHrOverTime: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Cost Per Hr for overtime work format: double totalCost: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Total Cost format: double entries: type: - 'null' - array items: $ref: '#/components/schemas/TimeSheetEntry' description: Entries for time sheet cF1: type: - 'null' - string description: Custom Fields 1 (Text) cF2: type: - 'null' - string description: Custom Fields 2 (Text) cF3: type: - 'null' - string description: Custom Fields 3 (Text) cF4: type: - 'null' - string description: Custom Fields 4 (Text) cF5: type: - 'null' - string description: Custom Fields 5 (Text) cF6: type: - 'null' - boolean description: Custom Fields 6 (boolean) cF7: type: - 'null' - boolean description: Custom Fields 7 (boolean) cF8: type: - 'null' - boolean description: Custom Fields 8 (boolean) cF9: type: - 'null' - boolean description: Custom Fields 9 (boolean) cF10: type: - 'null' - boolean description: Custom Fields 10 (boolean) cF11: type: - 'null' - string description: Custom Fields 11 (DateTime) format: date-time cF12: type: - 'null' - string description: Custom Fields 12 (DateTime) format: date-time cF13: type: - 'null' - string description: Custom Fields 13 (DateTime) format: date-time cF14: type: - 'null' - string description: Custom Fields 14 (DateTime) format: date-time cF15: type: - 'null' - string description: Custom Fields 15 (DateTime) format: date-time cF16: type: - 'null' - string description: Custom Fields 16 (List) cF17: type: - 'null' - string description: Custom Fields 17 (List) cF18: type: - 'null' - string description: Custom Fields 18 (List) cF19: type: - 'null' - string description: Custom Fields 19 (List) cF20: type: - 'null' - string description: Custom Fields 20 (List) cF21: type: - 'null' - string description: Custom Fields 21 (Hyperlink) cF22: type: - 'null' - string description: Custom Fields 22 (Hyperlink) cF23: type: - 'null' - string description: Custom Fields 23 (Hyperlink) cF24: type: - 'null' - string description: Custom Fields 24 (Hyperlink) cF25: type: - 'null' - string description: Custom Fields 25 (Long Text) cF26: type: - 'null' - string description: Custom Fields 26 (Long Text) cF27: type: - 'null' - string description: Custom Fields 27 (Long Text) cF28: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Fields 28 (Number) format: double cF29: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Fields 29 (Number) format: double cF30: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Fields 30 (Number) format: double cF31: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Fields 31 (Number) format: double cF32: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Fields 32 (Number) format: double publishedOn: type: string description: Date time sheet was published by SI format: date-time publishedOnUnixTimeMs: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Date time sheet was published by SI user in Unix epoch milliseconds (UTC). This property can be passed to the Mark Time Sheet as Imported method optionally to make sure the time sheet was not updated in SI since it was published. format: int64 TimeSheetEntry: type: object properties: id: type: - 'null' - string description: Unique Id phase: type: - 'null' - string description: Phase laborType: type: - 'null' - string description: Labor Type subLaborType: type: - 'null' - string description: 'Sub-Labor Type: Values can be Install, Miscellaneous, Management, Design' typeId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: 'Type: Duration = 1, Time In/Out = 2 (Required)' format: uint8 duration: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Duration in Hours (applicable if TypeId = 1 (Duration)) format: double startTime: type: - 'null' - string description: Start Time (applicable if TypeId = 2 (Time In/Out)) format: date-time endTime: type: - 'null' - string description: End Time (applicable if TypeId = 2 (Time In/Out)) format: date-time billable: type: - 'null' - boolean description: Billable overtime: type: boolean description: Overtime description: type: - 'null' - string description: Description TimeSheetInfo: type: object properties: id: type: - 'null' - string description: Unique Id client: type: - 'null' - string description: Client name number: type: - 'null' - string description: Project Number or Task Number or Service Order Number importedOn: type: - 'null' - string description: Date time sheet was imported by SI user format: date-time publishedOn: type: string description: Date time sheet was published by SI format: date-time publishedOnUnixTimeMs: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Date time sheet was published by SI user in Unix epoch milliseconds (UTC). This property can be passed to the Mark Time Sheet as Imported method optionally to make sure the time sheet was not updated in SI since it was published. format: int64 deleted: type: - 'null' - boolean description: Time sheet deleted description: Time Sheet Information TimeSheetsResult: type: object properties: timeSheets: type: - 'null' - array items: $ref: '#/components/schemas/TimeSheetInfo' description: Time sheets array totalCount: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Total count of time sheet format: int32 UpdateClient: type: object properties: integrationId: type: - 'null' - string description: Integration Id of client to update (Must pass either IntegrationId Or Client Number) number: type: - 'null' - string description: Number of client to update (Must pass either IntegrationId Or Client Number) updateFields: type: - 'null' - array items: $ref: '#/components/schemas/UpdateClientField' description: List of UpdateFields for the client. Each UpdateField has a Id and a Value. siteAddress: description: Client Site Address $ref: '#/components/schemas/Address' billingAddress: description: Client Billing Address $ref: '#/components/schemas/Address' description: Update Project UpdateClientField: type: object properties: clientFieldId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: "ClientFieldId (pass the correct Id for the field you want to udpate)\r\nName = 1, Number = 2, Phone\ \ = 3, Fax = 4, Email = 5, Website = 6, Inactive = 7, IntegrationId = 8\r\nCustomField1 = 101, CustomField2 =\ \ 102, CustomField3 = 103, CustomField4 = 104, CustomField5 = 105, CustomField6 = 106, CustomField7 = 107, CustomField8\ \ = 108, CustomField9 = 109, CustomField10 = 110,\r\nCustomField11 = 111, CustomField12 = 112, CustomField13 =\ \ 113, CustomField14 = 114, CustomField15 = 115, CustomField16 = 116, CustomField17 = 117, CustomField18 = 118,\ \ CustomField19 = 119, CustomField20 = 120,\r\nCustomField21 = 121, CustomField22 = 122, CustomField23 = 123,\ \ CustomField24 = 124" format: uint8 value: type: - 'null' - string description: Value for the client field. Datetime and decimal should be invariant. UpdateProject: type: object properties: projectId: type: - 'null' - string description: Id of project to update (Required) messageId: type: string format: uuid date: type: string format: date-time archive: type: - 'null' - boolean newPackages: type: - 'null' - array items: $ref: '#/components/schemas/Package' description: List of new package to add. newProjectItems: type: - 'null' - array items: $ref: '#/components/schemas/ProjectItem' description: List of new project items to add. updateProjectItems: type: - 'null' - array items: $ref: '#/components/schemas/UpdateProjectItem' description: List of project items to update. Projects items are matched on Component ID updateProjectItemFieldIds: type: - 'null' - array items: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: uint8 description: " List of update project item field ids to update. If you do not pass project item field ids all project\ \ fields will update in SI. \r\nQuantity = 1, SerialNumber = 2, IPAddress = 3, IPAddress2 = 4, MACAddress1 =\ \ 5, MACAddress2 = 6, ShortDescription = 7, LongDescription = 8, Location = 9, System = 10, \r\nIsOfe = 11, IsNonBillable\ \ = 12, UnitCost = 13, UnitPrice = 14, Discount = 15, LaborCalculationMethodId = 16, Phase = 17, IsTaxable = 18,\ \ Tax = 19, DoNotOrder = 20,\r\nOrderStatus = 21, OrderNumber = 22, OrderedDate = 23, ExpectedDeliveryDate = 24,\ \ ReceivedDate = 25, Picked = 26, PickedDate = 27, Installed = 28, InstalledDate = 29, InstalledNotes = 30, TrackingNumber\ \ = 31, \r\n CustomField1 = 101, CustomField2 = 102, CustomField3 = 103, CustomField4 = 104, CustomField5\ \ = 105, CustomField6 = 106, CustomField7 = 107, CustomField8 = 108, CustomField9 = 109, CustomField10 = 110,\r\ \n CustomField11 = 111, CustomField12 = 112, CustomField13 = 113, CustomField14 = 114, CustomField15 = 115, CustomField16\ \ = 116, CustomField17 = 117, CustomField18 = 118, CustomField19 = 119, CustomField20 = 120,\r\n CustomField21\ \ = 121, CustomField22 = 122, CustomField23 = 123, CustomField24 = 124, CustomField25 = 125, CustomField26 = 126,\ \ CustomField27 = 127, CustomField28 = 128, CustomField29 = 129, CustomField30 = 130\r\n CustomField31 = 131,\ \ CustomField32 = 132, CustomField33 = 133, CustomField34 = 134, CustomField35 = 135, CustomField36 = 136, CustomField37\ \ = 137, CustomField38 = 138, CustomField39 = 139, CustomField40 = 140,\r\n CustomField41 = 141, CustomField42\ \ = 142, CustomField43 = 143, CustomField44 = 144, CustomField45 = 145, CustomField46 = 146, CustomField47 = 147,\ \ CustomField48 = 148, CustomField49 = 149, CustomField50 = 150, \r\n CustomField51 = 151, CustomField52 = 152,\ \ CustomField53 = 153, CustomField54 = 154, CustomField55 = 155, CustomField56 = 156, CustomField57 = 157, CustomField58\ \ = 158, CustomField59 = 159, CustomField160 = 160,\r\n CustomField61 = 161, CustomField62 = 162, CustomField63\ \ = 163, CustomField64 = 164, CustomField65 = 165, CustomField66 = 166, CustomField67 = 167, CustomField68 = 168,\ \ CustomField69 = 169, CustomField70 = 170,\r\n CustomField71 = 171, CustomField72 = 172, CustomField73 = 173,\ \ CustomField74 = 174, CustomField75 = 175," locations: type: - 'null' - array items: $ref: '#/components/schemas/Location' description: Locations for new project items systems: type: - 'null' - array items: $ref: '#/components/schemas/System' description: Systems for new project items taxes: type: - 'null' - array items: $ref: '#/components/schemas/Tax' description: Taxes for new project items contacts: type: - 'null' - array items: $ref: '#/components/schemas/Contact' description: Contacts in a project resources: type: - 'null' - array items: $ref: '#/components/schemas/Resource' description: Resources in a project siteAddress: description: Project Site Address $ref: '#/components/schemas/Address' billingAddress: description: Project Billing Address $ref: '#/components/schemas/Address' updateFields: type: - 'null' - array items: $ref: '#/components/schemas/UpdateProjectField' description: List of UpdateFields for the project. Each UpdateField has a Id and a Value. siItemIdsToDelete: type: - 'null' - array items: type: string description: List of SIItemIds to delete componentIdsToDelete: type: - 'null' - array items: type: string description: List of Component Ids to delete projectItemInfosToDelete: type: - 'null' - array items: $ref: '#/components/schemas/ProjectItemInfo' description: List of Project Items to delete lockChangeOrderInfos: type: - 'null' - array items: $ref: '#/components/schemas/LockChangeOrderInfo' description: List of Change Order to lock or unlock updateLocationOnApprovedChangeOrders: type: boolean description: Update location on Approved Change Orders description: Update Project UpdateProjectField: type: object properties: projectFieldId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: "ProjectFieldId (pass the correct Id for the field you want to update) \r\nProject Name = 1, Status\ \ = 2, Start Date = 3, End Date = 4, Estimated Close Date = 5, Close Date = 6, Budget = 7, Scope Of Work = 8,\r\ \nAssignedTo = 9, SalesRep = 10, ProjectManager = 11, Designer = 12, Client = 13 , Client Number = 14 , Client\ \ PO Number = 15 ,\r\nCustomField1 = 101, CustomField2 = 102, CustomField3 = 103, CustomField4 = 104, CustomField5\ \ = 105, CustomField6 = 106, CustomField7 = 107, CustomField8 = 108, CustomField9 = 109, CustomField10 = 110,\r\ \nCustomField11 = 111, CustomField12 = 112, CustomField13 = 113, CustomField14 = 114, CustomField15 = 115, CustomField16\ \ = 116, CustomField17 = 117, CustomField18 = 118, CustomField19 = 119, CustomField20 = 120,\r\nCustomField21\ \ = 121, CustomField22 = 122, CustomField23 = 123, CustomField24 = 124, CustomField25 = 125, CustomField26 = 126,\ \ CustomField27 = 127, CustomField28 = 128, CustomField29 = 129, CustomField30 = 130\r\nCustomField31 = 131, CustomField32\ \ = 132, CustomField33 = 133, CustomField34 = 134, CustomField35 = 135, CustomField36 = 136, CustomField37 = 137,\ \ CustomField38 = 138, CustomField39 = 139, CustomField40 = 140,\r\nCustomField41 = 141, CustomField42 = 142,\ \ CustomField43 = 143, CustomField44 = 144, CustomField45 = 145, CustomField46 = 146, CustomField47 = 147, CustomField48\ \ = 148, CustomField49 = 149, CustomField50 = 150, \r\nCustomField51 = 151, CustomField52 = 152, CustomField53\ \ = 153, CustomField54 = 154, CustomField65 = 155, CustomField66 = 156, CustomField67 = 157, CustomField68 = 158,\ \ CustomField69 = 159, CustomField70 = 160,\r\nCustomField71 = 161, CustomField72 = 162, CustomField73 = 163,\ \ CustomField74 = 164, CustomField75 = 165" format: uint8 value: type: - 'null' - string description: Value for the project field. Datetime and decimal should be invariant. UpdateProjectItem: type: object properties: componentId: type: - 'null' - string description: Component ID of the project item to update (matching field can be SI Item Id or Component ID) quantity: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Quantity of the project item. For bulk wire is the wire length. format: int64 siItemId: type: - 'null' - string description: SI Item ID - unique id of an item in SI project (matching field can be SI Item Id or Component ID) serialNumber: type: - 'null' - string description: Serial number ipAddress: type: - 'null' - string description: IP Address ipAddress2: type: - 'null' - string description: IP Address 2 macAddress1: type: - 'null' - string description: MAC Address 1 macAddress2: type: - 'null' - string description: MAC Address 2 shortDescription: type: - 'null' - string description: Short Description longDescription: type: - 'null' - string description: Long Description location: type: - 'null' - string description: Location system: type: - 'null' - string description: System isOfe: type: - 'null' - boolean description: If project item owner furnished isNonBillable: type: - 'null' - boolean description: Is project item non-billable unitCost: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Unit Cost format: double unitPrice: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Unit Price (includes Discount) format: double discount: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Discount format: double laborCalculationMethodId: pattern: ^-?(?:0|[1-9]\d*)$ type: - 'null' - integer - string description: Id of the LaborCalculation. Fixed = 1, Variable = 2, Phase = 3 format: uint8 phase: type: - 'null' - string description: Phase laborHours: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Labor Hours format: double laborTypes: type: - 'null' - string description: Labor type (pass one labor type only) itemLaborTypes: type: - 'null' - array items: $ref: '#/components/schemas/ItemLaborType' description: Collection of labor types for item with name and hours (pass one labor labor type only) isTaxable: type: - 'null' - boolean description: Is project item taxable. Applicable if project has IsItemLevelTax = false tax: type: - 'null' - string description: Tax for the project item. Applicable if project has IsItemLevelTax = true doNotOrder: type: - 'null' - boolean description: Do not order item orderStatus: type: - 'null' - string description: Order Status (Ordered, Not Ordered etc.). orderNumber: type: - 'null' - string description: Order Number orderedDate: type: - 'null' - string description: Ordered Date (ISO 8601 format - yyyy-mm-dd) expectedDeliveryDate: type: - 'null' - string description: Expected Delivery Date (ISO 8601 format - yyyy-mm-dd) receivedDate: type: - 'null' - string description: Received Date (ISO 8601 format - yyyy-mm-dd) picked: type: - 'null' - boolean description: Picked (Is Item Picked?) pickedDate: type: - 'null' - string description: Picked Date (ISO 8601 format - yyyy-mm-dd) installed: type: - 'null' - boolean description: Installed (Is Item Installed?) installedDate: type: - 'null' - string description: Installed Date (ISO 8601 format - yyyy-mm-dd) installedNotes: type: - 'null' - string description: Install Notes trackingNumber: type: - 'null' - string description: Tracking Number customField1: type: - 'null' - string description: Custom Field 1 customField2: type: - 'null' - string description: Custom Field 2 customField3: type: - 'null' - string description: Custom Field 3 customField4: type: - 'null' - string description: Custom Field 4 customField5: type: - 'null' - string description: Custom Field 5 customField6: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Field 6 (Decimal) format: double customField7: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Field 7 (Decimal) format: double customField8: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Field 8 (Decimal) format: double customField9: type: - 'null' - string description: Custom Field 9 Date (ISO 8601 format - yyyy-mm-dd) customField10: type: - 'null' - string description: Custom Field 10 Date (ISO 8601 format - yyyy-mm-dd) customField11: type: - 'null' - string description: Custom Field 11 Date (ISO 8601 format - yyyy-mm-dd) customField12: type: - 'null' - string description: Custom Field 12 (Long Text) customField13: type: - 'null' - string description: Custom Field 13 (Long Text) customField14: type: - 'null' - string description: Custom Field 14 (Long Text) customField15: type: - 'null' - string description: Custom field 15 customField16: type: - 'null' - string description: Custom field 16 customField17: type: - 'null' - string description: Custom field 17 customField18: type: - 'null' - string description: Custom field 18 customField19: type: - 'null' - boolean description: Custom field 19 (Boolean) customField20: type: - 'null' - boolean description: Custom field 20 (Boolean) customField21: type: - 'null' - boolean description: Custom field 21 (Boolean) customField22: type: - 'null' - boolean description: Custom field 22 (Boolean) customField23: type: - 'null' - string description: Custom field 23 customField24: type: - 'null' - string description: Custom field 24 customField25: type: - 'null' - string description: Custom field 25 customField26: type: - 'null' - string description: Custom field 26 customField27: type: - 'null' - string description: Custom field 27 customField28: type: - 'null' - string description: Custom field 28 customField29: type: - 'null' - string description: Custom field 29 customField30: type: - 'null' - string description: Custom field 30 customField31: type: - 'null' - string description: Custom field 31 customField32: type: - 'null' - string description: Custom field 32 customField33: type: - 'null' - string description: Custom field 33 customField34: type: - 'null' - string description: Custom field 34 customField35: type: - 'null' - string description: Custom field 35 customField36: type: - 'null' - string description: Custom field 36 customField37: type: - 'null' - string description: Custom field 37 customField38: type: - 'null' - string description: Custom field 38 customField39: type: - 'null' - string description: Custom field 39 customField40: type: - 'null' - string description: Custom field 40 customField41: type: - 'null' - string description: Custom field 41 customField42: type: - 'null' - string description: Custom field 42 customField43: type: - 'null' - string description: Custom field 43 customField44: type: - 'null' - string description: Custom field 44 customField45: type: - 'null' - string description: Custom field 45 customField46: type: - 'null' - string description: Custom field 46 customField47: type: - 'null' - string description: Custom field 47 customField48: type: - 'null' - string description: Custom field 48 customField49: type: - 'null' - string description: Custom field 49 customField50: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom field 50 format: double customField51: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom field 51 format: double customField52: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom field 52 format: double customField53: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom field 53 format: double customField54: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom field 54 format: double customField55: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom field 55 format: double customField56: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom field 56 format: double customField57: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom field 57 format: double customField58: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom field 58 format: double customField59: type: - 'null' - string description: Custom field 59 format: date-time customField60: type: - 'null' - string description: Custom field 60 format: date-time customField61: type: - 'null' - string description: Custom field 61 format: date-time customField62: type: - 'null' - string description: Custom field 62 format: date-time customField63: type: - 'null' - string description: Custom field 63 format: date-time customField64: type: - 'null' - string description: Custom field 64 format: date-time customField65: type: - 'null' - string description: Custom field 65 format: date-time customField66: type: - 'null' - string description: Custom field 66 format: date-time customField67: type: - 'null' - string description: Custom field 67 format: date-time customField68: type: - 'null' - boolean description: Custom field 68 customField69: type: - 'null' - boolean description: Custom field 69 customField70: type: - 'null' - boolean description: Custom field 70 customField71: type: - 'null' - boolean description: Custom field 71 customField72: type: - 'null' - boolean description: Custom field 72 customField73: type: - 'null' - boolean description: Custom field 73 customField74: type: - 'null' - boolean description: Custom field 74 customField75: type: - 'null' - boolean description: Custom field 75 UpdateServiceOrder: type: object properties: serviceOrderId: type: - 'null' - string description: Id of service order to update (Required). contact: description: Contact information $ref: '#/components/schemas/ContactInfo' billingAddress: description: Billing address information $ref: '#/components/schemas/Address' siteAddress: description: Site address information $ref: '#/components/schemas/Address' updateFields: type: - 'null' - array items: $ref: '#/components/schemas/UpdateServiceOrderField' description: List of UpdateFields for the service order. Each UpdateField has a Id and a Value. description: Update Service Order UpdateServiceOrderField: type: object properties: serviceOrderFieldId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: "ServiceOrderFieldId (pass the correct Id for the field you want to update)\r\nService Order Name =\ \ 1, Description = 2, Start Date = 3, End Date = 4, Accounting estimate number = 5, Status = 6, Percent complete\ \ = 7, Notes = 8, Priority = 9,\r\nCustomField1 = 101, CustomField2 = 102, CustomField3 = 103, CustomField4 =\ \ 104, CustomField5 = 105, CustomField6 = 106, CustomField7 = 107, CustomField8 = 108, CustomField9 = 109, CustomField10\ \ = 110,\r\nCustomField11 = 111, CustomField12 = 112, CustomField13 = 113, CustomField14 = 114, CustomField15\ \ = 115, CustomField16 = 116, CustomField17 = 117, CustomField18 = 118, CustomField19 = 119, CustomField20 = 120,\r\ \nCustomField21 = 121, CustomField22 = 122, CustomField23 = 123, CustomField24 = 124" format: uint8 value: type: - 'null' - string description: Value for the service order field. UpdateTask: type: object properties: taskId: type: - 'null' - string description: Id of task to update (Required and must match an existing task id in SI). contact: description: Contact information $ref: '#/components/schemas/ContactInfo' siteAddress: description: Site address information $ref: '#/components/schemas/Address' resources: type: - 'null' - array items: $ref: '#/components/schemas/TaskResource' description: Resources in a task resourcesToDelete: type: - 'null' - array items: $ref: '#/components/schemas/ResourceInfo' description: Resource to delete on task updateFields: type: - 'null' - array items: $ref: '#/components/schemas/UpdateTaskField' description: List of UpdateFields for the task. Each UpdateField has a Id and a Value. UpdateTaskField: type: object properties: taskFieldId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: "TaskFieldId (pass the correct Id for the field you want to update)\r\nTask Name = 1, Description =\ \ 2, Start Date = 3, End Date = 4, Status = 5, Percent complete = 6, Notes = 7, \r\nCustomField1 = 101, CustomField2\ \ = 102, CustomField3 = 103, CustomField4 = 104, CustomField5 = 105, CustomField6 = 106, CustomField7 = 107, CustomField8\ \ = 108, CustomField9 = 109, CustomField10 = 110,\r\nCustomField11 = 111, CustomField12 = 112, CustomField13 =\ \ 113, CustomField14 = 114, CustomField15 = 115, CustomField16 = 116, CustomField17 = 117, CustomField18 = 118,\ \ CustomField19 = 119, CustomField20 = 120,\r\nCustomField21 = 121, CustomField22 = 122, CustomField23 = 123,\ \ CustomField24 = 124" format: uint8 value: type: - 'null' - string description: Value for the task field. UpdateTimeSheet: type: object properties: id: type: - 'null' - string description: Unique Id (Required and must the Id of the SI time sheet to update) date: type: - 'null' - string description: Date format: date-time dateTicks: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string format: int64 resource: type: - 'null' - string description: Resource resourceEmail: type: - 'null' - string description: Resource Email cF1: type: - 'null' - string description: Custom Fields 1 (Text) cF2: type: - 'null' - string description: Custom Fields 2 (Text) cF3: type: - 'null' - string description: Custom Fields 3 (Text) cF4: type: - 'null' - string description: Custom Fields 4 (Text) cF5: type: - 'null' - string description: Custom Fields 5 (Text) cF6: type: - 'null' - boolean description: Custom Fields 6 (boolean) cF7: type: - 'null' - boolean description: Custom Fields 7 (boolean) cF8: type: - 'null' - boolean description: Custom Fields 8 (boolean) cF9: type: - 'null' - boolean description: Custom Fields 9 (boolean) cF10: type: - 'null' - boolean description: Custom Fields 10 (boolean) cF11: type: - 'null' - string description: Custom Fields 11 (DateTime) format: date-time cF12: type: - 'null' - string description: Custom Fields 12 (DateTime) format: date-time cF13: type: - 'null' - string description: Custom Fields 13 (DateTime) format: date-time cF14: type: - 'null' - string description: Custom Fields 14 (DateTime) format: date-time cF15: type: - 'null' - string description: Custom Fields 15 (DateTime) format: date-time cF16: type: - 'null' - string description: Custom Fields 16 (List) cF17: type: - 'null' - string description: Custom Fields 17 (List) cF18: type: - 'null' - string description: Custom Fields 18 (List) cF19: type: - 'null' - string description: Custom Fields 19 (List) cF20: type: - 'null' - string description: Custom Fields 20 (List) cF21: type: - 'null' - string description: Custom Fields 21 (Hyperlink) cF22: type: - 'null' - string description: Custom Fields 22 (Hyperlink) cF23: type: - 'null' - string description: Custom Fields 23 (Hyperlink) cF24: type: - 'null' - string description: Custom Fields 24 (Hyperlink) cF25: type: - 'null' - string description: Custom Fields 25 (Long Text) cF26: type: - 'null' - string description: Custom Fields 26 (Long Text) cF27: type: - 'null' - string description: Custom Fields 27 (Long Text) cF28: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Fields 28 (Number) format: double cF29: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Fields 29 (Number) format: double cF30: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Fields 30 (Number) format: double cF31: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Fields 31 (Number) format: double cF32: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - 'null' - number - string description: Custom Fields 32 (Number) format: double phase: type: - 'null' - string description: Phase laborType: type: - 'null' - string description: Labor Type subLaborType: type: - 'null' - string description: 'Sub-Labor Type: Values can be Install, Miscellaneous, Management, Design' typeId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: 'Type: Duration = 1, Time In/Out = 2 (Required)' format: uint8 duration: pattern: ^-?(?:0|[1-9]\d*)(?:\.\d+)?$ type: - number - string description: Duration in Hours (applicable if TypeId = 1 (Duration)) format: double startTime: type: - 'null' - string description: Start Time (applicable if TypeId = 2 (Time In/Out)) format: date-time endTime: type: - 'null' - string description: End Time (applicable if TypeId = 2 (Time In/Out)) format: date-time billable: type: - 'null' - boolean description: Billable overtime: type: boolean description: Overtime description: type: - 'null' - string description: Description UpdateTimeSheetsRequest: type: object properties: name: type: - 'null' - string description: Name (Optional) updateTimeSheets: type: - 'null' - array items: $ref: '#/components/schemas/UpdateTimeSheet' description: Array of update time sheets UpdateVendor: type: object properties: integrationId: type: - 'null' - string description: Integration Id of vendor to update (Must pass either IntegrationId Or Vendor Number) number: type: - 'null' - string description: Number of vendor to update (Must pass either IntegrationId Or Vendor Number) updateFields: type: - 'null' - array items: $ref: '#/components/schemas/UpdateVendorField' description: List of UpdateFields for the vendor. Each UpdateField has a Id and a Value. siteAddress: description: Vendor Site Address $ref: '#/components/schemas/Address' billingAddress: description: Vendor Billing Address $ref: '#/components/schemas/Address' description: Update Vendor UpdateVendorField: type: object properties: vendorFieldId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: "VendorFieldId (pass the correct Id for the field you want to update)\r\nName = 1, Number = 2, Phone\ \ = 3, Fax = 4, Email = 5, Website = 6, Inactive = 7, IntegrationId = 8, Terms = 9" format: uint8 value: type: - 'null' - string description: Value for the vendor field. date time and decimal should be invariant. Vendor: type: object properties: id: type: - 'null' - string description: Unique Id for the Vendor (must be Guid). Vendor will be created in SI with this Guid and will be used to update Vendor. name: type: - 'null' - string description: Vendor name (Required) number: type: - 'null' - string description: Number integrationId: type: - 'null' - string description: Optional Id provided by the Integration for Vendor. The IntegrationId can be used to update Vendors phone: type: - 'null' - string description: Phone fax: type: - 'null' - string description: Fax email: type: - 'null' - string description: Email webSite: type: - 'null' - string description: Web site terms: type: - 'null' - string description: Terms createdOn: type: string description: Date the Vendor was created (UTC Time) format: date-time updatedOn: type: string description: Date the Vendor was updated (UTC Time) format: date-time updatedBy: type: - 'null' - string description: Vendor Updated By publishedBy: type: - 'null' - string description: Vendor Published By vendorAddresses: type: - 'null' - array items: $ref: '#/components/schemas/VendorAddress' description: Vendor addresses for Vendor vendorContacts: type: - 'null' - array items: $ref: '#/components/schemas/VendorContact' description: Vendor contacts for Vendor description: Vendor object VendorAddress: type: object properties: typeId: pattern: ^-?(?:0|[1-9]\d*)$ type: - integer - string description: Vendor Address Type - must be type 1 = Billing, 2 = Site, 3 = Other format: uint8 name: type: - 'null' - string street1: type: - 'null' - string street2: type: - 'null' - string city: type: - 'null' - string state: type: - 'null' - string postalCode: type: - 'null' - string country: type: - 'null' - string phone: type: - 'null' - string fax: type: - 'null' - string description: Vendor address object VendorContact: type: object properties: firstName: type: - 'null' - string lastName: type: - 'null' - string company: type: - 'null' - string title: type: - 'null' - string email: type: - 'null' - string phone: type: - 'null' - string fax: type: - 'null' - string mobile: type: - 'null' - string street1: type: - 'null' - string street2: type: - 'null' - string city: type: - 'null' - string state: type: - 'null' - string postalCode: type: - 'null' - string country: type: - 'null' - string notes: type: - 'null' - string description: Vendor contact object VendorList: type: object properties: id: type: - 'null' - string description: Unique Id for the Vendor (Required) name: type: - 'null' - string description: Name for the Vendor list (Required) description: type: - 'null' - string description: Vendor list description vendors: type: - 'null' - array items: $ref: '#/components/schemas/Vendor' description: Vendor list. description: Vendor List objects tags: - name: PublishProjects description: Allows an integration to publish or update a project to a SI user. - name: SubscribeProjects description: Allows an integration to subscribe to projects and change orders published by SI users. - name: SubscribePartialProjects description: Allows an integration to subscribe to partial projects published by SI users. - name: PublishTasks description: Allows an integration to publish a task to a SI user. - name: SubscribeTask description: Allows an integration to subscribe to Tasks published by SI users. - name: PublishServiceOrders description: Allows an integration to publish a service order to a SI user. - name: SubscribeServiceOrder description: Allows an integration to subscribe to Service orders published by SI users. - name: SubscribePurchaseOrder description: Allows an integration to subscribe to Purchase orders published by SI users. - name: SubscribeServicePlan description: Allows an integration to subscribe to Service plan published by SI users. - name: PublishTimeSheets description: Allows an integration to publish a time sheet to a SI user. - name: SubscribeTimeSheet description: Allows an integration to subscribe to Time sheets published by SI users. - name: PublishProductCatalogs description: Allows an integration to publish a product catalog to a SI user. - name: SubscribeProductCatalogs description: Allows an integration to subscribe to product catalogs published by SI users. - name: PublishClients description: Allows an integration to update a client list to a SI user. - name: SubscribeClients description: Allows an integration to subscribe to clients published by SI users. - name: Message - name: PublishVendors description: Allows an integration to update a vendor list to a SI user. d