{ "openapi": "3.0.1", "info": { "title": "ERP API v2.1", "description": "Provides a common API surface for accessing ECI ERP products.\n\n\n## ERP Product Support\nThis version of the API is generally supported by:\n\n - Deacom\n - M1\n - JobBOSS²\n\nSupport for some resources varies, so check the *Supported ERPs* section on each resource\nto see if it's supported before using it.\n\nThe API user account used to access the ERP API determines which ERP Product, Customer, \nand any specific database (Instance) of that ERP that will be accessed. Depending on the product,\nthe actual ERP database could be a cloud hosted ERP or on premises install, therefore, performance\nof the API may vary dramatically.\n\nThe [user-info endpoint](#/Account/get_api_v1_user_info) in this API will provide basic information \nabout the user account and company being accessed, such as the companyId and product. \nIt should be noted that the **CompanyID** does not uniquely identify the instance being accessed via the API.\n\n## Authentication\nPass an access token in the HTTP Authorization header of each request. For example:\n\n```Authorization: Bearer [token]```\n\nAccess tokens are obtained from the Management API. See the Management API OAuth 2.0 Token endpoint documentation for more information.\n\n\n## Field Selection\nFor resources that support Field Selection, the `fields` parameter can be provided \nwith a comma separated list of fields to return in the result.\n\nFor example:\n\n```/api/v2/organizations?fields=name,country```\n\n\n## Filter Expressions \n\nFor resources that support filtering, filter expressions can be applied as query string parameters in\nthe format ```field_name[operator]=value```\n\nNote, for simple equality, you can omit the operator and specify fieldname=value. e.g. ```?firstName=Jane```\n\n### Operators\n\n- [eq] Equal to the given value.\n- [ne] Not Equal to the given value.\n- [gte] Greater than or equal to the given value.\n- [lte] Less than or equal to the given value.\n- [gt] Greater than the given value.\n- [lt] Less than the given value.\n- [in] Is in a list of pipe separated values.\n- [notin] Is not in a list of pipe separated values.\n\n\n## Sort Expressions\n\nFor resources that support sorting, the sort expression is specified by adding the ```sort``` query string parameter, with a comma separated list of expressions as its value,\neach expression having an optional prefix of + or - to indicate ascending or descending order.\n\nFor example:\n```\n?sort=firstname\n?sort=lastname,firstname\n?sort=-create_date\n```\n\n\n## Paging Parameters\n\nThe parameters ```take``` and ```skip``` can be provided separately but can be combined to implement server-side paging of results. \nSee the documentation for take and skip on each resource.\n\nFor example:\n```\n?take=100\n?take=100&skip=200\n```\n\n\n## Count Parameter\n\nThe parameter ```count``` may be provided to change the data retrieval behavior.\n\nThe value of `0` returns the filtered, expanded, and paginated data in the `data` property of the response. The `count` property always contains the number of records in `data`. This is the default behavior when the `count` parameter is not provided.\n\nThe value of `1` returns an empty array in the `data` property and the total count of matching source records in the `count` property, applying any requested filters but ignoring any requested paging parameters.\n\nThe value of `2` returns both the `data` records, paginated if requested, and the `count` value with the total number of records in the source, ignoring pagination.\n\n```\n0 - Data Only\n1 - Total Count Only\n2 - Data and Total Count\n```\n\n## Expansions\n\nSome data sources have relationships that can be expanded. The list of supported\nexpansions is located in the documentation for each resource below.\n\nAn expansion expression is in the form:\n\n```expand=relationship_name(fields_expression)```\n\nfields_expression is optional.\n\nFor example, to expand the timecard for a timecard line\n\n```api/v1/view/timecardlines?expand=timecard```\n\nA resulting individual record would look like:\n\n```json\n{\n \"timecardID\": 5,\n \"timecard\": {\n \"timecardID\": 5,\n \"employeeID\": \"GROSE\",\n \"shiftID\": 1,\n \"timecardDate\": \"2000-11-06T00:00:00\",\n \"uniqueID\": \"389fcb16-8740-467f-9273-9c383f1472c9\",\n \"rowVersion\": 27569\n }\n}\n```\n\nTo select only specific fields from an expansion, use an inner fields expression.\n\n```api/v1/view/timecardlines?expand=timecard(fields=uniqueid,employeeID)```\n\nAnd the resulting record would look like:\n```json\n{\n \"timecardID\": 5,\n \"timecard\": {\n \"employeeID\": \"GROSE\",\n \"uniqueID\": \"389fcb16-8740-467f-9273-9c383f1472c9\"\n }\n}\n```\n\nExpansions can also be nested.\n\n```api/v1/view/timecardlines?expand=timecard(expand=employee)```\n\n\n## ConvertToUTC\nThe time zone in which Date/Time values are represented varies by ERP\nand some times data source. Pass the ConvertToUTC parameter\nwith a value of `yes` to indicate you want supported \ndate/time field values converted to UTC. \n\n```api/v1/view/timecardlines?ConvertToUTC=yes```\n\nSee resource specific documentation for which fields are supported.\n\n## Common Attributes\n### uniqueID\n\nThe ```uniqueID``` attribute, when present, uniquely identifies a record in the source system.\nThis identifier may not be globally unique. It is only guaranteed to be unique for the same resource\nand same Company account.\n\nIn general, the ERPs use the following data types in the uniqueID field:\n\n- Macola: GUID\n- M1: GUID\n- JobBOSS²: Int32\n\n### rowVersion\n\nThe value of the rowVersion attribute is a 64bit signed integer. This value can be used to query for \nnew or modified records in most resources. New and updated records will always receive a value higher than the\nrowVersion of any other record in the source data. There may be some variations in the implementation of\nthis attribute across ERP products.\n\n## Tracing\n\nThis API supports [W3C Trace Context](https://www.w3.org/TR/trace-context/). TraceIDs will be\ngenerated for each request and returned in each response in a *traceid* header. You should\ncapture this value in any responses and consider logging it as part of any integration\nbeing built. \n\nWhen reporting problems with this API, the *traceid* in the response is the single most important piece\nof information you can provide.\n\n```\ntraceid: 00-e352fa809e1a5b47ba4d88f8182b36f4-44902b415c593c4f-00\n```\n\nIn addition, the traceid value is provided in the body of error responses.\n\n```json\n{\n \"type\": \"https://tools.ietf.org/html/rfc7231#section-6.5.4\",\n \"title\": \"Not Found\",\n \"status\": 404,\n \"traceId\": \"00-c2857fd044158e41bf73349e95208f1e-9476acc2107e274d-00\"\n}\n```\n\nA caller can also provide their own W3C Trace Context compliant trace id\nvia the ```traceparent``` heeder in a request.\n\n```\ntraceparent: 00-0af7651916cd43dd8448eb211c80319c-b7ad6b7169203331-01\n```\n\n## Error Responses\n\nError responses will typically be in in [RFC7807](https://datatracker.ietf.org/doc/html/rfc7807) \n\"Problem details\" format as show below:\n\n### A sample 404 Not Found\n```json\n{\n \"type\": \"https://tools.ietf.org/html/rfc7231#section-6.5.4\",\n \"title\": \"Not Found\",\n \"status\": 404,\n \"traceId\": \"00-c2857fd044158e41bf73349e95208f1e-9476acc2107e274d-00\"\n}\n```\n\n### A sample 500 Internal Server Error\n```json\n{\n \"type\": \"https://tools.ietf.org/html/rfc7231#section-6.6.1\",\n \"title\": \"An error occured while processing your request.\",\n \"status\": 500,\n \"traceId\": \"00-fd1c6ec035a01943bec2ffabf2f1d6e2-9601a3cae715e143-00\"\n}\n```\n\n## Response Headers\n\n- **traceid:** The W3C Trace Context (see above)\n- **erp-company-id**: A value identifying the ERP Company where the data in the response originated.\n- **erp-instance-id**: A value indicating the database instance being accessed. Note this value is presently not immutable, and may change periodically.\n- **cdc-request-id**: For requests that were executed via a Cognytics Data Connector request, this provides the CDC Request ID\n\n## Management Console\nUse the Integration Engine Management Console to configure and monitor access to this API.\n\n\n## Contact Information\n\nThis API is maintained by the ECI Manufacturing Integration Team.\n", "contact": { "name": "ECI Manufacturing Division Integration Team", "url": "https://www.ecisolutions.com/support/" }, "version": "3.5.585+b1e45fd230" }, "servers": [ { "url": "https://api-erp.integrations.ecimanufacturing.com:443", "description": "Production" } ], "paths": { "/api/v2.1/user-info": { "get": { "tags": [ "Account" ], "summary": "Gets information about the current user accessing the API.", "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/UserInfoResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/UserInfoResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/UserInfoResponse" } } } } } } }, "/api/v2.1/contacts": { "post": { "tags": [ "Contact" ], "summary": "Create a new Contact in the ERP system.", "description": "## Supported ERPs\n - JobBOSS²\n", "requestBody": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ContactCreateModel" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ContactCreateModel" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/ContactCreateModel" } } } }, "responses": { "201": { "description": "Created" } } }, "get": { "tags": [ "Contact" ], "summary": "Get a list of Contacts from the ERP system that match the given filters.", "description": "Gets a list of Contact.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nuniqueID|Yes|Yes|M1, JobBOSS², Macola\nrowVersion|Yes|Yes|M1, JobBOSS², Macola\ncontactID|Yes|Yes|M1, JobBOSS², Macola\nname|Yes|Yes|M1, JobBOSS², Macola\norganizationID|Yes|Yes|M1, JobBOSS², Macola\norganizationTypes|Yes|Yes|JobBOSS²\nphoneNumber|Yes|Yes|M1, JobBOSS², Macola\nemailAddress|Yes|Yes|M1, JobBOSS², Macola\nisActive|Yes|Yes|M1, JobBOSS², Macola\ncomments|Yes|Yes|JobBOSS²\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "contactID[eq]": "abc123", "name[eq]": "abc123", "organizationID[eq]": "abc123", "organizationTypes[gte]": 123, "phoneNumber[eq]": "abc123", "emailAddress[eq]": "abc123", "isActive[eq]": true, "comments[eq]": "abc123" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\norganization|Organizations|The organization to which the Contact belongs.\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ContactListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ContactListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ContactListResponse" } } } } } } }, "/api/v2.1/contacts/{id}": { "get": { "tags": [ "Contact" ], "summary": "Get an Contact from the ERP system that matches the given unique ID.", "description": "Gets a Contact by unique ID.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n## Features by Field\nField |Supported ERPs\n------------|------------\nuniqueID||M1, JobBOSS², Macola\nrowVersion||M1, JobBOSS², Macola\ncontactID||M1, JobBOSS², Macola\nname||M1, JobBOSS², Macola\norganizationID||M1, JobBOSS², Macola\norganizationTypes||JobBOSS²\nphoneNumber||M1, JobBOSS², Macola\nemailAddress||M1, JobBOSS², Macola\nisActive||M1, JobBOSS², Macola\ncomments||JobBOSS²\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the contact", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/Contact" } }, "application/json": { "schema": { "$ref": "#/components/schemas/Contact" } }, "text/json": { "schema": { "$ref": "#/components/schemas/Contact" } } } } } } }, "/api/v2.1/departments": { "get": { "tags": [ "Department" ], "summary": "Get a list of Employees from the ERP system that match the given filters.", "description": "Gets a list of Department.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ndeptID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nshortDesc|Yes|Yes|M1, JobBOSS², Macola, Deacom\nuniqueID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Macola, Deacom\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "deptID[eq]": "abc123", "shortDesc[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/DepartmentListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/DepartmentListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/DepartmentListResponse" } } } } } } }, "/api/v2.1/departments/{id}": { "get": { "tags": [ "Department" ], "summary": "Get a Department from the ERP system that matches the given unique ID.", "description": "Gets a Department by unique ID.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Features by Field\nField |Supported ERPs\n------------|------------\ndeptID||M1, JobBOSS², Macola, Deacom\nshortDesc||M1, JobBOSS², Macola, Deacom\nuniqueID||M1, JobBOSS², Macola, Deacom\nrowVersion||M1, JobBOSS², Macola, Deacom\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the Department", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/Department" } }, "application/json": { "schema": { "$ref": "#/components/schemas/Department" } }, "text/json": { "schema": { "$ref": "#/components/schemas/Department" } } } } } } }, "/api/v2.1/employees": { "get": { "tags": [ "Employee" ], "summary": "Get a list of Employees from the ERP system that match the given filters.", "description": "Gets a list of Employee.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nemployeeID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nfirstName|Yes|Yes|M1, JobBOSS², Macola, Deacom\nlastName|Yes|Yes|M1, JobBOSS², Macola, Deacom\ntitle|Yes|Yes|M1, JobBOSS², Macola, Deacom\nsupervisorEmployeeID|Yes|Yes|M1, JobBOSS², Macola, Deacom\npayRate|Yes|Yes|M1, JobBOSS², Macola, Deacom\ndeptID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nshiftID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nisActive|Yes|Yes|JobBOSS², Deacom\nuniqueID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Macola, Deacom\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "employeeID[eq]": "abc123", "firstName[eq]": "abc123", "lastName[eq]": "abc123", "title[eq]": "abc123", "supervisorEmployeeID[eq]": "abc123", "payRate[gte]": 123, "deptID[eq]": "abc123", "shiftID[eq]": "abc123", "isActive[eq]": true, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/EmployeeListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/EmployeeListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/EmployeeListResponse" } } } } } } }, "/api/v2.1/employees/{id}": { "get": { "tags": [ "Employee" ], "summary": "Get an Employee from the ERP system that matches the given unique ID.", "description": "Gets a Employee by unique ID.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Features by Field\nField |Supported ERPs\n------------|------------\nemployeeID||M1, JobBOSS², Macola, Deacom\nfirstName||M1, JobBOSS², Macola, Deacom\nlastName||M1, JobBOSS², Macola, Deacom\ntitle||M1, JobBOSS², Macola, Deacom\nsupervisorEmployeeID||M1, JobBOSS², Macola, Deacom\npayRate||M1, JobBOSS², Macola, Deacom\ndeptID||M1, JobBOSS², Macola, Deacom\nshiftID||M1, JobBOSS², Macola, Deacom\nisActive||JobBOSS², Deacom\nuniqueID||M1, JobBOSS², Macola, Deacom\nrowVersion||M1, JobBOSS², Macola, Deacom\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the Employee", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/Employee" } }, "application/json": { "schema": { "$ref": "#/components/schemas/Employee" } }, "text/json": { "schema": { "$ref": "#/components/schemas/Employee" } } } } } } }, "/api/v2.1/gl-codes": { "get": { "tags": [ "GLCode" ], "summary": "Get a list of GLCodes from the ERP system that match the given filters.", "description": "Gets a list of GLCode.\n\n## Supported ERPs\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ndescription|No|Yes|JobBOSS²\nglCodeID|Yes|Yes|JobBOSS²\nrowVersion|Yes|Yes|JobBOSS²\nuniqueID|Yes|Yes|JobBOSS²\nisActive|Yes|Yes|JobBOSS²\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "glCodeID[eq]": "abc123", "rowVersion[gte]": 123, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "isActive[eq]": true } } } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/GLCodeListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/GLCodeListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/GLCodeListResponse" } } } } } } }, "/api/v2.1/jobs": { "get": { "tags": [ "Job" ], "summary": "Get a list of Jobs from the ERP system that match the given filters.", "description": "Gets a list of Job.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\njobID|Yes|Yes|M1, JobBOSS², Macola, Deacom\ncustomerID|No|Yes|M1, JobBOSS², Macola, Deacom\npartID|Yes|Yes|M1, JobBOSS², Macola, Deacom\npartRevisionID|Yes|Yes|M1, JobBOSS², Macola, Deacom\norderQty|No|Yes|M1, JobBOSS², Macola, Deacom\nprodQty|No|Yes|M1, JobBOSS², Macola, Deacom\nschedStartDate|No|Yes|M1, JobBOSS², Macola, Deacom\nschedEndDate|No|Yes|M1, JobBOSS², Macola, Deacom\nestLeadTime|No|Yes|M1, JobBOSS², Macola, Deacom\nactStartDate|No|Yes|M1, JobBOSS², Macola, Deacom\nactEndDate|No|Yes|M1, JobBOSS², Macola, Deacom\ndueDate|No|Yes|M1, JobBOSS², Macola, Deacom\nstatus|Yes|Yes|M1, JobBOSS², Macola, Deacom\nuniqueID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Macola, Deacom\njobCost|No|Yes|M1, JobBOSS², Macola, Deacom\njobCostForeign|No|Yes|M1, JobBOSS², Macola, Deacom\nplantID|Yes|Yes|M1, JobBOSS², Macola, Deacom\njobDate|Yes|Yes|M1, JobBOSS², Macola, Deacom\npartWarehouseID|Yes|Yes|M1, JobBOSS², Macola, Deacom\npartBinID|Yes|Yes|M1, JobBOSS², Macola, Deacom\npartShortDesc|No|Yes|M1, JobBOSS², Macola, Deacom\ninventoryQty|No|Yes|M1, JobBOSS², Macola, Deacom\nisPlanningComplete|Yes|Yes|M1, JobBOSS², Macola, Deacom\nisScheduleComplete|Yes|Yes|M1, JobBOSS², Macola, Deacom\nisReleasedToFloor|Yes|Yes|M1, JobBOSS², Macola, Deacom\nisOnHold|Yes|Yes|M1, JobBOSS², Macola, Deacom\ncompletedDate|No|Yes|M1, JobBOSS², Macola, Deacom\nquantityCompleted|No|Yes|M1, JobBOSS², Macola, Deacom\nquantityShipped|No|Yes|M1, JobBOSS², Macola, Deacom\nquantityRcvdToInventory|No|Yes|M1, JobBOSS², Macola, Deacom\nprojectID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nprojectAreaID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nisClosed|Yes|Yes|M1, JobBOSS², Macola, Deacom\nclosedDate|Yes|Yes|M1, JobBOSS², Macola, Deacom\njobPriorityID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nunitOfMeasure|No|Yes|M1, JobBOSS², Macola, Deacom\nplannerEmployeeID|No|Yes|M1, JobBOSS², Macola, Deacom\nparentJobID|Yes|Yes|JobBOSS²\nshortDesc|No|Yes|Deacom\nchildJobID|No|Yes|Deacom\njobType|Yes|Yes|Deacom\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "jobID[eq]": "abc123", "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "status[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "plantID[eq]": "abc123", "jobDate[gte]": "2020-09-25T04:03:00.0000000", "partWarehouseID[eq]": "abc123", "partBinID[eq]": "abc123", "isPlanningComplete[eq]": true, "isScheduleComplete[eq]": true, "isReleasedToFloor[eq]": true, "isOnHold[eq]": true, "projectID[eq]": "abc123", "projectAreaID[eq]": "abc123", "isClosed[eq]": true, "closedDate[gte]": "2020-09-25T04:03:00.0000000", "jobPriorityID[eq]": "abc123", "parentJobID[eq]": "abc123", "jobType[eq]": "abc123" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\njobOperations|JobOperations[]|\n", "schema": { "type": "string" } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/JobListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/JobListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/JobListResponse" } } } } } } }, "/api/v2.1/jobs/{id}": { "get": { "tags": [ "Job" ], "summary": "Get a Job from the ERP system that matches the given unique ID.", "description": "Gets a Job by unique ID.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Features by Field\nField |Supported ERPs\n------------|------------\njobID||M1, JobBOSS², Macola, Deacom\ncustomerID||M1, JobBOSS², Macola, Deacom\npartID||M1, JobBOSS², Macola, Deacom\npartRevisionID||M1, JobBOSS², Macola, Deacom\norderQty||M1, JobBOSS², Macola, Deacom\nprodQty||M1, JobBOSS², Macola, Deacom\nschedStartDate||M1, JobBOSS², Macola, Deacom\nschedEndDate||M1, JobBOSS², Macola, Deacom\nestLeadTime||M1, JobBOSS², Macola, Deacom\nactStartDate||M1, JobBOSS², Macola, Deacom\nactEndDate||M1, JobBOSS², Macola, Deacom\ndueDate||M1, JobBOSS², Macola, Deacom\nstatus||M1, JobBOSS², Macola, Deacom\nuniqueID||M1, JobBOSS², Macola, Deacom\nrowVersion||M1, JobBOSS², Macola, Deacom\njobCost||M1, JobBOSS², Macola, Deacom\njobCostForeign||M1, JobBOSS², Macola, Deacom\nplantID||M1, JobBOSS², Macola, Deacom\njobDate||M1, JobBOSS², Macola, Deacom\npartWarehouseID||M1, JobBOSS², Macola, Deacom\npartBinID||M1, JobBOSS², Macola, Deacom\npartShortDesc||M1, JobBOSS², Macola, Deacom\ninventoryQty||M1, JobBOSS², Macola, Deacom\nisPlanningComplete||M1, JobBOSS², Macola, Deacom\nisScheduleComplete||M1, JobBOSS², Macola, Deacom\nisReleasedToFloor||M1, JobBOSS², Macola, Deacom\nisOnHold||M1, JobBOSS², Macola, Deacom\ncompletedDate||M1, JobBOSS², Macola, Deacom\nquantityCompleted||M1, JobBOSS², Macola, Deacom\nquantityShipped||M1, JobBOSS², Macola, Deacom\nquantityRcvdToInventory||M1, JobBOSS², Macola, Deacom\nprojectID||M1, JobBOSS², Macola, Deacom\nprojectAreaID||M1, JobBOSS², Macola, Deacom\nisClosed||M1, JobBOSS², Macola, Deacom\nclosedDate||M1, JobBOSS², Macola, Deacom\njobPriorityID||M1, JobBOSS², Macola, Deacom\nunitOfMeasure||M1, JobBOSS², Macola, Deacom\nplannerEmployeeID||M1, JobBOSS², Macola, Deacom\nparentJobID||JobBOSS²\nshortDesc||Deacom\nchildJobID||Deacom\njobType||Deacom\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the job", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/Job" } }, "application/json": { "schema": { "$ref": "#/components/schemas/Job" } }, "text/json": { "schema": { "$ref": "#/components/schemas/Job" } } } } } }, "patch": { "tags": [ "Job" ], "summary": "Update a job and its job operations in the ERP system.", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the job", "required": true, "schema": { "type": "string" } } ], "requestBody": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/JobUpdateModel" } }, "text/json": { "schema": { "$ref": "#/components/schemas/JobUpdateModel" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/JobUpdateModel" } } } }, "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/Job" } }, "application/json": { "schema": { "$ref": "#/components/schemas/Job" } }, "text/json": { "schema": { "$ref": "#/components/schemas/Job" } } } } } } }, "/api/v2.1/jobs/{uniqueID}/part-production": { "post": { "tags": [ "Job" ], "summary": "Register parts produced for a job.", "description": "## Supported ERPs\n - Deacom\n", "parameters": [ { "name": "uniqueID", "in": "path", "description": "The ID of the job", "required": true, "schema": { "type": "string" } } ], "requestBody": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/JobPartProduction" } }, "text/json": { "schema": { "$ref": "#/components/schemas/JobPartProduction" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/JobPartProduction" } } } }, "responses": { "200": { "description": "Success" } } } }, "/api/v2.1/job-assemblies": { "get": { "tags": [ "JobAssembly" ], "summary": "Get a list of Job Assemblies from the ERP system that match the given filters.", "description": "Gets a list of JobAssembly.\n\n## Supported ERPs\n - M1\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\njobID|Yes|Yes|M1, Deacom\njobAssemblyID|Yes|Yes|M1, Deacom\nlevel|No|Yes|M1, Deacom\nparentAssemblyID|No|Yes|M1, Deacom\nsourceMethodID|No|Yes|M1, Deacom\nsourceRevisionID|No|Yes|M1, Deacom\npartID|Yes|Yes|M1, Deacom\npartRevisionID|Yes|Yes|M1, Deacom\npartShortDesc|No|Yes|M1, Deacom\nquantityPerParent|No|Yes|M1, Deacom\norderQty|No|Yes|M1, Deacom\ninventoryQty|No|Yes|M1, Deacom\nscrapQty|No|Yes|M1, Deacom\nquantityToInspect|No|Yes|M1, Deacom\nquantityRcvdToInv|No|Yes|M1, Deacom\nproductionQty|No|Yes|M1, Deacom\nquantityToMake|No|Yes|M1, Deacom\nquantityToPull|No|Yes|M1, Deacom\nquantityIssued|No|Yes|M1, Deacom\nquantityCompleted|No|Yes|M1, Deacom\nisProductionComplete|No|Yes|M1, Deacom\ncompletedDate|No|Yes|M1, Deacom\nuniqueID|Yes|Yes|M1, Deacom\nrowVersion|Yes|Yes|M1, Deacom\njobIsClosed|Yes|Yes|M1, Deacom\njobClosedDate|Yes|Yes|M1, Deacom\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "jobID[eq]": "abc123", "jobAssemblyID[eq]": "abc123", "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "jobIsClosed[eq]": true, "jobClosedDate[gte]": "2020-09-25T04:03:00.0000000" } } } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/JobAssemblyListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/JobAssemblyListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/JobAssemblyListResponse" } } } } } } }, "/api/v2.1/job-assemblies/{id}": { "get": { "tags": [ "JobAssembly" ], "summary": "Get a Job Assembly from the ERP system that matches the given unique ID.", "description": "Gets a JobAssembly by unique ID.\n\n## Supported ERPs\n - M1\n - Deacom\n## Features by Field\nField |Supported ERPs\n------------|------------\njobID||M1, Deacom\njobAssemblyID||M1, Deacom\nlevel||M1, Deacom\nparentAssemblyID||M1, Deacom\nsourceMethodID||M1, Deacom\nsourceRevisionID||M1, Deacom\npartID||M1, Deacom\npartRevisionID||M1, Deacom\npartShortDesc||M1, Deacom\nquantityPerParent||M1, Deacom\norderQty||M1, Deacom\ninventoryQty||M1, Deacom\nscrapQty||M1, Deacom\nquantityToInspect||M1, Deacom\nquantityRcvdToInv||M1, Deacom\nproductionQty||M1, Deacom\nquantityToMake||M1, Deacom\nquantityToPull||M1, Deacom\nquantityIssued||M1, Deacom\nquantityCompleted||M1, Deacom\nisProductionComplete||M1, Deacom\ncompletedDate||M1, Deacom\nuniqueID||M1, Deacom\nrowVersion||M1, Deacom\njobIsClosed||M1, Deacom\njobClosedDate||M1, Deacom\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the Job Assembly", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/JobAssembly" } }, "application/json": { "schema": { "$ref": "#/components/schemas/JobAssembly" } }, "text/json": { "schema": { "$ref": "#/components/schemas/JobAssembly" } } } } } } }, "/api/v2.1/job-materials": { "get": { "tags": [ "JobMaterial" ], "summary": "Get a list of Job Materials from the ERP system that match the given filters.", "description": "Gets a list of JobMaterial.\n\n## Supported ERPs\n - JobBOSS²\n - M1\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\njobID|Yes|Yes|JobBOSS², M1, Deacom\njobAssemblyID|Yes|Yes|JobBOSS², M1, Deacom\njobAssemblySeq|No|Yes|M1\nmaterialPartID|Yes|Yes|JobBOSS², M1, Deacom\nmaterialPartRevisionID|Yes|Yes|JobBOSS², M1, Deacom\nestQuantity|No|Yes|JobBOSS², M1, Deacom\nestUnitCost|No|Yes|JobBOSS², M1, Deacom\nunitOfMeasure|No|Yes|JobBOSS², M1, Deacom\nleadTime|No|Yes|JobBOSS², M1, Deacom\nvendorID|Yes|Yes|JobBOSS², M1, Deacom\nuniqueID|Yes|Yes|JobBOSS², M1, Deacom\nrowVersion|Yes|Yes|JobBOSS², M1, Deacom\njobIsClosed|Yes|Yes|JobBOSS², M1, Deacom\njobClosedDate|Yes|Yes|JobBOSS², M1, Deacom\njobType|Yes|Yes|Deacom\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "jobID[eq]": "abc123", "jobAssemblyID[eq]": "abc123", "materialPartID[eq]": "abc123", "materialPartRevisionID[eq]": "abc123", "vendorID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "jobIsClosed[eq]": true, "jobClosedDate[gte]": "2020-09-25T04:03:00.0000000", "jobType[eq]": "abc123" } } } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/JobMaterialListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/JobMaterialListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/JobMaterialListResponse" } } } } } } }, "/api/v2.1/job-materials/{id}": { "get": { "tags": [ "JobMaterial" ], "summary": "Get a Job Material from the ERP system that matches the given unique ID.", "description": "Gets a JobMaterial by unique ID.\n\n## Supported ERPs\n - JobBOSS²\n - M1\n - Deacom\n## Features by Field\nField |Supported ERPs\n------------|------------\njobID||JobBOSS², M1, Deacom\njobAssemblyID||JobBOSS², M1, Deacom\njobAssemblySeq||M1\nmaterialPartID||JobBOSS², M1, Deacom\nmaterialPartRevisionID||JobBOSS², M1, Deacom\nestQuantity||JobBOSS², M1, Deacom\nestUnitCost||JobBOSS², M1, Deacom\nunitOfMeasure||JobBOSS², M1, Deacom\nleadTime||JobBOSS², M1, Deacom\nvendorID||JobBOSS², M1, Deacom\nuniqueID||JobBOSS², M1, Deacom\nrowVersion||JobBOSS², M1, Deacom\njobIsClosed||JobBOSS², M1, Deacom\njobClosedDate||JobBOSS², M1, Deacom\njobType||Deacom\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the job material", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/JobMaterial" } }, "application/json": { "schema": { "$ref": "#/components/schemas/JobMaterial" } }, "text/json": { "schema": { "$ref": "#/components/schemas/JobMaterial" } } } } } } }, "/api/v2.1/job-operations": { "get": { "tags": [ "JobOperation" ], "summary": "Get a list of Job Operations from the ERP system that match the given filters.", "description": "Gets a list of JobOperation.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\njobID|Yes|Yes|M1, JobBOSS², Macola, Deacom\njobAssembly|Yes|Yes|M1, JobBOSS², Macola, Deacom\njobOperationSeq|Yes|Yes|M1, JobBOSS², Macola, Deacom\nstatus|Yes|Yes|M1, JobBOSS², Macola, Deacom\nworkCenterID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nprocessID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nshortDesc|Yes|Yes|M1, JobBOSS², Macola, Deacom\nlongDescText|Yes|Yes|M1, JobBOSS², Macola, Deacom\nlongDescFormatted|No|Yes|M1, JobBOSS², Macola, Deacom\noutsideOperation|Yes|Yes|M1, JobBOSS², Macola, Deacom\npartID|Yes|Yes|M1, JobBOSS², Macola, Deacom\npartRevisionID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nschedStartDate|Yes|Yes|M1, JobBOSS², Macola, Deacom\nschedEndDate|Yes|Yes|M1, JobBOSS², Macola, Deacom\nactStartDate|Yes|Yes|M1, JobBOSS², Macola, Deacom\nactEndDate|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestSetupHours|No|Yes|M1, JobBOSS², Macola, Deacom\nestProdHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestQueueHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestMoveHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestQAHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nactSetupHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nactualProdHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nactQAHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nvendorID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestSetupTimeValue|No|Yes|JobBOSS²\nestSetupTimeUnit|No|Yes|JobBOSS²\nestProdTimeValue|No|Yes|JobBOSS²\nestProdTimeUnit|No|Yes|JobBOSS²\nuniqueID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Macola, Deacom\noperationQty|No|Yes|M1, JobBOSS², Macola, Deacom\nquantityComplete|No|Yes|M1, JobBOSS², Macola, Deacom\nisSetupComplete|No|Yes|M1, JobBOSS², Macola, Deacom\nplantID|No|Yes|M1, JobBOSS², Macola, Deacom\npurchaseOrderID|No|Yes|M1, JobBOSS², Macola, Deacom\nsupplierOrganizationID|No|Yes|M1, JobBOSS², Macola, Deacom\npurchaseLocationID|No|Yes|M1, JobBOSS², Macola, Deacom\nRFQID|No|Yes|M1, JobBOSS², Macola, Deacom\ndefaultEmployeeID|Yes|Yes|JobBOSS²\ndefaultEmployeeID2|Yes|Yes|JobBOSS²\ndefaultEmployeeID3|Yes|Yes|JobBOSS²\nisUnattended|No|Yes|JobBOSS²\njobType|Yes|Yes|Deacom\nsupplierLeadTime|No|Yes|JobBOSS²\njobIsClosed|Yes|Yes|JobBOSS², M1, Deacom\njobClosedDate|Yes|Yes|JobBOSS², M1, Deacom\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "jobID[eq]": "abc123", "jobAssembly[eq]": "abc123", "jobOperationSeq[gte]": 123, "status[eq]": "abc123", "workCenterID[eq]": "abc123", "processID[eq]": "abc123", "shortDesc[eq]": "abc123", "longDescText[eq]": "abc123", "outsideOperation[eq]": "abc123", "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "schedStartDate[gte]": "2020-09-25T04:03:00.0000000", "schedEndDate[gte]": "2020-09-25T04:03:00.0000000", "actStartDate[gte]": "2020-09-25T04:03:00.0000000", "actEndDate[gte]": "2020-09-25T04:03:00.0000000", "estProdHours[gte]": 123, "estQueueHours[gte]": 123, "estMoveHours[gte]": 123, "estQAHours[gte]": 123, "actSetupHours[gte]": 123, "actualProdHours[gte]": 123, "actQAHours[gte]": 123, "vendorID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "defaultEmployeeID[eq]": "abc123", "defaultEmployeeID2[eq]": "abc123", "defaultEmployeeID3[eq]": "abc123", "jobType[eq]": "abc123", "jobIsClosed[eq]": true, "jobClosedDate[gte]": "2020-09-25T04:03:00.0000000" } } } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/JobOperationListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/JobOperationListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/JobOperationListResponse" } } } } } } }, "/api/v2.1/job-operations/{id}": { "get": { "tags": [ "JobOperation" ], "summary": "Get a Job Operation from the ERP system that matches the given unique ID.", "description": "Gets a JobOperation by unique ID.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Features by Field\nField |Supported ERPs\n------------|------------\njobID||M1, JobBOSS², Macola, Deacom\njobAssembly||M1, JobBOSS², Macola, Deacom\njobOperationSeq||M1, JobBOSS², Macola, Deacom\nstatus||M1, JobBOSS², Macola, Deacom\nworkCenterID||M1, JobBOSS², Macola, Deacom\nprocessID||M1, JobBOSS², Macola, Deacom\nshortDesc||M1, JobBOSS², Macola, Deacom\nlongDescText||M1, JobBOSS², Macola, Deacom\nlongDescFormatted||M1, JobBOSS², Macola, Deacom\noutsideOperation||M1, JobBOSS², Macola, Deacom\npartID||M1, JobBOSS², Macola, Deacom\npartRevisionID||M1, JobBOSS², Macola, Deacom\nschedStartDate||M1, JobBOSS², Macola, Deacom\nschedEndDate||M1, JobBOSS², Macola, Deacom\nactStartDate||M1, JobBOSS², Macola, Deacom\nactEndDate||M1, JobBOSS², Macola, Deacom\nestSetupHours||M1, JobBOSS², Macola, Deacom\nestProdHours||M1, JobBOSS², Macola, Deacom\nestQueueHours||M1, JobBOSS², Macola, Deacom\nestMoveHours||M1, JobBOSS², Macola, Deacom\nestQAHours||M1, JobBOSS², Macola, Deacom\nactSetupHours||M1, JobBOSS², Macola, Deacom\nactualProdHours||M1, JobBOSS², Macola, Deacom\nactQAHours||M1, JobBOSS², Macola, Deacom\nvendorID||M1, JobBOSS², Macola, Deacom\nestSetupTimeValue||JobBOSS²\nestSetupTimeUnit||JobBOSS²\nestProdTimeValue||JobBOSS²\nestProdTimeUnit||JobBOSS²\nuniqueID||M1, JobBOSS², Macola, Deacom\nrowVersion||M1, JobBOSS², Macola, Deacom\noperationQty||M1, JobBOSS², Macola, Deacom\nquantityComplete||M1, JobBOSS², Macola, Deacom\nisSetupComplete||M1, JobBOSS², Macola, Deacom\nplantID||M1, JobBOSS², Macola, Deacom\npurchaseOrderID||M1, JobBOSS², Macola, Deacom\nsupplierOrganizationID||M1, JobBOSS², Macola, Deacom\npurchaseLocationID||M1, JobBOSS², Macola, Deacom\nRFQID||M1, JobBOSS², Macola, Deacom\ndefaultEmployeeID||JobBOSS²\ndefaultEmployeeID2||JobBOSS²\ndefaultEmployeeID3||JobBOSS²\nisUnattended||JobBOSS²\njobType||Deacom\nsupplierLeadTime||JobBOSS²\njobIsClosed||JobBOSS², M1, Deacom\njobClosedDate||JobBOSS², M1, Deacom\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the job operation", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/JobOperation" } }, "application/json": { "schema": { "$ref": "#/components/schemas/JobOperation" } }, "text/json": { "schema": { "$ref": "#/components/schemas/JobOperation" } } } } } }, "patch": { "tags": [ "JobOperation" ], "summary": "Update a job operation in the ERP system.", "parameters": [ { "name": "id", "in": "path", "description": "joboperationid", "required": true, "schema": { "type": "string" } } ], "requestBody": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/JobOperationUpdateModel" } }, "text/json": { "schema": { "$ref": "#/components/schemas/JobOperationUpdateModel" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/JobOperationUpdateModel" } } } }, "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/JobOperation" } }, "application/json": { "schema": { "$ref": "#/components/schemas/JobOperation" } }, "text/json": { "schema": { "$ref": "#/components/schemas/JobOperation" } } } } } } }, "/api/v2.1/locations": { "post": { "tags": [ "Location" ], "summary": "Create a new Location in the ERP system.", "description": "## Supported ERPs\n - JobBOSS²\n", "requestBody": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/LocationCreateModel" } }, "text/json": { "schema": { "$ref": "#/components/schemas/LocationCreateModel" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/LocationCreateModel" } } } }, "responses": { "201": { "description": "Created" } } }, "get": { "tags": [ "Location" ], "summary": "Get a list of Locations from the ERP system that match the given filters.", "description": "Gets a list of Location.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nuniqueID|Yes|Yes|M1, JobBOSS², Macola\nrowVersion|Yes|Yes|M1, JobBOSS², Macola\nlocationID|Yes|Yes|M1, JobBOSS², Macola\nname|Yes|Yes|M1, JobBOSS², Macola\norganizationID|Yes|Yes|M1, JobBOSS², Macola\norganizationTypes|Yes|Yes|JobBOSS²\naddressLine1|No|Yes|M1, JobBOSS², Macola\naddressLine2|No|Yes|M1, JobBOSS², Macola\naddressLine3|No|Yes|M1, JobBOSS², Macola\ncity|Yes|Yes|M1, JobBOSS², Macola\ncounty|Yes|Yes|M1, JobBOSS², Macola\ncountry|Yes|Yes|M1, JobBOSS², Macola\npostalCode|Yes|Yes|M1, JobBOSS², Macola\nstate|Yes|Yes|M1, JobBOSS², Macola\nisActive|Yes|Yes|M1, JobBOSS², Macola\nlocationTypes|Yes|Yes|JobBOSS²\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "locationID[eq]": "abc123", "name[eq]": "abc123", "organizationID[eq]": "abc123", "organizationTypes[gte]": 123, "city[eq]": "abc123", "county[eq]": "abc123", "country[eq]": "abc123", "postalCode[eq]": "abc123", "state[eq]": "abc123", "isActive[eq]": true, "locationTypes[gte]": 123 } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\norganization|Organizations|The organization to which the Location belongs.\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/LocationListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/LocationListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/LocationListResponse" } } } } } } }, "/api/v2.1/locations/{id}": { "get": { "tags": [ "Location" ], "summary": "Get a Location from the ERP system that matches the given unique ID.", "description": "Gets a Location by unique ID.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n## Features by Field\nField |Supported ERPs\n------------|------------\nuniqueID||M1, JobBOSS², Macola\nrowVersion||M1, JobBOSS², Macola\nlocationID||M1, JobBOSS², Macola\nname||M1, JobBOSS², Macola\norganizationID||M1, JobBOSS², Macola\norganizationTypes||JobBOSS²\naddressLine1||M1, JobBOSS², Macola\naddressLine2||M1, JobBOSS², Macola\naddressLine3||M1, JobBOSS², Macola\ncity||M1, JobBOSS², Macola\ncounty||M1, JobBOSS², Macola\ncountry||M1, JobBOSS², Macola\npostalCode||M1, JobBOSS², Macola\nstate||M1, JobBOSS², Macola\nisActive||M1, JobBOSS², Macola\nlocationTypes||JobBOSS²\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the location", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/Location" } }, "application/json": { "schema": { "$ref": "#/components/schemas/Location" } }, "text/json": { "schema": { "$ref": "#/components/schemas/Location" } } } } } } }, "/api/v2.1/organizations": { "post": { "tags": [ "Organization" ], "summary": "Create a new Organization in the ERP system.", "description": "## Supported ERPs\n - JobBOSS²\n", "requestBody": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/OrganizationCreateModel" } }, "text/json": { "schema": { "$ref": "#/components/schemas/OrganizationCreateModel" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/OrganizationCreateModel" } } } }, "responses": { "201": { "description": "Created" } } }, "get": { "tags": [ "Organization" ], "summary": "Get a list of Organizations from the ERP system that match the given filters.", "description": "Gets a list of Organization.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nuniqueID|Yes|Yes|M1, JobBOSS², Macola\nrowVersion|Yes|Yes|M1, JobBOSS², Macola\nname|Yes|Yes|M1, JobBOSS², Macola\norganizationID|Yes|Yes|M1, JobBOSS², Macola\ncountry|Yes|Yes|M1, JobBOSS², Macola\nisActive|Yes|Yes|M1, JobBOSS², Macola\norganizationTypes|Yes|Yes|JobBOSS², Macola\nphoneNumber|Yes|Yes|JobBOSS²\ncustomerPaymentTermID|Yes|Yes|JobBOSS²\ncustomerTaxCodeID|Yes|Yes|JobBOSS²\nsupplierPaymentTermID|Yes|Yes|JobBOSS²\nsupplierTaxCodeID|Yes|Yes|JobBOSS²\ncurrencyCode|Yes|Yes|JobBOSS²\nwebsiteUrl|No|Yes|JobBOSS²\ncomments|No|Yes|JobBOSS²\nsalesAccountID|Yes|Yes|JobBOSS²\nleadTimeDays|No|Yes|JobBOSS²\nminimumOrderAmount|No|Yes|JobBOSS²\ncustomerStatus|Yes|Yes|M1\nsupplierStatus|Yes|Yes|M1\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "name[eq]": "abc123", "organizationID[eq]": "abc123", "country[eq]": "abc123", "isActive[eq]": true, "organizationTypes[gte]": 123, "phoneNumber[eq]": "abc123", "customerPaymentTermID[eq]": "abc123", "customerTaxCodeID[eq]": "abc123", "supplierPaymentTermID[eq]": "abc123", "supplierTaxCodeID[eq]": "abc123", "currencyCode[eq]": "abc123", "salesAccountID[eq]": "abc123", "customerStatus[gte]": 123, "supplierStatus[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/OrganizationListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/OrganizationListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/OrganizationListResponse" } } } } } } }, "/api/v2.1/organizations/{id}": { "get": { "tags": [ "Organization" ], "summary": "Get an Organization from the ERP system that matches the given unique ID.", "description": "Gets a Organization by unique ID.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n## Features by Field\nField |Supported ERPs\n------------|------------\nuniqueID||M1, JobBOSS², Macola\nrowVersion||M1, JobBOSS², Macola\nname||M1, JobBOSS², Macola\norganizationID||M1, JobBOSS², Macola\ncountry||M1, JobBOSS², Macola\nisActive||M1, JobBOSS², Macola\norganizationTypes||JobBOSS², Macola\nphoneNumber||JobBOSS²\ncustomerPaymentTermID||JobBOSS²\ncustomerTaxCodeID||JobBOSS²\nsupplierPaymentTermID||JobBOSS²\nsupplierTaxCodeID||JobBOSS²\ncurrencyCode||JobBOSS²\nwebsiteUrl||JobBOSS²\ncomments||JobBOSS²\nsalesAccountID||JobBOSS²\nleadTimeDays||JobBOSS²\nminimumOrderAmount||JobBOSS²\ncustomerStatus||M1\nsupplierStatus||M1\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the organization", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/Organization" } }, "application/json": { "schema": { "$ref": "#/components/schemas/Organization" } }, "text/json": { "schema": { "$ref": "#/components/schemas/Organization" } } } } } } }, "/api/v2.1/organization-parts": { "get": { "tags": [ "OrganizationPart" ], "summary": "Get a list of OrganizationParts from the ERP system that match the given filters.", "description": "Gets a list of OrganizationPart.\n\n## Supported ERPs\n - JobBOSS²\n - M1\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartID|Yes|Yes|JobBOSS², M1\npartRevisionID|Yes|Yes|JobBOSS², M1\norganizationID|Yes|Yes|JobBOSS², M1\norganizationTypes|Yes|Yes|JobBOSS²\norganizationPartID|Yes|Yes|JobBOSS², M1\norganizationShortDesc|No|Yes|JobBOSS², M1\nuniqueID|Yes|Yes|JobBOSS², M1\nrowVersion|Yes|Yes|JobBOSS², M1\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "organizationID[eq]": "abc123", "organizationTypes[gte]": 123, "organizationPartID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/OrganizationPartListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/OrganizationPartListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/OrganizationPartListResponse" } } } } } } }, "/api/v2.1/organization-parts/{id}": { "get": { "tags": [ "OrganizationPart" ], "summary": "Get an Organization Part from the ERP system that matches the given unique ID.", "description": "Gets a OrganizationPart by unique ID.\n\n## Supported ERPs\n - JobBOSS²\n - M1\n## Features by Field\nField |Supported ERPs\n------------|------------\npartID||JobBOSS², M1\npartRevisionID||JobBOSS², M1\norganizationID||JobBOSS², M1\norganizationTypes||JobBOSS²\norganizationPartID||JobBOSS², M1\norganizationShortDesc||JobBOSS², M1\nuniqueID||JobBOSS², M1\nrowVersion||JobBOSS², M1\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the organization part", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/OrganizationPart" } }, "application/json": { "schema": { "$ref": "#/components/schemas/OrganizationPart" } }, "text/json": { "schema": { "$ref": "#/components/schemas/OrganizationPart" } } } } } } }, "/api/v2.1/parts": { "post": { "tags": [ "Part" ], "summary": "Create a new Part in the ERP system.", "description": "## Supported ERPs\n - JobBOSS²\n", "requestBody": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PartCreateModel" } }, "text/json": { "schema": { "$ref": "#/components/schemas/PartCreateModel" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/PartCreateModel" } } } }, "responses": { "201": { "description": "Created" } } }, "get": { "tags": [ "Part" ], "summary": "Get a list of Parts from the ERP system that match the given filters.", "description": "Gets a list of Part.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartClassID|No|Yes|M1, JobBOSS², Deacom\npartGroupID|Yes|Yes|M1, JobBOSS², Deacom\ncycleCodeID|No|Yes|M1, JobBOSS², Deacom\npartType|Yes|Yes|M1, JobBOSS², Deacom\npartID|Yes|Yes|M1, JobBOSS², Deacom\nalternatePartID|No|Yes|JobBOSS²\nuniqueID|Yes|Yes|M1, JobBOSS², Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Deacom\nisActive|Yes|Yes|M1, JobBOSS², Deacom\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partGroupID[eq]": "abc123", "partType[gte]": 123, "partID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "isActive[eq]": true } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\npartClass|PartClasses|\npartGroup|PartGroups|\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/PartListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/PartListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/PartListResponse" } } } } } } }, "/api/v2.1/parts/{id}": { "get": { "tags": [ "Part" ], "summary": "Get a Part from the ERP system that match the given filters.", "description": "Gets a Part by unique ID.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Deacom\n## Features by Field\nField |Supported ERPs\n------------|------------\npartClassID||M1, JobBOSS², Deacom\npartGroupID||M1, JobBOSS², Deacom\ncycleCodeID||M1, JobBOSS², Deacom\npartType||M1, JobBOSS², Deacom\npartID||M1, JobBOSS², Deacom\nalternatePartID||JobBOSS²\nuniqueID||M1, JobBOSS², Deacom\nrowVersion||M1, JobBOSS², Deacom\nisActive||M1, JobBOSS², Deacom\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the Part", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/Part" } }, "application/json": { "schema": { "$ref": "#/components/schemas/Part" } }, "text/json": { "schema": { "$ref": "#/components/schemas/Part" } } } } } } }, "/api/v2.1/part-bins": { "get": { "tags": [ "PartBins" ], "summary": "Get a list of Part-Bins from the ERP system that match the given filters.", "description": "Gets a list of PartBin.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartRevisionID|Yes|Yes|M1, JobBOSS², Deacom\nwarehouseID|Yes|Yes|M1, JobBOSS², Deacom\npartBinID|Yes|Yes|M1, JobBOSS², Deacom\nquantityOnHand|No|Yes|M1, JobBOSS², Deacom\nquantityAllocated|No|Yes|M1, JobBOSS², Deacom\nquantityOnOrderSales|No|Yes|M1, JobBOSS², Deacom\nquantityOnOrderPurchases|No|Yes|M1, JobBOSS², Deacom\nquantityToInspect|No|Yes|M1, JobBOSS², Deacom\nquantityToReturn|No|Yes|M1, JobBOSS², Deacom\nuniqueID|Yes|Yes|M1, JobBOSS², Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Deacom\npartID|Yes|Yes|M1, JobBOSS², Deacom\nlotNumber|Yes|Yes|JobBOSS²\npurchaseOrderLineID|Yes|Yes|JobBOSS²\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partRevisionID[eq]": "abc123", "warehouseID[eq]": "abc123", "partBinID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "partID[eq]": "abc123", "lotNumber[eq]": "abc123", "purchaseOrderLineID[eq]": "abc123" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\npartRevision|PartRevisions|\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/PartBinListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/PartBinListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/PartBinListResponse" } } } } } } }, "/api/v2.1/part-costs": { "get": { "tags": [ "PartCost" ], "summary": "Get a list of PartCosts from the ERP system that match the given filters.", "description": "Gets a list of PartRevision.\n\n## Supported ERPs\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartCostID|Yes|Yes|JobBOSS²\npartID|Yes|Yes|JobBOSS²\npartRevisionID|Yes|Yes|JobBOSS²\nstartDate|Yes|Yes|JobBOSS²\nendDate|Yes|Yes|JobBOSS²\nuniqueID|Yes|Yes|JobBOSS²\nrowVersion|Yes|Yes|JobBOSS²\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partCostID[eq]": "abc123", "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "startDate[gte]": "2020-09-25T04:03:00.0000000", "endDate[gte]": "2020-09-25T04:03:00.0000000", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/PartCostListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/PartCostListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/PartCostListResponse" } } } } } } }, "/api/v2.1/part-cost-breaks": { "get": { "tags": [ "PartCostBreak" ], "summary": "Get a list of PartCostBreaks from the ERP system that match the given filters.", "description": "Gets a list of PartCostBreak.\n\n## Supported ERPs\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartCostID|Yes|Yes|JobBOSS²\nquantity|No|Yes|JobBOSS²\nunitCost|No|Yes|JobBOSS²\nuniqueID|Yes|Yes|JobBOSS²\nrowVersion|Yes|Yes|JobBOSS²\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partCostID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/PartCostBreakListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/PartCostBreakListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/PartCostBreakListResponse" } } } } } } }, "/api/v2.1/part-groups": { "get": { "tags": [ "PartGroup" ], "summary": "Get a list of PartGroups from the ERP system that match the given filters.", "description": "Gets a list of PartGroup.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nuniqueID|Yes|Yes|M1, JobBOSS², Macola\nrowVersion|Yes|Yes|M1, JobBOSS², Macola\npartGroupID|Yes|Yes|M1, JobBOSS², Macola\nparentPartGroupID|Yes|Yes|M1, JobBOSS², Macola\ndescription|No|Yes|M1, JobBOSS², Macola\nisActive|Yes|Yes|M1, JobBOSS², Macola\ninactiveDate|No|Yes|M1, JobBOSS², Macola\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "partGroupID[eq]": "abc123", "parentPartGroupID[eq]": "abc123", "isActive[eq]": true } } } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/PartGroupListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/PartGroupListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/PartGroupListResponse" } } } } } } }, "/api/v2.1/part-materials": { "get": { "tags": [ "PartMaterial" ], "summary": "Get a list of PartMaterials from the ERP system that match the given filters.", "description": "Gets a list of PartMaterial.\n\n## Supported ERPs\n - JobBOSS²\n - M1\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartID|Yes|Yes|JobBOSS², M1, Deacom\npartRevisionID|Yes|Yes|JobBOSS², M1, Deacom\npartOperationSeq|Yes|Yes|JobBOSS², M1, Deacom\nmaterialPartID|Yes|Yes|JobBOSS², M1, Deacom\nmaterialPartRevisionID|Yes|Yes|JobBOSS², M1, Deacom\nuniqueID|Yes|Yes|JobBOSS², M1, Deacom\nrowVersion|Yes|Yes|JobBOSS², M1, Deacom\nquantity|No|Yes|JobBOSS², M1, Deacom\nunitOfMeasure|No|Yes|JobBOSS², M1, Deacom\npartAssemblyID|No|Yes|M1\npartAssemblySeq|No|Yes|M1\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "partOperationSeq[gte]": 123, "materialPartID[eq]": "abc123", "materialPartRevisionID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/PartMaterialListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/PartMaterialListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/PartMaterialListResponse" } } } } } } }, "/api/v2.1/part-materials/{id}": { "get": { "tags": [ "PartMaterial" ], "summary": "Get a PartMaterial from the ERP system that match the given filters.", "description": "Gets a PartMaterial by unique ID.\n\n## Supported ERPs\n - JobBOSS²\n - M1\n - Deacom\n## Features by Field\nField |Supported ERPs\n------------|------------\npartID||JobBOSS², M1, Deacom\npartRevisionID||JobBOSS², M1, Deacom\npartOperationSeq||JobBOSS², M1, Deacom\nmaterialPartID||JobBOSS², M1, Deacom\nmaterialPartRevisionID||JobBOSS², M1, Deacom\nuniqueID||JobBOSS², M1, Deacom\nrowVersion||JobBOSS², M1, Deacom\nquantity||JobBOSS², M1, Deacom\nunitOfMeasure||JobBOSS², M1, Deacom\npartAssemblyID||M1\npartAssemblySeq||M1\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the PartMaterial", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/PartMaterial" } }, "application/json": { "schema": { "$ref": "#/components/schemas/PartMaterial" } }, "text/json": { "schema": { "$ref": "#/components/schemas/PartMaterial" } } } } } } }, "/api/v2.1/part-operations": { "get": { "tags": [ "PartOperation" ], "summary": "Get a list of PartOperations from the ERP system that match the given filters.", "description": "Gets a list of PartOperation.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartID|Yes|Yes|M1, JobBOSS², Macola, Deacom\npartRevisionID|Yes|Yes|M1, JobBOSS², Macola, Deacom\npartOperationSeq|Yes|Yes|M1, JobBOSS², Macola, Deacom\nworkCenterID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nprocessID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nshortDesc|Yes|Yes|M1, JobBOSS², Macola, Deacom\nlongDescText|Yes|Yes|M1, JobBOSS², Macola, Deacom\nlongDescFormatted|Yes|Yes|M1, JobBOSS², Macola, Deacom\noutsideOperation|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestSetupHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestProdHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestQueueHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestMoveHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestQAHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nvendorID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestSetupTimeValue|No|Yes|JobBOSS²\nestSetupTimeUnit|No|Yes|JobBOSS²\nestProdTimeValue|No|Yes|JobBOSS²\nestProdTimeUnit|No|Yes|JobBOSS²\nuniqueID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Macola, Deacom\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "partOperationSeq[gte]": 123, "workCenterID[eq]": "abc123", "processID[eq]": "abc123", "shortDesc[eq]": "abc123", "longDescText[eq]": "abc123", "longDescFormatted[eq]": "abc123", "outsideOperation[eq]": "abc123", "estSetupHours[gte]": 123, "estProdHours[gte]": 123, "estQueueHours[gte]": 123, "estMoveHours[gte]": 123, "estQAHours[gte]": 123, "vendorID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/PartOperationListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/PartOperationListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/PartOperationListResponse" } } } } } } }, "/api/v2.1/part-operations/{id}": { "get": { "tags": [ "PartOperation" ], "summary": "Get a PartOperation from the ERP system that match the given filters.", "description": "Gets a PartOperation by unique ID.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Features by Field\nField |Supported ERPs\n------------|------------\npartID||M1, JobBOSS², Macola, Deacom\npartRevisionID||M1, JobBOSS², Macola, Deacom\npartOperationSeq||M1, JobBOSS², Macola, Deacom\nworkCenterID||M1, JobBOSS², Macola, Deacom\nprocessID||M1, JobBOSS², Macola, Deacom\nshortDesc||M1, JobBOSS², Macola, Deacom\nlongDescText||M1, JobBOSS², Macola, Deacom\nlongDescFormatted||M1, JobBOSS², Macola, Deacom\noutsideOperation||M1, JobBOSS², Macola, Deacom\nestSetupHours||M1, JobBOSS², Macola, Deacom\nestProdHours||M1, JobBOSS², Macola, Deacom\nestQueueHours||M1, JobBOSS², Macola, Deacom\nestMoveHours||M1, JobBOSS², Macola, Deacom\nestQAHours||M1, JobBOSS², Macola, Deacom\nvendorID||M1, JobBOSS², Macola, Deacom\nestSetupTimeValue||JobBOSS²\nestSetupTimeUnit||JobBOSS²\nestProdTimeValue||JobBOSS²\nestProdTimeUnit||JobBOSS²\nuniqueID||M1, JobBOSS², Macola, Deacom\nrowVersion||M1, JobBOSS², Macola, Deacom\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the PartOperation", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/PartOperation" } }, "application/json": { "schema": { "$ref": "#/components/schemas/PartOperation" } }, "text/json": { "schema": { "$ref": "#/components/schemas/PartOperation" } } } } } } }, "/api/v2.1/part-prices": { "get": { "tags": [ "PartPrice" ], "summary": "Get a list of PartPrices from the ERP system that match the given filters.", "description": "Gets a list of PartPrice.\n\n## Supported ERPs\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartPriceID|Yes|Yes|JobBOSS²\npartID|Yes|Yes|JobBOSS²\npartRevisionID|Yes|Yes|JobBOSS²\nstartDate|Yes|Yes|JobBOSS²\nendDate|Yes|Yes|JobBOSS²\nisCustomerSpecific|Yes|Yes|JobBOSS²\nuniqueID|Yes|Yes|JobBOSS²\nrowVersion|Yes|Yes|JobBOSS²\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partPriceID[eq]": "abc123", "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "startDate[gte]": "2020-09-25T04:03:00.0000000", "endDate[gte]": "2020-09-25T04:03:00.0000000", "isCustomerSpecific[eq]": true, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/PartPriceListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/PartPriceListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/PartPriceListResponse" } } } } } } }, "/api/v2.1/part-price-breaks": { "get": { "tags": [ "PartPriceBreak" ], "summary": "Get a list of PartPriceBreaks from the ERP system that match the given filters.", "description": "Gets a list of PartPriceBreak.\n\n## Supported ERPs\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartPriceID|Yes|Yes|JobBOSS²\nquantity|No|Yes|JobBOSS²\nunitPrice|No|Yes|JobBOSS²\nmarkup|No|Yes|JobBOSS²\ndiscount|No|Yes|JobBOSS²\nuniqueID|Yes|Yes|JobBOSS²\nrowVersion|Yes|Yes|JobBOSS²\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partPriceID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/PartPriceBreakListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/PartPriceBreakListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/PartPriceBreakListResponse" } } } } } } }, "/api/v2.1/part-revisions": { "post": { "tags": [ "PartRevision" ], "summary": "Create a new PartRevision in the ERP system.", "description": "## Supported ERPs\n - JobBOSS²\n", "requestBody": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/PartRevisionCreateModel" } }, "text/json": { "schema": { "$ref": "#/components/schemas/PartRevisionCreateModel" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/PartRevisionCreateModel" } } } }, "responses": { "201": { "description": "Created" } } }, "get": { "tags": [ "PartRevision" ], "summary": "Get a list of PartRevisions from the ERP system that match the given filters.", "description": "Gets a list of PartRevision.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartID|Yes|Yes|M1, JobBOSS², Macola, Deacom\npartRevisionID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nshortDesc|Yes|Yes|M1, JobBOSS², Macola, Deacom\nlongDescText|Yes|Yes|M1, JobBOSS², Macola, Deacom\nlongDescFormatted|Yes|Yes|M1, JobBOSS², Macola, Deacom\nuniqueID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Macola, Deacom\npartCost|No|Yes|M1, JobBOSS², Macola, Deacom\neffectiveStartDate|No|Yes|JobBOSS²\nexpirationEndDate|No|Yes|JobBOSS²\nsupplierOrganizationID|No|Yes|JobBOSS²\nleadTime|No|Yes|JobBOSS²\nquantityOnHand|No|Yes|JobBOSS²\npricingUnitOfMeasure|No|Yes|JobBOSS²\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "shortDesc[eq]": "abc123", "longDescText[eq]": "abc123", "longDescFormatted[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/PartRevisionListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/PartRevisionListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/PartRevisionListResponse" } } } } } } }, "/api/v2.1/part-revisions/{id}": { "get": { "tags": [ "PartRevision" ], "summary": "Get a PartRevisions from the ERP system that match the given filters.", "description": "Gets a PartRevision by unique ID.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Features by Field\nField |Supported ERPs\n------------|------------\npartID||M1, JobBOSS², Macola, Deacom\npartRevisionID||M1, JobBOSS², Macola, Deacom\nshortDesc||M1, JobBOSS², Macola, Deacom\nlongDescText||M1, JobBOSS², Macola, Deacom\nlongDescFormatted||M1, JobBOSS², Macola, Deacom\nuniqueID||M1, JobBOSS², Macola, Deacom\nrowVersion||M1, JobBOSS², Macola, Deacom\npartCost||M1, JobBOSS², Macola, Deacom\neffectiveStartDate||JobBOSS²\nexpirationEndDate||JobBOSS²\nsupplierOrganizationID||JobBOSS²\nleadTime||JobBOSS²\nquantityOnHand||JobBOSS²\npricingUnitOfMeasure||JobBOSS²\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the PartRevision", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/PartRevision" } }, "application/json": { "schema": { "$ref": "#/components/schemas/PartRevision" } }, "text/json": { "schema": { "$ref": "#/components/schemas/PartRevision" } } } } } } }, "/api/v2.1/payment-terms": { "get": { "tags": [ "PaymentTerm" ], "summary": "Get a list of PaymentTerm from the ERP system that match the given filters.", "description": "Gets a list of PaymentTerm.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ndescription|No|Yes|M1, JobBOSS², Macola\npaymentTermID|Yes|Yes|M1, JobBOSS², Macola\nrowVersion|Yes|Yes|M1, JobBOSS², Macola\nuniqueID|Yes|Yes|M1, JobBOSS², Macola\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "paymentTermID[eq]": "abc123", "rowVersion[gte]": 123, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8" } } } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/PaymentTermListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/PaymentTermListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/PaymentTermListResponse" } } } } } } }, "/api/v2.1/purchase-orders": { "get": { "tags": [ "PurchaseOrder" ], "summary": "Get a list of PurchaseOrders from the ERP system that match the given filters.", "description": "Gets a list of PurchaseOrder.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\napInvoiceLocationID|No|Yes|M1, JobBOSS², Deacom\nbuyerEmployeeID|No|Yes|M1, JobBOSS², Deacom\ncurrency|No|Yes|M1, JobBOSS², Deacom\norderDate|Yes|Yes|M1, JobBOSS², Deacom\nplantID|Yes|Yes|M1, JobBOSS², Deacom\nprojectID|Yes|Yes|M1, JobBOSS², Deacom\npurchaseOrderID|Yes|Yes|M1, JobBOSS², Deacom\nsupplierOrganizationID|Yes|Yes|M1, JobBOSS², Deacom\nuniqueID|Yes|Yes|M1, JobBOSS², Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Deacom\nisClosed|Yes|Yes|M1, JobBOSS², Deacom\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "orderDate[gte]": "2020-09-25T00:00:00.0000000", "plantID[eq]": "abc123", "projectID[eq]": "abc123", "purchaseOrderID[eq]": "abc123", "supplierOrganizationID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "isClosed[eq]": true } } } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/PurchaseOrderListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/PurchaseOrderListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/PurchaseOrderListResponse" } } } } } } }, "/api/v2.1/purchase-orders/{id}": { "get": { "tags": [ "PurchaseOrder" ], "summary": "Get an Purchaseorders from the ERP system that matches the given unique ID.", "description": "Gets a PurchaseOrder by unique ID.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Deacom\n## Features by Field\nField |Supported ERPs\n------------|------------\napInvoiceLocationID||M1, JobBOSS², Deacom\nbuyerEmployeeID||M1, JobBOSS², Deacom\ncurrency||M1, JobBOSS², Deacom\norderDate||M1, JobBOSS², Deacom\nplantID||M1, JobBOSS², Deacom\nprojectID||M1, JobBOSS², Deacom\npurchaseOrderID||M1, JobBOSS², Deacom\nsupplierOrganizationID||M1, JobBOSS², Deacom\nuniqueID||M1, JobBOSS², Deacom\nrowVersion||M1, JobBOSS², Deacom\nisClosed||M1, JobBOSS², Deacom\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the PurchaseOrders", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/WorkCenter" } }, "application/json": { "schema": { "$ref": "#/components/schemas/WorkCenter" } }, "text/json": { "schema": { "$ref": "#/components/schemas/WorkCenter" } } } } } } }, "/api/v2.1/purchase-order-lines": { "get": { "tags": [ "PurchaseOrderLine" ], "summary": "Get a list of PurchaseOrderLines from the ERP system that match the given filters.", "description": "Gets a list of PurchaseOrderLine.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ndueDate|Yes|Yes|M1, JobBOSS², Deacom\nextendedCost|No|Yes|M1, JobBOSS², Deacom\nforeignExtendedCost|No|Yes|M1, JobBOSS², Deacom\npartID|Yes|Yes|M1, JobBOSS², Deacom\npartRevisionID|Yes|Yes|M1, JobBOSS², Deacom\npartDescription|No|Yes|M1, JobBOSS², Deacom\npartWarehouse|No|Yes|M1, JobBOSS², Deacom\npurchaseOrderLineID|Yes|Yes|M1, JobBOSS², Deacom\nquantity|No|Yes|M1, JobBOSS², Deacom\nquantityReceived|No|Yes|M1, JobBOSS², Deacom\nunitCost|No|Yes|M1, JobBOSS², Deacom\nforeignUnitCost|No|Yes|M1, JobBOSS², Deacom\nisReceived|Yes|Yes|M1, JobBOSS², Deacom\ninspectionRequired|Yes|Yes|M1, JobBOSS², Deacom\nuniqueID|Yes|Yes|M1, JobBOSS², Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Deacom\nisClosed|Yes|Yes|M1, JobBOSS², Deacom\npurchaseOrderID|Yes|Yes|M1, JobBOSS², Deacom\nunitOfMeasure|No|Yes|JobBOSS², Deacom\njobID|Yes|Yes|JobBOSS²\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "dueDate[gte]": "2020-09-25T00:00:00.0000000", "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "purchaseOrderLineID[eq]": "abc123", "isReceived[eq]": true, "inspectionRequired[eq]": true, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "isClosed[eq]": true, "purchaseOrderID[eq]": "abc123", "jobID[eq]": "abc123" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\npurchaseOrder|PurchaseOrders|\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/PurchaseOrderLineListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/PurchaseOrderLineListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/PurchaseOrderLineListResponse" } } } } } } }, "/api/v2.1/purchase-order-lines/{id}": { "get": { "tags": [ "PurchaseOrderLine" ], "summary": "Get a PurchaseOrderLine from the ERP system that matches the given unique ID.", "description": "Gets a PurchaseOrderLine by unique ID.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Deacom\n## Features by Field\nField |Supported ERPs\n------------|------------\ndueDate||M1, JobBOSS², Deacom\nextendedCost||M1, JobBOSS², Deacom\nforeignExtendedCost||M1, JobBOSS², Deacom\npartID||M1, JobBOSS², Deacom\npartRevisionID||M1, JobBOSS², Deacom\npartDescription||M1, JobBOSS², Deacom\npartWarehouse||M1, JobBOSS², Deacom\npurchaseOrderLineID||M1, JobBOSS², Deacom\nquantity||M1, JobBOSS², Deacom\nquantityReceived||M1, JobBOSS², Deacom\nunitCost||M1, JobBOSS², Deacom\nforeignUnitCost||M1, JobBOSS², Deacom\nisReceived||M1, JobBOSS², Deacom\ninspectionRequired||M1, JobBOSS², Deacom\nuniqueID||M1, JobBOSS², Deacom\nrowVersion||M1, JobBOSS², Deacom\nisClosed||M1, JobBOSS², Deacom\npurchaseOrderID||M1, JobBOSS², Deacom\nunitOfMeasure||JobBOSS², Deacom\njobID||JobBOSS²\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the quote", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/PurchaseOrderLine" } }, "application/json": { "schema": { "$ref": "#/components/schemas/PurchaseOrderLine" } }, "text/json": { "schema": { "$ref": "#/components/schemas/PurchaseOrderLine" } } } } } } }, "/api/v2.1/quotes": { "get": { "tags": [ "Quote" ], "summary": "Get a list of Quotes from the ERP system that match the given filters.", "description": "Gets a list of Quote.\n\n## Supported ERPs\n - M1\n - Macola\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nuniqueID|Yes|Yes|M1, Macola, JobBOSS²\nrowVersion|Yes|Yes|M1, Macola, JobBOSS²\nquoteID|Yes|Yes|M1, Macola, JobBOSS²\nemployeeID|Yes|Yes|M1, Macola, JobBOSS²\norganizationID|Yes|Yes|M1, Macola, JobBOSS²\nlocationID|Yes|Yes|M1, Macola, JobBOSS²\ncontactID|No|Yes|M1, Macola, JobBOSS²\ninvoiceLocationID|No|Yes|M1, Macola, JobBOSS²\nquoteDate|Yes|Yes|M1, Macola, JobBOSS²\ndueDate|No|Yes|M1, Macola, JobBOSS²\nisClosed|Yes|Yes|M1, Macola, JobBOSS²\nclosedDate|Yes|Yes|M1, Macola, JobBOSS²\ncurrencyRateID|No|Yes|M1, Macola, JobBOSS²\ncustomerID|Yes|Yes|M1, Macola, JobBOSS²\nexpirationDate|Yes|Yes|M1, Macola, JobBOSS²\nplantID|No|Yes|M1, Macola, JobBOSS²\nprojectID|No|Yes|M1, Macola, JobBOSS²\nshipToOrganizationID|No|Yes|M1, Macola, JobBOSS²\nshipToContactID|No|Yes|M1, Macola, JobBOSS²\nshipToLocationID|No|Yes|M1, Macola, JobBOSS²\nstatusCode|No|Yes|M1, Macola, JobBOSS²\ntotalSalesAmount|No|Yes|Macola\nawardProbability|No|Yes|Macola\nlostSaleCode|No|Yes|Macola\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "quoteID[eq]": "abc123", "employeeID[eq]": "abc123", "organizationID[eq]": "abc123", "locationID[eq]": "abc123", "quoteDate[gte]": "2020-09-25T00:00:00.0000000", "isClosed[eq]": true, "closedDate[gte]": "2020-09-25T00:00:00.0000000", "customerID[eq]": "abc123", "expirationDate[gte]": "2020-09-25T00:00:00.0000000" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\ncustomer|Organizations|The Customer Organization.\ncontact|Contacts|The Customer Contact record.\nshipTo|Organizations|The Ship To Organization.\nshipToContact|Contacts|The Ship To Contact record.\nproject|Projects|The Project record for this quote.\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/QuoteListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/QuoteListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/QuoteListResponse" } } } } } } }, "/api/v2.1/quotes/{id}": { "get": { "tags": [ "Quote" ], "summary": "Get a Quote from the ERP system that matches the given unique ID.", "description": "Gets a Quote by unique ID.\n\n## Supported ERPs\n - M1\n - Macola\n - JobBOSS²\n## Features by Field\nField |Supported ERPs\n------------|------------\nuniqueID||M1, Macola, JobBOSS²\nrowVersion||M1, Macola, JobBOSS²\nquoteID||M1, Macola, JobBOSS²\nemployeeID||M1, Macola, JobBOSS²\norganizationID||M1, Macola, JobBOSS²\nlocationID||M1, Macola, JobBOSS²\ncontactID||M1, Macola, JobBOSS²\ninvoiceLocationID||M1, Macola, JobBOSS²\nquoteDate||M1, Macola, JobBOSS²\ndueDate||M1, Macola, JobBOSS²\nisClosed||M1, Macola, JobBOSS²\nclosedDate||M1, Macola, JobBOSS²\ncurrencyRateID||M1, Macola, JobBOSS²\ncustomerID||M1, Macola, JobBOSS²\nexpirationDate||M1, Macola, JobBOSS²\nplantID||M1, Macola, JobBOSS²\nprojectID||M1, Macola, JobBOSS²\nshipToOrganizationID||M1, Macola, JobBOSS²\nshipToContactID||M1, Macola, JobBOSS²\nshipToLocationID||M1, Macola, JobBOSS²\nstatusCode||M1, Macola, JobBOSS²\ntotalSalesAmount||Macola\nawardProbability||Macola\nlostSaleCode||Macola\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the quote", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/Quote" } }, "application/json": { "schema": { "$ref": "#/components/schemas/Quote" } }, "text/json": { "schema": { "$ref": "#/components/schemas/Quote" } } } } } } }, "/api/v2.1/quote-lines": { "get": { "tags": [ "QuoteLine" ], "summary": "Get a list of QuoteLines from the ERP system that match the given filters.", "description": "Gets a list of QuoteLine.\n\n## Supported ERPs\n - M1\n - Macola\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nuniqueID|Yes|Yes|M1, Macola, JobBOSS²\nrowVersion|Yes|Yes|M1, Macola, JobBOSS²\nquoteID|Yes|Yes|M1, Macola, JobBOSS²\npartID|Yes|Yes|M1, Macola, JobBOSS²\npartRevisionID|Yes|Yes|M1, Macola, JobBOSS²\npartGroupID|Yes|Yes|M1, Macola, JobBOSS²\nshortDescription|No|Yes|M1, Macola, JobBOSS²\nquoteQuantityID|No|Yes|M1, Macola, JobBOSS²\nquoteLineID|Yes|Yes|M1, Macola, JobBOSS²\nresolutionReasonID|No|Yes|M1, Macola, JobBOSS²\nlocationID|No|Yes|Macola\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "quoteID[eq]": "abc123", "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "partGroupID[eq]": "abc123", "quoteLineID[eq]": "abc123" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\nquote|Quotes|The parent Quote header for this line.\nresolutionReason|Reasons|The reason detail for the resolution.\npartGroup|PartGroups|The parent Quote header for this line.\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/QuoteLineListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/QuoteLineListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/QuoteLineListResponse" } } } } } } }, "/api/v2.1/quote-lines/{id}": { "get": { "tags": [ "QuoteLine" ], "summary": "Get a QuoteLine from the ERP system that matches the given unique ID.", "description": "Gets a QuoteLine by unique ID.\n\n## Supported ERPs\n - M1\n - Macola\n - JobBOSS²\n## Features by Field\nField |Supported ERPs\n------------|------------\nuniqueID||M1, Macola, JobBOSS²\nrowVersion||M1, Macola, JobBOSS²\nquoteID||M1, Macola, JobBOSS²\npartID||M1, Macola, JobBOSS²\npartRevisionID||M1, Macola, JobBOSS²\npartGroupID||M1, Macola, JobBOSS²\nshortDescription||M1, Macola, JobBOSS²\nquoteQuantityID||M1, Macola, JobBOSS²\nquoteLineID||M1, Macola, JobBOSS²\nresolutionReasonID||M1, Macola, JobBOSS²\nlocationID||Macola\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the quote line", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/QuoteLine" } }, "application/json": { "schema": { "$ref": "#/components/schemas/QuoteLine" } }, "text/json": { "schema": { "$ref": "#/components/schemas/QuoteLine" } } } } } } }, "/api/v2.1/quote-quantities": { "get": { "tags": [ "QuoteQuantity" ], "summary": "Get a list of Quote Quantities from the ERP system that match the given filters.", "description": "Gets a list of QuoteQuantity.\n\n## Supported ERPs\n - M1\n - Macola\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nuniqueID|Yes|Yes|M1, Macola, JobBOSS²\nrowVersion|Yes|Yes|M1, Macola, JobBOSS²\nquoteQuantityID|Yes|Yes|M1, Macola, JobBOSS²\nquoteID|Yes|Yes|M1, Macola, JobBOSS²\nquoteLineID|Yes|Yes|M1, Macola, JobBOSS²\nquantity|No|Yes|M1, Macola, JobBOSS²\nbaseUnitPrice|No|Yes|M1, Macola, JobBOSS²\nforeignUnitPrice|No|Yes|M1, Macola, JobBOSS²\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "quoteQuantityID[eq]": "abc123", "quoteID[eq]": "abc123", "quoteLineID[eq]": "abc123" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\nquote|Quotes|The parent Quote header for this line.\nquoteLine|QuoteLines|The relaed quote line.\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/QuoteQuantityListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/QuoteQuantityListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/QuoteQuantityListResponse" } } } } } } }, "/api/v2.1/reasons": { "get": { "tags": [ "Reason" ], "summary": "Get a list of Reasons from the ERP system that match the given filters.", "description": "Gets a list of Reason.\n\n## Supported ERPs\n - M1\n - Macola\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nreasonID|Yes|Yes|M1, Macola, JobBOSS²\ndescription|No|Yes|M1, Macola, JobBOSS²\nname|Yes|Yes|JobBOSS²\nuniqueID|Yes|Yes|M1, Macola, JobBOSS²\nrowVersion|Yes|Yes|M1, Macola, JobBOSS²\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "reasonID[eq]": "abc123", "name[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ReasonListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ReasonListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ReasonListResponse" } } } } } } }, "/api/v2.1/reasons/{id}": { "get": { "tags": [ "Reason" ], "summary": "Get a Reason from the ERP system that matches the given unique ID.", "description": "Gets a Reason by unique ID.\n\n## Supported ERPs\n - M1\n - Macola\n - JobBOSS²\n## Features by Field\nField |Supported ERPs\n------------|------------\nreasonID||M1, Macola, JobBOSS²\ndescription||M1, Macola, JobBOSS²\nname||JobBOSS²\nuniqueID||M1, Macola, JobBOSS²\nrowVersion||M1, Macola, JobBOSS²\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the Reason", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/WorkCenter" } }, "application/json": { "schema": { "$ref": "#/components/schemas/WorkCenter" } }, "text/json": { "schema": { "$ref": "#/components/schemas/WorkCenter" } } } } } } }, "/api/v2.1/sales-accounts": { "get": { "tags": [ "SalesAccount" ], "summary": "Get a list of SalesAccounts from the ERP system that match the given filters.", "description": "Gets a list of SalesAccount.\n\n## Supported ERPs\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nsalesAccountID|Yes|Yes|JobBOSS²\nname|Yes|Yes|JobBOSS²\nisActive|Yes|Yes|JobBOSS²\nuniqueID|Yes|Yes|JobBOSS²\nrowVersion|Yes|Yes|JobBOSS²\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "salesAccountID[eq]": "abc123", "name[eq]": "abc123", "isActive[eq]": true, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/SalesAccountListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/SalesAccountListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/SalesAccountListResponse" } } } } } } }, "/api/v2.1/sales-orders": { "post": { "tags": [ "SalesOrder" ], "summary": "Create a new SalesOrder in the ERP system.", "description": "## Supported ERPs\n - JobBOSS²\n", "requestBody": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SalesOrderCreateModel" } }, "text/json": { "schema": { "$ref": "#/components/schemas/SalesOrderCreateModel" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/SalesOrderCreateModel" } } } }, "responses": { "201": { "description": "Created" } } }, "get": { "tags": [ "SalesOrder" ], "summary": "Get a list of SalesOrders from the ERP system that match the given filters.", "description": "Gets a list of SalesOrder.\n\n## Supported ERPs\n - M1\n - Macola\n - JobBOSS²\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nuniqueID|Yes|Yes|M1, Macola, JobBOSS², Deacom\nrowVersion|Yes|Yes|M1, Macola, JobBOSS², Deacom\nsalesOrderID|Yes|Yes|M1, Macola, JobBOSS², Deacom\ncustomerID|Yes|Yes|M1, Macola, JobBOSS², Deacom\norderDate|Yes|Yes|M1, Macola, JobBOSS², Deacom\nplantID|No|Yes|M1, Macola, JobBOSS², Deacom\nprojectID|No|Yes|M1, Macola, JobBOSS², Deacom\nsalesOrderType|No|Yes|Macola\ntotalSalesAmount|No|Yes|Macola\nstatus|No|Yes|Macola\noriginalOrderType|No|Yes|Macola\nquoteID|No|Yes|Macola\nclosedDate|Yes|Yes|Macola\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "salesOrderID[eq]": "abc123", "customerID[eq]": "abc123", "orderDate[gte]": "2020-09-25T00:00:00.0000000", "closedDate[gte]": "2020-09-25T00:00:00.0000000" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\ncustomer|Organizations|The Customer Organization record.\nplant|Plants|The Plant record.\nproject|Projects|The Project record for this Sales Order.\n", "schema": { "type": "string" } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/SalesOrderListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/SalesOrderListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/SalesOrderListResponse" } } } } } } }, "/api/v2.1/sales-orders/{id}": { "get": { "tags": [ "SalesOrder" ], "summary": "Get a SalesOrder from the ERP system that match the given filters.", "description": "Gets a SalesOrder by unique ID.\n\n## Supported ERPs\n - M1\n - Macola\n - JobBOSS²\n - Deacom\n## Features by Field\nField |Supported ERPs\n------------|------------\nuniqueID||M1, Macola, JobBOSS², Deacom\nrowVersion||M1, Macola, JobBOSS², Deacom\nsalesOrderID||M1, Macola, JobBOSS², Deacom\ncustomerID||M1, Macola, JobBOSS², Deacom\norderDate||M1, Macola, JobBOSS², Deacom\nplantID||M1, Macola, JobBOSS², Deacom\nprojectID||M1, Macola, JobBOSS², Deacom\nsalesOrderType||Macola\ntotalSalesAmount||Macola\nstatus||Macola\noriginalOrderType||Macola\nquoteID||Macola\nclosedDate||Macola\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the SalesOrder", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/SalesOrder" } }, "application/json": { "schema": { "$ref": "#/components/schemas/SalesOrder" } }, "text/json": { "schema": { "$ref": "#/components/schemas/SalesOrder" } } } } } } }, "/api/v2.1/sales-order-jobs": { "get": { "tags": [ "SalesOrderJob" ], "summary": "Get a list of SalesOrderJobs from the ERP system that match the given filters.", "description": "Gets a list of SalesOrderJob.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nsalesOrderID|Yes|Yes|M1, JobBOSS², Macola\norderLine|Yes|Yes|M1, JobBOSS², Macola\norderLineDelivery|Yes|Yes|M1, JobBOSS², Macola\njobID|Yes|Yes|M1, JobBOSS², Macola\norderJobSeq|Yes|Yes|M1, JobBOSS², Macola\nuniqueID|Yes|Yes|M1, JobBOSS², Macola\nrowVersion|Yes|Yes|M1, JobBOSS², Macola\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "salesOrderID[eq]": "abc123", "orderLine[gte]": 123, "orderLineDelivery[eq]": "abc123", "jobID[eq]": "abc123", "orderJobSeq[gte]": 123, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/SalesOrderJobListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/SalesOrderJobListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/SalesOrderJobListResponse" } } } } } } }, "/api/v2.1/sales-order-jobs/{id}": { "get": { "tags": [ "SalesOrderJob" ], "summary": "Get a SalesOrderJob from the ERP system that match the given filters.", "description": "Gets a SalesOrderJob by unique ID.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n## Features by Field\nField |Supported ERPs\n------------|------------\nsalesOrderID||M1, JobBOSS², Macola\norderLine||M1, JobBOSS², Macola\norderLineDelivery||M1, JobBOSS², Macola\njobID||M1, JobBOSS², Macola\norderJobSeq||M1, JobBOSS², Macola\nuniqueID||M1, JobBOSS², Macola\nrowVersion||M1, JobBOSS², Macola\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the SalesOrderJob", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/SalesOrderLine" } }, "application/json": { "schema": { "$ref": "#/components/schemas/SalesOrderLine" } }, "text/json": { "schema": { "$ref": "#/components/schemas/SalesOrderLine" } } } } } } }, "/api/v2.1/sales-order-lines": { "post": { "tags": [ "SalesOrderLine" ], "summary": "Create a new SalesOrderLine in the ERP system.", "description": "## Supported ERPs\n - JobBOSS²\n", "requestBody": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/SalesOrderLineCreateModel" } }, "text/json": { "schema": { "$ref": "#/components/schemas/SalesOrderLineCreateModel" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/SalesOrderLineCreateModel" } } } }, "responses": { "201": { "description": "Created" } } }, "get": { "tags": [ "SalesOrderLine" ], "summary": "Get a list of SalesOrderLines from the ERP system that match the given filters.", "description": "Gets a list of SalesOrderLine.\n\n## Supported ERPs\n - M1\n - Macola\n - JobBOSS²\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nsalesOrderID|Yes|Yes|M1, Macola, JobBOSS², Deacom\norderLine|Yes|Yes|M1, Macola, JobBOSS², Deacom\ntotalSalePrice|Yes|Yes|M1, Macola, JobBOSS², Deacom\nuniqueID|Yes|Yes|M1, Macola, JobBOSS², Deacom\nrowVersion|Yes|Yes|M1, Macola, JobBOSS², Deacom\npartID|No|Yes|M1, Macola, JobBOSS², Deacom\npartRevisionID|No|Yes|M1, Macola, JobBOSS², Deacom\npartGroupID|No|Yes|M1, Macola, JobBOSS², Deacom\nshortDescription|No|Yes|M1, Macola, JobBOSS², Deacom\nsaleUom|No|Yes|M1, Macola, JobBOSS², Deacom\nbaseUnitPrice|No|Yes|M1, Macola, JobBOSS², Deacom\nforeignUnitPrice|No|Yes|M1, Macola, JobBOSS², Deacom\nbaseExtendedPrice|No|Yes|M1, Macola, JobBOSS², Deacom\nforeignExtendedPrice|No|Yes|M1, Macola, JobBOSS², Deacom\nquantityOrdered|No|Yes|M1, Macola, JobBOSS², Deacom\nquantityShipped|No|Yes|M1, Macola, JobBOSS², Deacom\npurchaseOrderCost|No|Yes|M1, Macola, JobBOSS², Deacom\npurchaseOrderCostForeign|No|Yes|M1, Macola, JobBOSS², Deacom\nsalesOrderType|No|Yes|Macola\nlocationID|No|Yes|Macola\nshippedDate|No|Yes|Macola\nisPosted|No|Yes|Macola\ndueDate|No|Yes|JobBOSS²\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "salesOrderID[eq]": "abc123", "orderLine[gte]": 123, "totalSalePrice[gte]": 123, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\nsalesOrderDeliveries|SalesOrderDeliveries[]|\nsalesOrderJobs|SalesOrderJobs|\nsalesOrder|SalesOrders|\npartRevision|PartRevisions|\npartGroup|PartGroups|\n", "schema": { "type": "string" } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/SalesOrderLineListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/SalesOrderLineListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/SalesOrderLineListResponse" } } } } } } }, "/api/v2.1/sales-order-lines/{id}": { "get": { "tags": [ "SalesOrderLine" ], "summary": "Get a SalesOrderLine from the ERP system that match the given filters.", "description": "Gets a SalesOrderLine by unique ID.\n\n## Supported ERPs\n - M1\n - Macola\n - JobBOSS²\n - Deacom\n## Features by Field\nField |Supported ERPs\n------------|------------\nsalesOrderID||M1, Macola, JobBOSS², Deacom\norderLine||M1, Macola, JobBOSS², Deacom\ntotalSalePrice||M1, Macola, JobBOSS², Deacom\nuniqueID||M1, Macola, JobBOSS², Deacom\nrowVersion||M1, Macola, JobBOSS², Deacom\npartID||M1, Macola, JobBOSS², Deacom\npartRevisionID||M1, Macola, JobBOSS², Deacom\npartGroupID||M1, Macola, JobBOSS², Deacom\nshortDescription||M1, Macola, JobBOSS², Deacom\nsaleUom||M1, Macola, JobBOSS², Deacom\nbaseUnitPrice||M1, Macola, JobBOSS², Deacom\nforeignUnitPrice||M1, Macola, JobBOSS², Deacom\nbaseExtendedPrice||M1, Macola, JobBOSS², Deacom\nforeignExtendedPrice||M1, Macola, JobBOSS², Deacom\nquantityOrdered||M1, Macola, JobBOSS², Deacom\nquantityShipped||M1, Macola, JobBOSS², Deacom\npurchaseOrderCost||M1, Macola, JobBOSS², Deacom\npurchaseOrderCostForeign||M1, Macola, JobBOSS², Deacom\nsalesOrderType||Macola\nlocationID||Macola\nshippedDate||Macola\nisPosted||Macola\ndueDate||JobBOSS²\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the SalesOrder", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/SalesOrderLine" } }, "application/json": { "schema": { "$ref": "#/components/schemas/SalesOrderLine" } }, "text/json": { "schema": { "$ref": "#/components/schemas/SalesOrderLine" } } } } } } }, "/api/v2.1/shifts": { "get": { "tags": [ "Shift" ], "summary": "Get a list of Shift from the ERP system that match the given filters.", "description": "Gets a list of Shift.\n\n## Supported ERPs\n - M1\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nshiftID|Yes|Yes|M1, Macola\nshortDesc|Yes|Yes|M1, Macola\ninactiveDate|Yes|Yes|M1, Macola\nuniqueID|Yes|Yes|M1, Macola\nrowVersion|Yes|Yes|M1, Macola\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "shiftID[eq]": "abc123", "shortDesc[eq]": "abc123", "inactiveDate[gte]": "2020-09-25T04:03:00.0000000", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\nshiftDays|ShiftDays[]|\n", "schema": { "type": "string" } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ShiftListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ShiftListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ShiftListResponse" } } } } } } }, "/api/v2.1/shifts/{id}": { "get": { "tags": [ "Shift" ], "summary": "Get a Shift from the ERP system that match the given filters.", "description": "Gets a Shift by unique ID.\n\n## Supported ERPs\n - M1\n - Macola\n## Features by Field\nField |Supported ERPs\n------------|------------\nshiftID||M1, Macola\nshortDesc||M1, Macola\ninactiveDate||M1, Macola\nuniqueID||M1, Macola\nrowVersion||M1, Macola\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the Shift", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/Shift" } }, "application/json": { "schema": { "$ref": "#/components/schemas/Shift" } }, "text/json": { "schema": { "$ref": "#/components/schemas/Shift" } } } } } } }, "/api/v2.1/tax-codes": { "get": { "tags": [ "TaxCode" ], "summary": "Get a list of TaxCodes from the ERP system that match the given filters.", "description": "Gets a list of TaxCode.\n\n## Supported ERPs\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ndescription|No|Yes|JobBOSS²\ntaxCodeID|No|Yes|JobBOSS²\nisActive|No|Yes|JobBOSS²\nrowVersion|Yes|Yes|JobBOSS²\nuniqueID|Yes|Yes|JobBOSS²\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "rowVersion[gte]": 123, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8" } } } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/TaxCodeListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/TaxCodeListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/TaxCodeListResponse" } } } } } } }, "/api/v2.1/timecards": { "post": { "tags": [ "Timecard" ], "summary": "Create a new Timecard in the ERP system.", "description": "## Supported ERPs\n - JobBOSS²\n - M1\n - Deacom\n", "requestBody": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TimecardCreateModel" } }, "text/json": { "schema": { "$ref": "#/components/schemas/TimecardCreateModel" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/TimecardCreateModel" } } } }, "responses": { "201": { "description": "Created" } } }, "get": { "tags": [ "Timecard" ], "summary": "Get a list of Timecards from the ERP system that match the given filters.", "description": "Gets a list of Timecard.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ntimecardID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nemployeeID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nshiftID|Yes|Yes|M1, JobBOSS², Macola, Deacom\ntimecardDate|Yes|Yes|M1, JobBOSS², Macola, Deacom\nuniqueID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Macola, Deacom\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "timecardID[eq]": "abc123", "employeeID[eq]": "abc123", "shiftID[eq]": "abc123", "timecardDate[gte]": "2020-09-25T04:03:00.0000000", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\ntimecardlines|Timecardlines[]|\nemployees|Employees[]|\n", "schema": { "type": "string" } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/TimecardListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/TimecardListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/TimecardListResponse" } } } } } } }, "/api/v2.1/timecards/{id}": { "get": { "tags": [ "Timecard" ], "summary": "Get a Timecard from the ERP system that match the given unique ID.", "description": "Gets a Timecard by unique ID.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Features by Field\nField |Supported ERPs\n------------|------------\ntimecardID||M1, JobBOSS², Macola, Deacom\nemployeeID||M1, JobBOSS², Macola, Deacom\nshiftID||M1, JobBOSS², Macola, Deacom\ntimecardDate||M1, JobBOSS², Macola, Deacom\nuniqueID||M1, JobBOSS², Macola, Deacom\nrowVersion||M1, JobBOSS², Macola, Deacom\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the Timecard", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/Timecard" } }, "application/json": { "schema": { "$ref": "#/components/schemas/Timecard" } }, "text/json": { "schema": { "$ref": "#/components/schemas/Timecard" } } } } } } }, "/api/v2.1/timecards/clock-in": { "post": { "tags": [ "Timecard" ], "summary": "Clock an employee into their shift. Creates an open clock session that must be closed via clock-out.", "description": "## Supported ERPs\n - JobBOSS²\n - Deacom\n", "requestBody": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ClockInModel" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ClockInModel" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/ClockInModel" } } } }, "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ClockSession" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ClockSession" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ClockSession" } } } } } } }, "/api/v2.1/timecards/clock-out": { "post": { "tags": [ "Timecard" ], "summary": "Clock an employee out of their shift. Closes the clock session identified by model.ClockSessionID.", "description": "## Supported ERPs\n - JobBOSS²\n - Deacom\n", "requestBody": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ClockOutModel" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ClockOutModel" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/ClockOutModel" } } } }, "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ClockSession" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ClockSession" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ClockSession" } } } } } } }, "/api/v2.1/timecard-lines": { "post": { "tags": [ "TimecardLine" ], "summary": "Create a new Timecard Line in the ERP system.", "description": "## Supported ERPs\n - JobBOSS²\n - M1\n", "requestBody": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TimecardLineDetailCreateModel" } }, "text/json": { "schema": { "$ref": "#/components/schemas/TimecardLineDetailCreateModel" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/TimecardLineDetailCreateModel" } } } }, "responses": { "201": { "description": "Created" } } }, "get": { "tags": [ "TimecardLine" ], "summary": "Get a list of Timecard Lines from the ERP system that match the given filters.", "description": "Gets a list of TimecardLine.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ntimecardID|Yes|Yes|M1, JobBOSS², Macola\ntimecardLine|Yes|Yes|M1, JobBOSS², Macola\njobID|Yes|Yes|M1, JobBOSS², Macola\njobAssembly|Yes|Yes|M1, JobBOSS², Macola\njobOperation|Yes|Yes|M1, JobBOSS², Macola\nworkCenterID|Yes|Yes|M1, JobBOSS², Macola\nprocessID|Yes|Yes|M1, JobBOSS², Macola\nstatus|Yes|Yes|M1, JobBOSS², Macola\ntimecardType|Yes|Yes|M1, JobBOSS², Macola\ngoodQty|Yes|Yes|M1, JobBOSS², Macola\nscrapQty|Yes|Yes|M1, JobBOSS², Macola\nreworkQty|Yes|Yes|M1, JobBOSS², Macola\nrejectQty|Yes|Yes|M1, JobBOSS², Macola\nstartTime|Yes|Yes|M1, JobBOSS², Macola\nendTime|Yes|Yes|M1, JobBOSS², Macola\nmachineHours|Yes|Yes|M1, JobBOSS², Macola\nlaborHours|Yes|Yes|M1, JobBOSS², Macola\nemployeeID|Yes|Yes|JobBOSS²\ntimecardDate|Yes|Yes|JobBOSS²\nuniqueID|Yes|Yes|M1, JobBOSS², Macola\nrowVersion|Yes|Yes|M1, JobBOSS², Macola\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "timecardID[eq]": "abc123", "timecardLine[eq]": "abc123", "jobID[eq]": "abc123", "jobAssembly[eq]": "abc123", "jobOperation[gte]": 123, "workCenterID[eq]": "abc123", "processID[eq]": "abc123", "status[eq]": "abc123", "timecardType[eq]": "abc123", "goodQty[gte]": 123, "scrapQty[gte]": 123, "reworkQty[gte]": 123, "rejectQty[gte]": 123, "startTime[gte]": "2020-09-25T04:03:00.0000000", "endTime[gte]": "2020-09-25T04:03:00.0000000", "machineHours[gte]": 123, "laborHours[gte]": 123, "employeeID[gte]": 123, "timecardDate[gte]": "2020-09-25T04:03:00.0000000", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\nworkCenters|WorkCenters[]|This relationship is obsolete and will be removed in a future release. Use 'workCenter' instead\nworkCenter|WorkCenters|The workcenter associated with this line.\ntimecards|Timecards[]|This relationship is obsolete and will be removed in a future release. Use 'timecard' instead\ntimecard|Timecards|The timecard record associated with this line.\njobs|Jobs|This relationship is obsolete and will be removed in a future release. Use 'job' instead\njob|Jobs|The Job associated with this line.\nprocesses|Processes|This relationship is obsolete and will be removed in a future release. Use 'process' instead\nprocess|Processes|The Process associated with this line.\njobOperations|JobOperations|This relationship is obsolete and will be removed in a future release. Use 'jobOperation' instead\njobOperationx|JobOperations|The Job Operation associated with this line.\nsalesOrderDeliveries|SalesOrderDeliveries[]|\nsalesOrderJobs|SalesOrderJobs|This relationship is obsolete and will be removed in a future release. Use 'salesOrderJob' instead\nsalesOrderJob|SalesOrderJobs|The Sales Order Job associated with this line.\n", "schema": { "type": "string" } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/TimecardLineListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/TimecardLineListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/TimecardLineListResponse" } } } } } } }, "/api/v2.1/timecard-lines/{id}": { "get": { "tags": [ "TimecardLine" ], "summary": "Get a TimecardLine from the ERP system that match the given unique ID.", "description": "Gets a TimecardLine by unique ID.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n## Features by Field\nField |Supported ERPs\n------------|------------\ntimecardID||M1, JobBOSS², Macola\ntimecardLine||M1, JobBOSS², Macola\njobID||M1, JobBOSS², Macola\njobAssembly||M1, JobBOSS², Macola\njobOperation||M1, JobBOSS², Macola\nworkCenterID||M1, JobBOSS², Macola\nprocessID||M1, JobBOSS², Macola\nstatus||M1, JobBOSS², Macola\ntimecardType||M1, JobBOSS², Macola\ngoodQty||M1, JobBOSS², Macola\nscrapQty||M1, JobBOSS², Macola\nreworkQty||M1, JobBOSS², Macola\nrejectQty||M1, JobBOSS², Macola\nstartTime||M1, JobBOSS², Macola\nendTime||M1, JobBOSS², Macola\nmachineHours||M1, JobBOSS², Macola\nlaborHours||M1, JobBOSS², Macola\nemployeeID||JobBOSS²\ntimecardDate||JobBOSS²\nuniqueID||M1, JobBOSS², Macola\nrowVersion||M1, JobBOSS², Macola\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the TimecardLine", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/TimecardLine" } }, "application/json": { "schema": { "$ref": "#/components/schemas/TimecardLine" } }, "text/json": { "schema": { "$ref": "#/components/schemas/TimecardLine" } } } } } }, "patch": { "tags": [ "TimecardLine" ], "summary": "Update an existing Timecard Line in the ERP system.", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the TimecardLine", "required": true, "schema": { "type": "string" } } ], "requestBody": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TimecardLineUpdateModel" } }, "text/json": { "schema": { "$ref": "#/components/schemas/TimecardLineUpdateModel" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/TimecardLineUpdateModel" } } } }, "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/TimecardLine" } }, "application/json": { "schema": { "$ref": "#/components/schemas/TimecardLine" } }, "text/json": { "schema": { "$ref": "#/components/schemas/TimecardLine" } } } } } } }, "/api/v2.1/timezones": { "get": { "tags": [ "TimeZone" ], "summary": "Get a list of TimeZones from the ERP system that match the given filters.", "description": "Gets a list of TimeZone.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ntimeZoneName|Yes|Yes|M1, JobBOSS²\nuniqueID|Yes|Yes|M1, JobBOSS²\nrowVersion|Yes|Yes|M1, JobBOSS²\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "timeZoneName[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/TimeZoneListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/TimeZoneListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/TimeZoneListResponse" } } } } } } }, "/api/v2.1/valid-values/organization-types": { "get": { "tags": [ "ValidValues" ], "summary": "Gets the list of Organization Type codes.", "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidValueSet" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidValueSet" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidValueSet" } } } } } } }, "/api/v2.1/valid-values/location-types": { "get": { "tags": [ "ValidValues" ], "summary": "Gets the list of Location Type codes.", "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidValueSet" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidValueSet" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidValueSet" } } } } } } }, "/api/v2.1/valid-values/operation-types": { "get": { "tags": [ "ValidValues" ], "summary": "Gets the list of Operation Type codes.", "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/ValidValueSet" } }, "application/json": { "schema": { "$ref": "#/components/schemas/ValidValueSet" } }, "text/json": { "schema": { "$ref": "#/components/schemas/ValidValueSet" } } } } } } }, "/api/v2.1/work-centers": { "post": { "tags": [ "WorkCenter" ], "summary": "Create a new WorkCenter in the ERP system.", "description": "## Supported ERPs\n - JobBOSS²\n", "requestBody": { "description": "", "content": { "application/json": { "schema": { "$ref": "#/components/schemas/WorkCenterCreateModel" } }, "text/json": { "schema": { "$ref": "#/components/schemas/WorkCenterCreateModel" } }, "application/*+json": { "schema": { "$ref": "#/components/schemas/WorkCenterCreateModel" } } } }, "responses": { "201": { "description": "Created" } } }, "get": { "tags": [ "WorkCenter" ], "summary": "Get a list of WorkCenters from the ERP system that match the given filters.", "description": "Gets a list of WorkCenter.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nworkCenterID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nshortDesc|Yes|Yes|M1, JobBOSS², Macola, Deacom\ndeptID|Yes|Yes|M1, JobBOSS², Macola, Deacom\noverHeadRate|Yes|Yes|M1, JobBOSS², Macola, Deacom\nquoteRate|Yes|Yes|M1, JobBOSS², Macola, Deacom\nprocessID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nparentWorkCenterID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nshiftID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nuniqueID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Macola, Deacom\nlaborRate|Yes|Yes|JobBOSS²\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "workCenterID[eq]": "abc123", "shortDesc[eq]": "abc123", "deptID[eq]": "abc123", "overHeadRate[eq]": "abc123", "quoteRate[eq]": "abc123", "processID[eq]": "abc123", "parentWorkCenterID[eq]": "abc123", "shiftID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "laborRate[eq]": "abc123" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\ndepartments|Departments[]|\nshifts|Shifts[]|\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/WorkCenterListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/WorkCenterListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/WorkCenterListResponse" } } } } } } }, "/api/v2.1/work-centers/{id}": { "get": { "tags": [ "WorkCenter" ], "summary": "Get an WorkCenters from the ERP system that matches the given unique ID.", "description": "Gets a WorkCenter by unique ID.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Features by Field\nField |Supported ERPs\n------------|------------\nworkCenterID||M1, JobBOSS², Macola, Deacom\nshortDesc||M1, JobBOSS², Macola, Deacom\ndeptID||M1, JobBOSS², Macola, Deacom\noverHeadRate||M1, JobBOSS², Macola, Deacom\nquoteRate||M1, JobBOSS², Macola, Deacom\nprocessID||M1, JobBOSS², Macola, Deacom\nparentWorkCenterID||M1, JobBOSS², Macola, Deacom\nshiftID||M1, JobBOSS², Macola, Deacom\nuniqueID||M1, JobBOSS², Macola, Deacom\nrowVersion||M1, JobBOSS², Macola, Deacom\nlaborRate||JobBOSS²\n", "parameters": [ { "name": "id", "in": "path", "description": "The ID of the WorkCenter", "required": true, "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/WorkCenter" } }, "application/json": { "schema": { "$ref": "#/components/schemas/WorkCenter" } }, "text/json": { "schema": { "$ref": "#/components/schemas/WorkCenter" } } } } } } }, "/api/v2.1/work-center-rate-breaks": { "get": { "tags": [ "WorkCenterRateBreak" ], "summary": "Get a list of WorkCenterRateBreaks from the ERP system that match the given filters.", "description": "Gets a list of WorkCenterRateBreak.\n\n## Supported ERPs\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nworkCenterID|Yes|Yes|JobBOSS²\nshortDesc|Yes|Yes|JobBOSS²\nordinal|Yes|Yes|JobBOSS²\nsetupRate|Yes|Yes|JobBOSS²\nprodRate|Yes|Yes|JobBOSS²\nuniqueID|Yes|Yes|JobBOSS²\nrowVersion|Yes|Yes|JobBOSS²\nlaborRate|Yes|Yes|JobBOSS²\n", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "workCenterID[eq]": "abc123", "shortDesc[eq]": "abc123", "ordinal[gte]": 123, "setupRate[gte]": 123, "prodRate[gte]": 123, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "laborRate[eq]": "abc123" } } } } ], "responses": { "200": { "description": "Success", "content": { "text/plain": { "schema": { "$ref": "#/components/schemas/WorkCenterRateBreakListResponse" } }, "application/json": { "schema": { "$ref": "#/components/schemas/WorkCenterRateBreakListResponse" } }, "text/json": { "schema": { "$ref": "#/components/schemas/WorkCenterRateBreakListResponse" } } } } } } }, "/api/v2.1/view/ap-invoice-lines": { "get": { "tags": [ "View" ], "summary": "Gets a list of APInvoiceLine", "description": "Gets a list of APInvoiceLine.\n\n## Supported ERPs\n - M1\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ninvoiceID|Yes|Yes|M1\nlineID|No|Yes|M1\nitemType|No|Yes|M1\npartID|No|Yes|M1\npartRevisionID|No|Yes|M1\npartDescription|No|Yes|M1\npurchaseQuantity|No|Yes|M1\nbaseUnitCost|No|Yes|M1\nforeignUnitCost|No|Yes|M1\nbaseExtendedCost|No|Yes|M1\nforeignExtendedCost|No|Yes|M1\nbaseSetupCharge|No|Yes|M1\nforeignSetupCharge|No|Yes|M1\nunitOfMeasure|No|Yes|M1\nuniqueID|Yes|Yes|M1\nrowVersion|Yes|Yes|M1\n", "operationId": "GET__api_v2.1_view_ap-invoice-lines", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "invoiceID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/APInvoiceLine" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/APInvoiceLine" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/ap-invoices": { "get": { "tags": [ "View" ], "summary": "Gets a list of APInvoice", "description": "Gets a list of APInvoice.\n\n## Supported ERPs\n - M1\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ninvoiceID|Yes|Yes|M1, Macola\ninvoiceDate|Yes|Yes|M1, Macola\ndueDate|Yes|Yes|M1, Macola\ninvoiceType|Yes|Yes|M1, Macola\nisPostedToGL|Yes|Yes|M1, Macola\npostedDate|Yes|Yes|M1, Macola\nisOnHold|Yes|Yes|M1, Macola\nisOverpayment|No|Yes|M1, Macola\npaymentTermID|No|Yes|M1, Macola\nbaseTotal|No|Yes|M1, Macola\nforeignTotal|No|Yes|M1, Macola\nbaseBalance|No|Yes|M1, Macola\nforeignBalance|No|Yes|M1, Macola\nuniqueID|No|Yes|M1, Macola\nrowVersion|Yes|Yes|M1, Macola\ncurrency|No|Yes|M1, Macola\nsupplierID|No|Yes|M1, Macola\npaidDate|No|Yes|M1, Macola\nplantID|No|Yes|M1, Macola\n", "operationId": "GET__api_v2.1_view_ap-invoices", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "invoiceID[eq]": "abc123", "invoiceDate[gte]": "2020-09-25T00:00:00.0000000", "dueDate[gte]": "2020-09-25T00:00:00.0000000", "invoiceType[gte]": 123, "isPostedToGL[eq]": true, "postedDate[gte]": "2020-09-25T00:00:00.0000000", "isOnHold[eq]": true, "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/APInvoice" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/APInvoice" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/ar-invoices": { "get": { "tags": [ "View" ], "summary": "Gets a list of ARInvoice", "description": "Gets a list of ARInvoice.\n\n## Supported ERPs\n - M1\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ninvoiceID|Yes|Yes|M1, Macola\ninvoiceDate|Yes|Yes|M1, Macola\ndueDate|Yes|Yes|M1, Macola\ninvoiceType|Yes|Yes|M1, Macola\nisPostedToGL|Yes|Yes|M1, Macola\npostedDate|Yes|Yes|M1, Macola\nisOnHold|Yes|Yes|M1, Macola\nisOverpayment|Yes|Yes|M1, Macola\npaymentTermID|Yes|Yes|M1, Macola\ninvoiceTotalBase|Yes|Yes|M1, Macola\ninvoiceTotalForeign|No|Yes|M1, Macola\ninvoiceBalanceBase|No|Yes|M1, Macola\ninvoiceBalanceForeign|No|Yes|M1, Macola\nuniqueID|Yes|Yes|M1, Macola\nrowVersion|Yes|Yes|M1, Macola\ncustomerID|No|Yes|M1, Macola\npaidDate|No|Yes|M1, Macola\nplantID|No|Yes|M1, Macola\n", "operationId": "GET__api_v2.1_view_ar-invoices", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "invoiceID[eq]": "abc123", "invoiceDate[gte]": "2020-09-25T00:00:00.0000000", "dueDate[gte]": "2020-09-25T00:00:00.0000000", "invoiceType[gte]": 123, "isPostedToGL[eq]": true, "postedDate[gte]": "2020-09-25T00:00:00.0000000", "isOnHold[eq]": true, "isOverpayment[eq]": true, "paymentTermID[eq]": "abc123", "invoiceTotalBase[gte]": 123, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/ARInvoice" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/ARInvoice" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/ar-invoice-sales-people": { "get": { "tags": [ "View" ], "summary": "Gets a list of ARInvoiceSalesPerson", "description": "Gets a list of ARInvoiceSalesPerson.\n\n## Supported ERPs\n - M1\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ninvoiceID|Yes|Yes|M1, Macola\nemployeeID|Yes|Yes|M1, Macola\nsequenceID|No|Yes|M1, Macola\nuniqueID|Yes|Yes|M1, Macola\nrowVersion|Yes|Yes|M1, Macola\n", "operationId": "GET__api_v2.1_view_ar-invoice-sales-people", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "invoiceID[eq]": "abc123", "employeeID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/ARInvoiceSalesPerson" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/ARInvoiceSalesPerson" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/contacts": { "get": { "tags": [ "View" ], "summary": "Gets a list of Contact", "description": "Gets a list of Contact.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nuniqueID|Yes|Yes|M1, JobBOSS², Macola\nrowVersion|Yes|Yes|M1, JobBOSS², Macola\ncontactID|Yes|Yes|M1, JobBOSS², Macola\nname|Yes|Yes|M1, JobBOSS², Macola\norganizationID|Yes|Yes|M1, JobBOSS², Macola\norganizationTypes|Yes|Yes|JobBOSS²\nphoneNumber|Yes|Yes|M1, JobBOSS², Macola\nemailAddress|Yes|Yes|M1, JobBOSS², Macola\nisActive|Yes|Yes|M1, JobBOSS², Macola\ncomments|Yes|Yes|JobBOSS²\n", "operationId": "GET__api_v2.1_view_contacts", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "contactID[eq]": "abc123", "name[eq]": "abc123", "organizationID[eq]": "abc123", "organizationTypes[gte]": 123, "phoneNumber[eq]": "abc123", "emailAddress[eq]": "abc123", "isActive[eq]": true, "comments[eq]": "abc123" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\norganization|Organizations|The organization to which the Contact belongs.\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Contact" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Contact" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/cycle-codes": { "get": { "tags": [ "View" ], "summary": "Gets a list of CycleCode", "description": "Gets a list of CycleCode.\n\n## Supported ERPs\n - M1\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ndescription|No|Yes|M1\nuniqueID|Yes|Yes|M1\nrowVersion|Yes|Yes|M1\ncycleCodeID|Yes|Yes|M1\n", "operationId": "GET__api_v2.1_view_cycle-codes", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "cycleCodeID[eq]": "abc123" } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/CycleCode" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/CycleCode" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/departments": { "get": { "tags": [ "View" ], "summary": "Gets a list of Department", "description": "Gets a list of Department.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ndeptID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nshortDesc|Yes|Yes|M1, JobBOSS², Macola, Deacom\nuniqueID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Macola, Deacom\n", "operationId": "GET__api_v2.1_view_departments", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "deptID[eq]": "abc123", "shortDesc[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Department" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Department" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/dmr-claim-lines": { "get": { "tags": [ "View" ], "summary": "Gets a list of DmrClaimLine", "description": "Gets a list of DmrClaimLine.\n\n## Supported ERPs\n - M1\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nclaimLineID|Yes|Yes|M1\npartID|Yes|Yes|M1\npartRevisionID|Yes|Yes|M1\npartShortDescription|No|Yes|M1\npartLongDescription|No|Yes|M1\npartWarehouseID|Yes|Yes|M1\nquantity|No|Yes|M1\nquantityShipped|No|Yes|M1\nunitOfMeasure|No|Yes|M1\nunitCost|No|Yes|M1\nforeignUnitCost|No|Yes|M1\nuniqueID|Yes|Yes|M1\nrowVersion|Yes|Yes|M1\nclaimID|Yes|Yes|M1\n", "operationId": "GET__api_v2.1_view_dmr-claim-lines", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "claimLineID[eq]": "abc123", "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "partWarehouseID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "claimID[eq]": "abc123" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\nclaim|DmrClaims|\npart|Parts|\npartRevision|PartRevisions|\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/DmrClaimLine" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/DmrClaimLine" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/dmr-claims": { "get": { "tags": [ "View" ], "summary": "Gets a list of DmrClaim", "description": "Gets a list of DmrClaim.\n\n## Supported ERPs\n - M1\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nclaimID|Yes|Yes|M1\nsupplierOrganizationID|Yes|Yes|M1\nclaimDate|Yes|Yes|M1\nclaimTotal|No|Yes|M1\nforeignTotal|No|Yes|M1\ncurrency|No|Yes|M1\nplantID|Yes|Yes|M1\nprojectID|Yes|Yes|M1\nuniqueID|Yes|Yes|M1\nrowVersion|Yes|Yes|M1\nstatus|No|Yes|M1\n", "operationId": "GET__api_v2.1_view_dmr-claims", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "claimID[eq]": "abc123", "supplierOrganizationID[eq]": "abc123", "claimDate[gte]": "2020-09-25T00:00:00.0000000", "plantID[eq]": "abc123", "projectID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\nsupplier|Organizations|\nplant|Plants|\nproject|Projects|\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/DmrClaim" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/DmrClaim" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/employees": { "get": { "tags": [ "View" ], "summary": "Gets a list of Employee", "description": "Gets a list of Employee.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nemployeeID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nfirstName|Yes|Yes|M1, JobBOSS², Macola, Deacom\nlastName|Yes|Yes|M1, JobBOSS², Macola, Deacom\ntitle|Yes|Yes|M1, JobBOSS², Macola, Deacom\nsupervisorEmployeeID|Yes|Yes|M1, JobBOSS², Macola, Deacom\npayRate|Yes|Yes|M1, JobBOSS², Macola, Deacom\ndeptID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nshiftID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nisActive|Yes|Yes|JobBOSS², Deacom\nuniqueID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Macola, Deacom\n", "operationId": "GET__api_v2.1_view_employees", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "employeeID[eq]": "abc123", "firstName[eq]": "abc123", "lastName[eq]": "abc123", "title[eq]": "abc123", "supervisorEmployeeID[eq]": "abc123", "payRate[gte]": 123, "deptID[eq]": "abc123", "shiftID[eq]": "abc123", "isActive[eq]": true, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Employee" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Employee" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/gl-codes": { "get": { "tags": [ "View" ], "summary": "Gets a list of GLCode", "description": "Gets a list of GLCode.\n\n## Supported ERPs\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ndescription|No|Yes|JobBOSS²\nglCodeID|Yes|Yes|JobBOSS²\nrowVersion|Yes|Yes|JobBOSS²\nuniqueID|Yes|Yes|JobBOSS²\nisActive|Yes|Yes|JobBOSS²\n", "operationId": "GET__api_v2.1_view_gl-codes", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "glCodeID[eq]": "abc123", "rowVersion[gte]": 123, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "isActive[eq]": true } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/GLCode" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/GLCode" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/inspection-lines": { "get": { "tags": [ "View" ], "summary": "Gets a list of InspectionLine", "description": "Gets a list of InspectionLine.\n\n## Supported ERPs\n - M1\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nnotes|No|Yes|M1\nuniqueID|Yes|Yes|M1\nrowVersion|Yes|Yes|M1\ninspectionID|Yes|Yes|M1\ninspectionLineID|Yes|Yes|M1\npartID|Yes|Yes|M1\npartRevisionID|Yes|Yes|M1\npartWarehouseID|Yes|Yes|M1\npartBinID|Yes|Yes|M1\nquantityToInspect|No|Yes|M1\nsupplierOrganizationID|Yes|Yes|M1\nisInspectionComplete|Yes|Yes|M1\nunitCost|No|Yes|M1\nprojectID|Yes|Yes|M1\nprojectAreaID|Yes|Yes|M1\ninspectionDate|No|Yes|M1\nsourceType|Yes|Yes|M1\ninspectorEmployeeID|Yes|Yes|M1\n", "operationId": "GET__api_v2.1_view_inspection-lines", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "inspectionID[eq]": "abc123", "inspectionLineID[eq]": "abc123", "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "partWarehouseID[eq]": "abc123", "partBinID[eq]": "abc123", "supplierOrganizationID[eq]": "abc123", "isInspectionComplete[eq]": true, "projectID[eq]": "abc123", "projectAreaID[eq]": "abc123", "sourceType[gte]": 123, "inspectorEmployeeID[eq]": "abc123" } } } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/InspectionLine" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/InspectionLine" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/job-assemblies": { "get": { "tags": [ "View" ], "summary": "Gets a list of JobAssembly", "description": "Gets a list of JobAssembly.\n\n## Supported ERPs\n - M1\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\njobID|Yes|Yes|M1, Deacom\njobAssemblyID|Yes|Yes|M1, Deacom\nlevel|No|Yes|M1, Deacom\nparentAssemblyID|No|Yes|M1, Deacom\nsourceMethodID|No|Yes|M1, Deacom\nsourceRevisionID|No|Yes|M1, Deacom\npartID|Yes|Yes|M1, Deacom\npartRevisionID|Yes|Yes|M1, Deacom\npartShortDesc|No|Yes|M1, Deacom\nquantityPerParent|No|Yes|M1, Deacom\norderQty|No|Yes|M1, Deacom\ninventoryQty|No|Yes|M1, Deacom\nscrapQty|No|Yes|M1, Deacom\nquantityToInspect|No|Yes|M1, Deacom\nquantityRcvdToInv|No|Yes|M1, Deacom\nproductionQty|No|Yes|M1, Deacom\nquantityToMake|No|Yes|M1, Deacom\nquantityToPull|No|Yes|M1, Deacom\nquantityIssued|No|Yes|M1, Deacom\nquantityCompleted|No|Yes|M1, Deacom\nisProductionComplete|No|Yes|M1, Deacom\ncompletedDate|No|Yes|M1, Deacom\nuniqueID|Yes|Yes|M1, Deacom\nrowVersion|Yes|Yes|M1, Deacom\njobIsClosed|Yes|Yes|M1, Deacom\njobClosedDate|Yes|Yes|M1, Deacom\n", "operationId": "GET__api_v2.1_view_job-assemblies", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "jobID[eq]": "abc123", "jobAssemblyID[eq]": "abc123", "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "jobIsClosed[eq]": true, "jobClosedDate[gte]": "2020-09-25T04:03:00.0000000" } } } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/JobAssembly" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/JobAssembly" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/job-materials": { "get": { "tags": [ "View" ], "summary": "Gets a list of JobMaterial", "description": "Gets a list of JobMaterial.\n\n## Supported ERPs\n - JobBOSS²\n - M1\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\njobID|Yes|Yes|JobBOSS², M1, Deacom\njobAssemblyID|Yes|Yes|JobBOSS², M1, Deacom\njobAssemblySeq|No|Yes|M1\nmaterialPartID|Yes|Yes|JobBOSS², M1, Deacom\nmaterialPartRevisionID|Yes|Yes|JobBOSS², M1, Deacom\nestQuantity|No|Yes|JobBOSS², M1, Deacom\nestUnitCost|No|Yes|JobBOSS², M1, Deacom\nunitOfMeasure|No|Yes|JobBOSS², M1, Deacom\nleadTime|No|Yes|JobBOSS², M1, Deacom\nvendorID|Yes|Yes|JobBOSS², M1, Deacom\nuniqueID|Yes|Yes|JobBOSS², M1, Deacom\nrowVersion|Yes|Yes|JobBOSS², M1, Deacom\njobIsClosed|Yes|Yes|JobBOSS², M1, Deacom\njobClosedDate|Yes|Yes|JobBOSS², M1, Deacom\njobType|Yes|Yes|Deacom\n", "operationId": "GET__api_v2.1_view_job-materials", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "jobID[eq]": "abc123", "jobAssemblyID[eq]": "abc123", "materialPartID[eq]": "abc123", "materialPartRevisionID[eq]": "abc123", "vendorID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "jobIsClosed[eq]": true, "jobClosedDate[gte]": "2020-09-25T04:03:00.0000000", "jobType[eq]": "abc123" } } } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/JobMaterial" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/JobMaterial" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/job-operations": { "get": { "tags": [ "View" ], "summary": "Gets a list of JobOperation", "description": "Gets a list of JobOperation.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\njobID|Yes|Yes|M1, JobBOSS², Macola, Deacom\njobAssembly|Yes|Yes|M1, JobBOSS², Macola, Deacom\njobOperationSeq|Yes|Yes|M1, JobBOSS², Macola, Deacom\nstatus|Yes|Yes|M1, JobBOSS², Macola, Deacom\nworkCenterID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nprocessID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nshortDesc|Yes|Yes|M1, JobBOSS², Macola, Deacom\nlongDescText|Yes|Yes|M1, JobBOSS², Macola, Deacom\nlongDescFormatted|No|Yes|M1, JobBOSS², Macola, Deacom\noutsideOperation|Yes|Yes|M1, JobBOSS², Macola, Deacom\npartID|Yes|Yes|M1, JobBOSS², Macola, Deacom\npartRevisionID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nschedStartDate|Yes|Yes|M1, JobBOSS², Macola, Deacom\nschedEndDate|Yes|Yes|M1, JobBOSS², Macola, Deacom\nactStartDate|Yes|Yes|M1, JobBOSS², Macola, Deacom\nactEndDate|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestSetupHours|No|Yes|M1, JobBOSS², Macola, Deacom\nestProdHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestQueueHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestMoveHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestQAHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nactSetupHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nactualProdHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nactQAHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nvendorID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestSetupTimeValue|No|Yes|JobBOSS²\nestSetupTimeUnit|No|Yes|JobBOSS²\nestProdTimeValue|No|Yes|JobBOSS²\nestProdTimeUnit|No|Yes|JobBOSS²\nuniqueID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Macola, Deacom\noperationQty|No|Yes|M1, JobBOSS², Macola, Deacom\nquantityComplete|No|Yes|M1, JobBOSS², Macola, Deacom\nisSetupComplete|No|Yes|M1, JobBOSS², Macola, Deacom\nplantID|No|Yes|M1, JobBOSS², Macola, Deacom\npurchaseOrderID|No|Yes|M1, JobBOSS², Macola, Deacom\nsupplierOrganizationID|No|Yes|M1, JobBOSS², Macola, Deacom\npurchaseLocationID|No|Yes|M1, JobBOSS², Macola, Deacom\nRFQID|No|Yes|M1, JobBOSS², Macola, Deacom\ndefaultEmployeeID|Yes|Yes|JobBOSS²\ndefaultEmployeeID2|Yes|Yes|JobBOSS²\ndefaultEmployeeID3|Yes|Yes|JobBOSS²\nisUnattended|No|Yes|JobBOSS²\njobType|Yes|Yes|Deacom\nsupplierLeadTime|No|Yes|JobBOSS²\njobIsClosed|Yes|Yes|JobBOSS², M1, Deacom\njobClosedDate|Yes|Yes|JobBOSS², M1, Deacom\n", "operationId": "GET__api_v2.1_view_job-operations", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "jobID[eq]": "abc123", "jobAssembly[eq]": "abc123", "jobOperationSeq[gte]": 123, "status[eq]": "abc123", "workCenterID[eq]": "abc123", "processID[eq]": "abc123", "shortDesc[eq]": "abc123", "longDescText[eq]": "abc123", "outsideOperation[eq]": "abc123", "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "schedStartDate[gte]": "2020-09-25T04:03:00.0000000", "schedEndDate[gte]": "2020-09-25T04:03:00.0000000", "actStartDate[gte]": "2020-09-25T04:03:00.0000000", "actEndDate[gte]": "2020-09-25T04:03:00.0000000", "estProdHours[gte]": 123, "estQueueHours[gte]": 123, "estMoveHours[gte]": 123, "estQAHours[gte]": 123, "actSetupHours[gte]": 123, "actualProdHours[gte]": 123, "actQAHours[gte]": 123, "vendorID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "defaultEmployeeID[eq]": "abc123", "defaultEmployeeID2[eq]": "abc123", "defaultEmployeeID3[eq]": "abc123", "jobType[eq]": "abc123", "jobIsClosed[eq]": true, "jobClosedDate[gte]": "2020-09-25T04:03:00.0000000" } } } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/JobOperation" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/JobOperation" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/jobs": { "get": { "tags": [ "View" ], "summary": "Gets a list of Job", "description": "Gets a list of Job.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\njobID|Yes|Yes|M1, JobBOSS², Macola, Deacom\ncustomerID|No|Yes|M1, JobBOSS², Macola, Deacom\npartID|Yes|Yes|M1, JobBOSS², Macola, Deacom\npartRevisionID|Yes|Yes|M1, JobBOSS², Macola, Deacom\norderQty|No|Yes|M1, JobBOSS², Macola, Deacom\nprodQty|No|Yes|M1, JobBOSS², Macola, Deacom\nschedStartDate|No|Yes|M1, JobBOSS², Macola, Deacom\nschedEndDate|No|Yes|M1, JobBOSS², Macola, Deacom\nestLeadTime|No|Yes|M1, JobBOSS², Macola, Deacom\nactStartDate|No|Yes|M1, JobBOSS², Macola, Deacom\nactEndDate|No|Yes|M1, JobBOSS², Macola, Deacom\ndueDate|No|Yes|M1, JobBOSS², Macola, Deacom\nstatus|Yes|Yes|M1, JobBOSS², Macola, Deacom\nuniqueID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Macola, Deacom\njobCost|No|Yes|M1, JobBOSS², Macola, Deacom\njobCostForeign|No|Yes|M1, JobBOSS², Macola, Deacom\nplantID|Yes|Yes|M1, JobBOSS², Macola, Deacom\njobDate|Yes|Yes|M1, JobBOSS², Macola, Deacom\npartWarehouseID|Yes|Yes|M1, JobBOSS², Macola, Deacom\npartBinID|Yes|Yes|M1, JobBOSS², Macola, Deacom\npartShortDesc|No|Yes|M1, JobBOSS², Macola, Deacom\ninventoryQty|No|Yes|M1, JobBOSS², Macola, Deacom\nisPlanningComplete|Yes|Yes|M1, JobBOSS², Macola, Deacom\nisScheduleComplete|Yes|Yes|M1, JobBOSS², Macola, Deacom\nisReleasedToFloor|Yes|Yes|M1, JobBOSS², Macola, Deacom\nisOnHold|Yes|Yes|M1, JobBOSS², Macola, Deacom\ncompletedDate|No|Yes|M1, JobBOSS², Macola, Deacom\nquantityCompleted|No|Yes|M1, JobBOSS², Macola, Deacom\nquantityShipped|No|Yes|M1, JobBOSS², Macola, Deacom\nquantityRcvdToInventory|No|Yes|M1, JobBOSS², Macola, Deacom\nprojectID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nprojectAreaID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nisClosed|Yes|Yes|M1, JobBOSS², Macola, Deacom\nclosedDate|Yes|Yes|M1, JobBOSS², Macola, Deacom\njobPriorityID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nunitOfMeasure|No|Yes|M1, JobBOSS², Macola, Deacom\nplannerEmployeeID|No|Yes|M1, JobBOSS², Macola, Deacom\nparentJobID|Yes|Yes|JobBOSS²\nshortDesc|No|Yes|Deacom\nchildJobID|No|Yes|Deacom\njobType|Yes|Yes|Deacom\n", "operationId": "GET__api_v2.1_view_jobs", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "jobID[eq]": "abc123", "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "status[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "plantID[eq]": "abc123", "jobDate[gte]": "2020-09-25T04:03:00.0000000", "partWarehouseID[eq]": "abc123", "partBinID[eq]": "abc123", "isPlanningComplete[eq]": true, "isScheduleComplete[eq]": true, "isReleasedToFloor[eq]": true, "isOnHold[eq]": true, "projectID[eq]": "abc123", "projectAreaID[eq]": "abc123", "isClosed[eq]": true, "closedDate[gte]": "2020-09-25T04:03:00.0000000", "jobPriorityID[eq]": "abc123", "parentJobID[eq]": "abc123", "jobType[eq]": "abc123" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\njobOperations|JobOperations[]|\n", "schema": { "type": "string" } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Job" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Job" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/locations": { "get": { "tags": [ "View" ], "summary": "Gets a list of Location", "description": "Gets a list of Location.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nuniqueID|Yes|Yes|M1, JobBOSS², Macola\nrowVersion|Yes|Yes|M1, JobBOSS², Macola\nlocationID|Yes|Yes|M1, JobBOSS², Macola\nname|Yes|Yes|M1, JobBOSS², Macola\norganizationID|Yes|Yes|M1, JobBOSS², Macola\norganizationTypes|Yes|Yes|JobBOSS²\naddressLine1|No|Yes|M1, JobBOSS², Macola\naddressLine2|No|Yes|M1, JobBOSS², Macola\naddressLine3|No|Yes|M1, JobBOSS², Macola\ncity|Yes|Yes|M1, JobBOSS², Macola\ncounty|Yes|Yes|M1, JobBOSS², Macola\ncountry|Yes|Yes|M1, JobBOSS², Macola\npostalCode|Yes|Yes|M1, JobBOSS², Macola\nstate|Yes|Yes|M1, JobBOSS², Macola\nisActive|Yes|Yes|M1, JobBOSS², Macola\nlocationTypes|Yes|Yes|JobBOSS²\n", "operationId": "GET__api_v2.1_view_locations", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "locationID[eq]": "abc123", "name[eq]": "abc123", "organizationID[eq]": "abc123", "organizationTypes[gte]": 123, "city[eq]": "abc123", "county[eq]": "abc123", "country[eq]": "abc123", "postalCode[eq]": "abc123", "state[eq]": "abc123", "isActive[eq]": true, "locationTypes[gte]": 123 } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\norganization|Organizations|The organization to which the Location belongs.\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Location" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Location" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/organization-parts": { "get": { "tags": [ "View" ], "summary": "Gets a list of OrganizationPart", "description": "Gets a list of OrganizationPart.\n\n## Supported ERPs\n - JobBOSS²\n - M1\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartID|Yes|Yes|JobBOSS², M1\npartRevisionID|Yes|Yes|JobBOSS², M1\norganizationID|Yes|Yes|JobBOSS², M1\norganizationTypes|Yes|Yes|JobBOSS²\norganizationPartID|Yes|Yes|JobBOSS², M1\norganizationShortDesc|No|Yes|JobBOSS², M1\nuniqueID|Yes|Yes|JobBOSS², M1\nrowVersion|Yes|Yes|JobBOSS², M1\n", "operationId": "GET__api_v2.1_view_organization-parts", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "organizationID[eq]": "abc123", "organizationTypes[gte]": 123, "organizationPartID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/OrganizationPart" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/OrganizationPart" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/organizations": { "get": { "tags": [ "View" ], "summary": "Gets a list of Organization", "description": "Gets a list of Organization.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nuniqueID|Yes|Yes|M1, JobBOSS², Macola\nrowVersion|Yes|Yes|M1, JobBOSS², Macola\nname|Yes|Yes|M1, JobBOSS², Macola\norganizationID|Yes|Yes|M1, JobBOSS², Macola\ncountry|Yes|Yes|M1, JobBOSS², Macola\nisActive|Yes|Yes|M1, JobBOSS², Macola\norganizationTypes|Yes|Yes|JobBOSS², Macola\nphoneNumber|Yes|Yes|JobBOSS²\ncustomerPaymentTermID|Yes|Yes|JobBOSS²\ncustomerTaxCodeID|Yes|Yes|JobBOSS²\nsupplierPaymentTermID|Yes|Yes|JobBOSS²\nsupplierTaxCodeID|Yes|Yes|JobBOSS²\ncurrencyCode|Yes|Yes|JobBOSS²\nwebsiteUrl|No|Yes|JobBOSS²\ncomments|No|Yes|JobBOSS²\nsalesAccountID|Yes|Yes|JobBOSS²\nleadTimeDays|No|Yes|JobBOSS²\nminimumOrderAmount|No|Yes|JobBOSS²\ncustomerStatus|Yes|Yes|M1\nsupplierStatus|Yes|Yes|M1\n", "operationId": "GET__api_v2.1_view_organizations", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "name[eq]": "abc123", "organizationID[eq]": "abc123", "country[eq]": "abc123", "isActive[eq]": true, "organizationTypes[gte]": 123, "phoneNumber[eq]": "abc123", "customerPaymentTermID[eq]": "abc123", "customerTaxCodeID[eq]": "abc123", "supplierPaymentTermID[eq]": "abc123", "supplierTaxCodeID[eq]": "abc123", "currencyCode[eq]": "abc123", "salesAccountID[eq]": "abc123", "customerStatus[gte]": 123, "supplierStatus[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Organization" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Organization" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/part-bins": { "get": { "tags": [ "View" ], "summary": "Gets a list of PartBin", "description": "Gets a list of PartBin.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartRevisionID|Yes|Yes|M1, JobBOSS², Deacom\nwarehouseID|Yes|Yes|M1, JobBOSS², Deacom\npartBinID|Yes|Yes|M1, JobBOSS², Deacom\nquantityOnHand|No|Yes|M1, JobBOSS², Deacom\nquantityAllocated|No|Yes|M1, JobBOSS², Deacom\nquantityOnOrderSales|No|Yes|M1, JobBOSS², Deacom\nquantityOnOrderPurchases|No|Yes|M1, JobBOSS², Deacom\nquantityToInspect|No|Yes|M1, JobBOSS², Deacom\nquantityToReturn|No|Yes|M1, JobBOSS², Deacom\nuniqueID|Yes|Yes|M1, JobBOSS², Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Deacom\npartID|Yes|Yes|M1, JobBOSS², Deacom\nlotNumber|Yes|Yes|JobBOSS²\npurchaseOrderLineID|Yes|Yes|JobBOSS²\n", "operationId": "GET__api_v2.1_view_part-bins", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partRevisionID[eq]": "abc123", "warehouseID[eq]": "abc123", "partBinID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "partID[eq]": "abc123", "lotNumber[eq]": "abc123", "purchaseOrderLineID[eq]": "abc123" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\npartRevision|PartRevisions|\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartBin" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartBin" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/part-classes": { "get": { "tags": [ "View" ], "summary": "Gets a list of PartClass", "description": "Gets a list of PartClass.\n\n## Supported ERPs\n - M1\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ndescription|No|Yes|M1\nuniqueID|Yes|Yes|M1\nrowVersion|Yes|Yes|M1\npartClassID|No|Yes|M1\nisActive|Yes|Yes|M1\n", "operationId": "GET__api_v2.1_view_part-classes", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "isActive[eq]": true } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartClass" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartClass" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/part-cost-breaks": { "get": { "tags": [ "View" ], "summary": "Gets a list of PartCostBreak", "description": "Gets a list of PartCostBreak.\n\n## Supported ERPs\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartCostID|Yes|Yes|JobBOSS²\nquantity|No|Yes|JobBOSS²\nunitCost|No|Yes|JobBOSS²\nuniqueID|Yes|Yes|JobBOSS²\nrowVersion|Yes|Yes|JobBOSS²\n", "operationId": "GET__api_v2.1_view_part-cost-breaks", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partCostID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartCostBreak" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartCostBreak" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/part-costs": { "get": { "tags": [ "View" ], "summary": "Gets a list of PartRevision", "description": "Gets a list of PartRevision.\n\n## Supported ERPs\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartCostID|Yes|Yes|JobBOSS²\npartID|Yes|Yes|JobBOSS²\npartRevisionID|Yes|Yes|JobBOSS²\nstartDate|Yes|Yes|JobBOSS²\nendDate|Yes|Yes|JobBOSS²\nuniqueID|Yes|Yes|JobBOSS²\nrowVersion|Yes|Yes|JobBOSS²\n", "operationId": "GET__api_v2.1_view_part-costs", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partCostID[eq]": "abc123", "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "startDate[gte]": "2020-09-25T04:03:00.0000000", "endDate[gte]": "2020-09-25T04:03:00.0000000", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartRevision" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartRevision" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/part-groups": { "get": { "tags": [ "View" ], "summary": "Gets a list of PartGroup", "description": "Gets a list of PartGroup.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nuniqueID|Yes|Yes|M1, JobBOSS², Macola\nrowVersion|Yes|Yes|M1, JobBOSS², Macola\npartGroupID|Yes|Yes|M1, JobBOSS², Macola\nparentPartGroupID|Yes|Yes|M1, JobBOSS², Macola\ndescription|No|Yes|M1, JobBOSS², Macola\nisActive|Yes|Yes|M1, JobBOSS², Macola\ninactiveDate|No|Yes|M1, JobBOSS², Macola\n", "operationId": "GET__api_v2.1_view_part-groups", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "partGroupID[eq]": "abc123", "parentPartGroupID[eq]": "abc123", "isActive[eq]": true } } } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartGroup" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartGroup" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/part-materials": { "get": { "tags": [ "View" ], "summary": "Gets a list of PartMaterial", "description": "Gets a list of PartMaterial.\n\n## Supported ERPs\n - JobBOSS²\n - M1\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartID|Yes|Yes|JobBOSS², M1, Deacom\npartRevisionID|Yes|Yes|JobBOSS², M1, Deacom\npartOperationSeq|Yes|Yes|JobBOSS², M1, Deacom\nmaterialPartID|Yes|Yes|JobBOSS², M1, Deacom\nmaterialPartRevisionID|Yes|Yes|JobBOSS², M1, Deacom\nuniqueID|Yes|Yes|JobBOSS², M1, Deacom\nrowVersion|Yes|Yes|JobBOSS², M1, Deacom\nquantity|No|Yes|JobBOSS², M1, Deacom\nunitOfMeasure|No|Yes|JobBOSS², M1, Deacom\npartAssemblyID|No|Yes|M1\npartAssemblySeq|No|Yes|M1\n", "operationId": "GET__api_v2.1_view_part-materials", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "partOperationSeq[gte]": 123, "materialPartID[eq]": "abc123", "materialPartRevisionID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartMaterial" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartMaterial" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/part-operations": { "get": { "tags": [ "View" ], "summary": "Gets a list of PartOperation", "description": "Gets a list of PartOperation.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartID|Yes|Yes|M1, JobBOSS², Macola, Deacom\npartRevisionID|Yes|Yes|M1, JobBOSS², Macola, Deacom\npartOperationSeq|Yes|Yes|M1, JobBOSS², Macola, Deacom\nworkCenterID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nprocessID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nshortDesc|Yes|Yes|M1, JobBOSS², Macola, Deacom\nlongDescText|Yes|Yes|M1, JobBOSS², Macola, Deacom\nlongDescFormatted|Yes|Yes|M1, JobBOSS², Macola, Deacom\noutsideOperation|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestSetupHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestProdHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestQueueHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestMoveHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestQAHours|Yes|Yes|M1, JobBOSS², Macola, Deacom\nvendorID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nestSetupTimeValue|No|Yes|JobBOSS²\nestSetupTimeUnit|No|Yes|JobBOSS²\nestProdTimeValue|No|Yes|JobBOSS²\nestProdTimeUnit|No|Yes|JobBOSS²\nuniqueID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Macola, Deacom\n", "operationId": "GET__api_v2.1_view_part-operations", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "partOperationSeq[gte]": 123, "workCenterID[eq]": "abc123", "processID[eq]": "abc123", "shortDesc[eq]": "abc123", "longDescText[eq]": "abc123", "longDescFormatted[eq]": "abc123", "outsideOperation[eq]": "abc123", "estSetupHours[gte]": 123, "estProdHours[gte]": 123, "estQueueHours[gte]": 123, "estMoveHours[gte]": 123, "estQAHours[gte]": 123, "vendorID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartOperation" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartOperation" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/part-price-breaks": { "get": { "tags": [ "View" ], "summary": "Gets a list of PartPriceBreak", "description": "Gets a list of PartPriceBreak.\n\n## Supported ERPs\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartPriceID|Yes|Yes|JobBOSS²\nquantity|No|Yes|JobBOSS²\nunitPrice|No|Yes|JobBOSS²\nmarkup|No|Yes|JobBOSS²\ndiscount|No|Yes|JobBOSS²\nuniqueID|Yes|Yes|JobBOSS²\nrowVersion|Yes|Yes|JobBOSS²\n", "operationId": "GET__api_v2.1_view_part-price-breaks", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partPriceID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartPriceBreak" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartPriceBreak" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/part-prices": { "get": { "tags": [ "View" ], "summary": "Gets a list of PartPrice", "description": "Gets a list of PartPrice.\n\n## Supported ERPs\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartPriceID|Yes|Yes|JobBOSS²\npartID|Yes|Yes|JobBOSS²\npartRevisionID|Yes|Yes|JobBOSS²\nstartDate|Yes|Yes|JobBOSS²\nendDate|Yes|Yes|JobBOSS²\nisCustomerSpecific|Yes|Yes|JobBOSS²\nuniqueID|Yes|Yes|JobBOSS²\nrowVersion|Yes|Yes|JobBOSS²\n", "operationId": "GET__api_v2.1_view_part-prices", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partPriceID[eq]": "abc123", "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "startDate[gte]": "2020-09-25T04:03:00.0000000", "endDate[gte]": "2020-09-25T04:03:00.0000000", "isCustomerSpecific[eq]": true, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartPrice" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartPrice" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/part-revisions": { "get": { "tags": [ "View" ], "summary": "Gets a list of PartRevision", "description": "Gets a list of PartRevision.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartID|Yes|Yes|M1, JobBOSS², Macola, Deacom\npartRevisionID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nshortDesc|Yes|Yes|M1, JobBOSS², Macola, Deacom\nlongDescText|Yes|Yes|M1, JobBOSS², Macola, Deacom\nlongDescFormatted|Yes|Yes|M1, JobBOSS², Macola, Deacom\nuniqueID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Macola, Deacom\npartCost|No|Yes|M1, JobBOSS², Macola, Deacom\neffectiveStartDate|No|Yes|JobBOSS²\nexpirationEndDate|No|Yes|JobBOSS²\nsupplierOrganizationID|No|Yes|JobBOSS²\nleadTime|No|Yes|JobBOSS²\nquantityOnHand|No|Yes|JobBOSS²\npricingUnitOfMeasure|No|Yes|JobBOSS²\n", "operationId": "GET__api_v2.1_view_part-revisions", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "shortDesc[eq]": "abc123", "longDescText[eq]": "abc123", "longDescFormatted[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartRevision" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartRevision" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/parts": { "get": { "tags": [ "View" ], "summary": "Gets a list of Part", "description": "Gets a list of Part.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartClassID|No|Yes|M1, JobBOSS², Deacom\npartGroupID|Yes|Yes|M1, JobBOSS², Deacom\ncycleCodeID|No|Yes|M1, JobBOSS², Deacom\npartType|Yes|Yes|M1, JobBOSS², Deacom\npartID|Yes|Yes|M1, JobBOSS², Deacom\nalternatePartID|No|Yes|JobBOSS²\nuniqueID|Yes|Yes|M1, JobBOSS², Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Deacom\nisActive|Yes|Yes|M1, JobBOSS², Deacom\n", "operationId": "GET__api_v2.1_view_parts", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partGroupID[eq]": "abc123", "partType[gte]": 123, "partID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "isActive[eq]": true } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\npartClass|PartClasses|\npartGroup|PartGroups|\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Part" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Part" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/part-transactions": { "get": { "tags": [ "View" ], "summary": "Gets a list of PartTransaction", "description": "Gets a list of PartTransaction.\n\n## Supported ERPs\n - M1\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\npartTransactionID|Yes|Yes|M1\npartID|Yes|Yes|M1\npartRevisionID|Yes|Yes|M1\ntransactionType|Yes|Yes|M1\nsource|Yes|Yes|M1\nreceiptType|Yes|Yes|M1\nisNonInventoryTransaction|No|Yes|M1\npurchaseOrderID|Yes|Yes|M1\njobID|Yes|Yes|M1\npartWarehouseID|Yes|Yes|M1\npartBinID|Yes|Yes|M1\nsupplierOrganizationID|Yes|Yes|M1\ninventoryQtyRcvd|No|Yes|M1\nscrapQty|No|Yes|M1\nquantityToInspect|No|Yes|M1\nquantityToReturn|No|Yes|M1\npurchaseQtyRcvd|No|Yes|M1\npurchaseUnitCost|No|Yes|M1\ntransactionDate|Yes|Yes|M1\nreference|No|Yes|M1\nshipmentID|No|Yes|M1\nshipmentLineID|No|Yes|M1\nreceiptID|No|Yes|M1\nDMRShipmentID|No|Yes|M1\nRMAReceiptID|No|Yes|M1\ninspectionID|No|Yes|M1\ninventoryCountID|No|Yes|M1\nwarehouseTransferID|No|Yes|M1\nwarehouseReceiptID|No|Yes|M1\nprojectID|No|Yes|M1\nprojectAreaID|No|Yes|M1\nplantID|No|Yes|M1\ncostType|No|Yes|M1\nquantity|No|Yes|M1\nunitLaborCost|No|Yes|M1\nunitOverheadCost|No|Yes|M1\nunitMaterialCost|No|Yes|M1\nunitSubcontractCost|No|Yes|M1\nuniqueID|Yes|Yes|M1\nrowVersion|Yes|Yes|M1\n", "operationId": "GET__api_v2.1_view_part-transactions", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "partTransactionID[eq]": "abc123", "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "transactionType[gte]": 123, "source[gte]": 123, "receiptType[gte]": 123, "purchaseOrderID[eq]": "abc123", "jobID[eq]": "abc123", "partWarehouseID[eq]": "abc123", "partBinID[eq]": "abc123", "supplierOrganizationID[eq]": "abc123", "transactionDate[gte]": "2020-09-25T04:03:00.0000000", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartTransaction" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartTransaction" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/payment-terms": { "get": { "tags": [ "View" ], "summary": "Gets a list of PaymentTerm", "description": "Gets a list of PaymentTerm.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ndescription|No|Yes|M1, JobBOSS², Macola\npaymentTermID|Yes|Yes|M1, JobBOSS², Macola\nrowVersion|Yes|Yes|M1, JobBOSS², Macola\nuniqueID|Yes|Yes|M1, JobBOSS², Macola\n", "operationId": "GET__api_v2.1_view_payment-terms", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "paymentTermID[eq]": "abc123", "rowVersion[gte]": 123, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8" } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PaymentTerm" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PaymentTerm" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/plants": { "get": { "tags": [ "View" ], "summary": "Gets a list of Plant", "description": "Gets a list of Plant.\n\n## Supported ERPs\n - M1\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nplantID|Yes|Yes|M1, Macola\nname|Yes|Yes|M1, Macola\nuniqueID|Yes|Yes|M1, Macola\nrowVersion|Yes|Yes|M1, Macola\n", "operationId": "GET__api_v2.1_view_plants", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "plantID[eq]": "abc123", "name[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Plant" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Plant" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/processes": { "get": { "tags": [ "View" ], "summary": "Gets a list of Process", "description": "Gets a list of Process.\n\n## Supported ERPs\n - M1\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nprocessID|Yes|Yes|M1, Macola\nshortDesc|Yes|Yes|M1, Macola\nsetupRate|Yes|Yes|M1, Macola\nproductionRate|Yes|Yes|M1, Macola\nuniqueID|Yes|Yes|M1, Macola\nrowVersion|Yes|Yes|M1, Macola\n", "operationId": "GET__api_v2.1_view_processes", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "processID[eq]": "abc123", "shortDesc[eq]": "abc123", "setupRate[eq]": "abc123", "productionRate[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Process" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Process" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/production-calendars": { "get": { "tags": [ "View" ], "summary": "Gets a list of ProductionCalendar", "description": "Gets a list of ProductionCalendar.\n\n## Supported ERPs\n - M1\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nproductionDate|Yes|Yes|M1, Macola\nproductionHours|Yes|Yes|M1, Macola\nproductionStartTime|Yes|Yes|M1, Macola\nworkCenterID|Yes|Yes|M1, Macola\nplantID|Yes|Yes|M1, Macola\ndepartment|Yes|Yes|M1, Macola\nuniqueID|Yes|Yes|M1, Macola\nrowVersion|Yes|Yes|M1, Macola\n", "operationId": "GET__api_v2.1_view_production-calendars", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "productionDate[gte]": "2020-09-25T04:03:00.0000000", "productionHours[gte]": 123, "productionStartTime[eq]": "abc123", "workCenterID[eq]": "abc123", "plantID[eq]": "abc123", "department[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/ProductionCalendar" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/ProductionCalendar" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/projects": { "get": { "tags": [ "View" ], "summary": "Gets a list of Project", "description": "Gets a list of Project.\n\n## Supported ERPs\n - M1\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nuniqueID|Yes|Yes|M1, Macola\nrowVersion|Yes|Yes|M1, Macola\nprojectID|Yes|Yes|M1, Macola\ncustomerID|Yes|Yes|M1, Macola\nlocationID|No|Yes|M1, Macola\ncontactID|No|Yes|M1, Macola\ndueDate|No|Yes|M1, Macola\nprojectDate|Yes|Yes|M1, Macola\nclosedDate|No|Yes|M1, Macola\nshortDescription|No|Yes|M1, Macola\nlongDescription|No|Yes|M1, Macola\nstatusCode|No|Yes|M1, Macola\nisClosed|Yes|Yes|M1, Macola\n", "operationId": "GET__api_v2.1_view_projects", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "projectID[eq]": "abc123", "customerID[eq]": "abc123", "projectDate[gte]": "2020-09-25T00:00:00.0000000", "isClosed[eq]": true } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\ncustomer|Organizations|The Customer Organization.\n", "schema": { "type": "string" } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Project" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Project" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/purchase-order-lines": { "get": { "tags": [ "View" ], "summary": "Gets a list of PurchaseOrderLine", "description": "Gets a list of PurchaseOrderLine.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ndueDate|Yes|Yes|M1, JobBOSS², Deacom\nextendedCost|No|Yes|M1, JobBOSS², Deacom\nforeignExtendedCost|No|Yes|M1, JobBOSS², Deacom\npartID|Yes|Yes|M1, JobBOSS², Deacom\npartRevisionID|Yes|Yes|M1, JobBOSS², Deacom\npartDescription|No|Yes|M1, JobBOSS², Deacom\npartWarehouse|No|Yes|M1, JobBOSS², Deacom\npurchaseOrderLineID|Yes|Yes|M1, JobBOSS², Deacom\nquantity|No|Yes|M1, JobBOSS², Deacom\nquantityReceived|No|Yes|M1, JobBOSS², Deacom\nunitCost|No|Yes|M1, JobBOSS², Deacom\nforeignUnitCost|No|Yes|M1, JobBOSS², Deacom\nisReceived|Yes|Yes|M1, JobBOSS², Deacom\ninspectionRequired|Yes|Yes|M1, JobBOSS², Deacom\nuniqueID|Yes|Yes|M1, JobBOSS², Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Deacom\nisClosed|Yes|Yes|M1, JobBOSS², Deacom\npurchaseOrderID|Yes|Yes|M1, JobBOSS², Deacom\nunitOfMeasure|No|Yes|JobBOSS², Deacom\njobID|Yes|Yes|JobBOSS²\n", "operationId": "GET__api_v2.1_view_purchase-order-lines", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "dueDate[gte]": "2020-09-25T00:00:00.0000000", "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "purchaseOrderLineID[eq]": "abc123", "isReceived[eq]": true, "inspectionRequired[eq]": true, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "isClosed[eq]": true, "purchaseOrderID[eq]": "abc123", "jobID[eq]": "abc123" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\npurchaseOrder|PurchaseOrders|\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PurchaseOrderLine" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PurchaseOrderLine" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/purchase-orders": { "get": { "tags": [ "View" ], "summary": "Gets a list of PurchaseOrder", "description": "Gets a list of PurchaseOrder.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\napInvoiceLocationID|No|Yes|M1, JobBOSS², Deacom\nbuyerEmployeeID|No|Yes|M1, JobBOSS², Deacom\ncurrency|No|Yes|M1, JobBOSS², Deacom\norderDate|Yes|Yes|M1, JobBOSS², Deacom\nplantID|Yes|Yes|M1, JobBOSS², Deacom\nprojectID|Yes|Yes|M1, JobBOSS², Deacom\npurchaseOrderID|Yes|Yes|M1, JobBOSS², Deacom\nsupplierOrganizationID|Yes|Yes|M1, JobBOSS², Deacom\nuniqueID|Yes|Yes|M1, JobBOSS², Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Deacom\nisClosed|Yes|Yes|M1, JobBOSS², Deacom\n", "operationId": "GET__api_v2.1_view_purchase-orders", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "orderDate[gte]": "2020-09-25T00:00:00.0000000", "plantID[eq]": "abc123", "projectID[eq]": "abc123", "purchaseOrderID[eq]": "abc123", "supplierOrganizationID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "isClosed[eq]": true } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PurchaseOrder" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PurchaseOrder" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/quote-lines": { "get": { "tags": [ "View" ], "summary": "Gets a list of QuoteLine", "description": "Gets a list of QuoteLine.\n\n## Supported ERPs\n - M1\n - Macola\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nuniqueID|Yes|Yes|M1, Macola, JobBOSS²\nrowVersion|Yes|Yes|M1, Macola, JobBOSS²\nquoteID|Yes|Yes|M1, Macola, JobBOSS²\npartID|Yes|Yes|M1, Macola, JobBOSS²\npartRevisionID|Yes|Yes|M1, Macola, JobBOSS²\npartGroupID|Yes|Yes|M1, Macola, JobBOSS²\nshortDescription|No|Yes|M1, Macola, JobBOSS²\nquoteQuantityID|No|Yes|M1, Macola, JobBOSS²\nquoteLineID|Yes|Yes|M1, Macola, JobBOSS²\nresolutionReasonID|No|Yes|M1, Macola, JobBOSS²\nlocationID|No|Yes|Macola\n", "operationId": "GET__api_v2.1_view_quote-lines", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "quoteID[eq]": "abc123", "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "partGroupID[eq]": "abc123", "quoteLineID[eq]": "abc123" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\nquote|Quotes|The parent Quote header for this line.\nresolutionReason|Reasons|The reason detail for the resolution.\npartGroup|PartGroups|The parent Quote header for this line.\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/QuoteLine" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/QuoteLine" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/quote-quantities": { "get": { "tags": [ "View" ], "summary": "Provides a breakdown of pricing for quote line items based on any included quantity discounts.", "description": "Gets a list of QuoteQuantity.\n\n## Supported ERPs\n - M1\n - Macola\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nuniqueID|Yes|Yes|M1, Macola, JobBOSS²\nrowVersion|Yes|Yes|M1, Macola, JobBOSS²\nquoteQuantityID|Yes|Yes|M1, Macola, JobBOSS²\nquoteID|Yes|Yes|M1, Macola, JobBOSS²\nquoteLineID|Yes|Yes|M1, Macola, JobBOSS²\nquantity|No|Yes|M1, Macola, JobBOSS²\nbaseUnitPrice|No|Yes|M1, Macola, JobBOSS²\nforeignUnitPrice|No|Yes|M1, Macola, JobBOSS²\n", "operationId": "GET__api_v2.1_view_quote-quantities", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "quoteQuantityID[eq]": "abc123", "quoteID[eq]": "abc123", "quoteLineID[eq]": "abc123" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\nquote|Quotes|The parent Quote header for this line.\nquoteLine|QuoteLines|The relaed quote line.\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/QuoteQuantity" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/QuoteQuantity" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/quotes": { "get": { "tags": [ "View" ], "summary": "Gets a list of Quote", "description": "Gets a list of Quote.\n\n## Supported ERPs\n - M1\n - Macola\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nuniqueID|Yes|Yes|M1, Macola, JobBOSS²\nrowVersion|Yes|Yes|M1, Macola, JobBOSS²\nquoteID|Yes|Yes|M1, Macola, JobBOSS²\nemployeeID|Yes|Yes|M1, Macola, JobBOSS²\norganizationID|Yes|Yes|M1, Macola, JobBOSS²\nlocationID|Yes|Yes|M1, Macola, JobBOSS²\ncontactID|No|Yes|M1, Macola, JobBOSS²\ninvoiceLocationID|No|Yes|M1, Macola, JobBOSS²\nquoteDate|Yes|Yes|M1, Macola, JobBOSS²\ndueDate|No|Yes|M1, Macola, JobBOSS²\nisClosed|Yes|Yes|M1, Macola, JobBOSS²\nclosedDate|Yes|Yes|M1, Macola, JobBOSS²\ncurrencyRateID|No|Yes|M1, Macola, JobBOSS²\ncustomerID|Yes|Yes|M1, Macola, JobBOSS²\nexpirationDate|Yes|Yes|M1, Macola, JobBOSS²\nplantID|No|Yes|M1, Macola, JobBOSS²\nprojectID|No|Yes|M1, Macola, JobBOSS²\nshipToOrganizationID|No|Yes|M1, Macola, JobBOSS²\nshipToContactID|No|Yes|M1, Macola, JobBOSS²\nshipToLocationID|No|Yes|M1, Macola, JobBOSS²\nstatusCode|No|Yes|M1, Macola, JobBOSS²\ntotalSalesAmount|No|Yes|Macola\nawardProbability|No|Yes|Macola\nlostSaleCode|No|Yes|Macola\n", "operationId": "GET__api_v2.1_view_quotes", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "quoteID[eq]": "abc123", "employeeID[eq]": "abc123", "organizationID[eq]": "abc123", "locationID[eq]": "abc123", "quoteDate[gte]": "2020-09-25T00:00:00.0000000", "isClosed[eq]": true, "closedDate[gte]": "2020-09-25T00:00:00.0000000", "customerID[eq]": "abc123", "expirationDate[gte]": "2020-09-25T00:00:00.0000000" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\ncustomer|Organizations|The Customer Organization.\ncontact|Contacts|The Customer Contact record.\nshipTo|Organizations|The Ship To Organization.\nshipToContact|Contacts|The Ship To Contact record.\nproject|Projects|The Project record for this quote.\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Quote" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Quote" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/quote-sales-people": { "get": { "tags": [ "View" ], "summary": "Gets a list of QuoteSalesPerson", "description": "Gets a list of QuoteSalesPerson.\n\n## Supported ERPs\n - M1\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nquoteID|Yes|Yes|M1, Macola\nemployeeID|Yes|Yes|M1, Macola\npercentage|No|Yes|M1, Macola\nisClosed|Yes|Yes|M1, Macola\nuniqueID|Yes|Yes|M1, Macola\nrowVersion|Yes|Yes|M1, Macola\nsequenceNo|No|Yes|Macola\n", "operationId": "GET__api_v2.1_view_quote-sales-people", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "quoteID[eq]": "abc123", "employeeID[eq]": "abc123", "isClosed[eq]": true, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\nquote|Quotes|The parent Quote header for this line.\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/QuoteSalesPerson" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/QuoteSalesPerson" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/reasons": { "get": { "tags": [ "View" ], "summary": "Gets a list of Reason", "description": "Gets a list of Reason.\n\n## Supported ERPs\n - M1\n - Macola\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nreasonID|Yes|Yes|M1, Macola, JobBOSS²\ndescription|No|Yes|M1, Macola, JobBOSS²\nname|Yes|Yes|JobBOSS²\nuniqueID|Yes|Yes|M1, Macola, JobBOSS²\nrowVersion|Yes|Yes|M1, Macola, JobBOSS²\n", "operationId": "GET__api_v2.1_view_reasons", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "reasonID[eq]": "abc123", "name[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Reason" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Reason" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/rma-claim-lines": { "get": { "tags": [ "View" ], "summary": "Gets a list of RmaClaimLine", "description": "Gets a list of RmaClaimLine.\n\n## Supported ERPs\n - M1\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nunitPrice|No|Yes|M1\nforeignUnitPrice|No|Yes|M1\nextendedPrice|No|Yes|M1\nforeignExtendedPrice|No|Yes|M1\nuniqueID|Yes|Yes|M1\nrowVersion|Yes|Yes|M1\nclaimID|Yes|Yes|M1\nclaimLineID|Yes|Yes|M1\nquantity|No|Yes|M1\npartID|Yes|Yes|M1\npartRevisionID|Yes|Yes|M1\n", "operationId": "GET__api_v2.1_view_rma-claim-lines", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "claimID[eq]": "abc123", "claimLineID[eq]": "abc123", "partID[eq]": "abc123", "partRevisionID[eq]": "abc123" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\nclaim|RmaClaims|\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/RmaClaimLine" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/RmaClaimLine" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/rma-claims": { "get": { "tags": [ "View" ], "summary": "Gets a list of RmaClaim", "description": "Gets a list of RmaClaim.\n\n## Supported ERPs\n - M1\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nclaimDate|Yes|Yes|M1\nclaimTotal|Yes|Yes|M1\nforeignTotal|Yes|Yes|M1\ncurrency|No|Yes|M1\ncustomerOrganizationID|Yes|Yes|M1\nplantID|Yes|Yes|M1\nclaimID|Yes|Yes|M1\nuniqueID|Yes|Yes|M1\nrowVersion|Yes|Yes|M1\nstatus|Yes|Yes|M1\n", "operationId": "GET__api_v2.1_view_rma-claims", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "claimDate[gte]": "2020-09-25T00:00:00.0000000", "claimTotal[gte]": 123, "foreignTotal[gte]": 123, "customerOrganizationID[eq]": "abc123", "plantID[eq]": "abc123", "claimID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "status[eq]": "abc123" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\ncustomer|Organizations|\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/RmaClaim" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/RmaClaim" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/rma-receipt-lines": { "get": { "tags": [ "View" ], "summary": "Gets a list of RmaReceiptLine", "description": "Gets a list of RmaReceiptLine.\n\n## Supported ERPs\n - M1\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ndescription|No|Yes|M1\nisInspected|Yes|Yes|M1\npartID|Yes|Yes|M1\npartLongDescription|No|Yes|M1\npartRevisionID|Yes|Yes|M1\npartWarehouseID|Yes|Yes|M1\nprojectID|Yes|Yes|M1\nisReceived|Yes|Yes|M1\ninspectionRequired|Yes|Yes|M1\nclaimLineID|Yes|Yes|M1\nclaimQuantity|Yes|Yes|M1\nreceiptID|Yes|Yes|M1\nreceiptLineID|Yes|Yes|M1\nuniqueID|Yes|Yes|M1\nrowVersion|Yes|Yes|M1\nisClosed|Yes|Yes|M1\nisReversed|Yes|Yes|M1\nclaimID|Yes|Yes|M1\n", "operationId": "GET__api_v2.1_view_rma-receipt-lines", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "isInspected[eq]": true, "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "partWarehouseID[eq]": "abc123", "projectID[eq]": "abc123", "isReceived[eq]": true, "inspectionRequired[eq]": true, "claimLineID[eq]": "abc123", "claimQuantity[gte]": 123, "receiptID[eq]": "abc123", "receiptLineID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "isClosed[eq]": true, "isReversed[eq]": true, "claimID[eq]": "abc123" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\nclaim|RmaClaims|\nclaimLine|RmaClaimLines|\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/RmaReceiptLine" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/RmaReceiptLine" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/sales-accounts": { "get": { "tags": [ "View" ], "summary": "Gets a list of SalesAccount", "description": "Gets a list of SalesAccount.\n\n## Supported ERPs\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nsalesAccountID|Yes|Yes|JobBOSS²\nname|Yes|Yes|JobBOSS²\nisActive|Yes|Yes|JobBOSS²\nuniqueID|Yes|Yes|JobBOSS²\nrowVersion|Yes|Yes|JobBOSS²\n", "operationId": "GET__api_v2.1_view_sales-accounts", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "salesAccountID[eq]": "abc123", "name[eq]": "abc123", "isActive[eq]": true, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/SalesAccount" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/SalesAccount" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/sales-order-deliveries": { "get": { "tags": [ "View" ], "summary": "Gets a list of SalesOrderDelivery", "description": "Gets a list of SalesOrderDelivery.\n\n## Supported ERPs\n - M1\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nsalesOrderID|Yes|Yes|M1, Macola\norderLine|Yes|Yes|M1, Macola\norderLineDelivery|Yes|Yes|M1, Macola\npromisedDate|Yes|Yes|M1, Macola\npromisedQty|Yes|Yes|M1, Macola\nshippedDate|Yes|Yes|M1, Macola\nshippedQty|Yes|Yes|M1, Macola\nuniqueID|Yes|Yes|M1, Macola\nrowVersion|Yes|Yes|M1, Macola\ndeliveryTypeCode|No|Yes|M1, Macola\nsalesOrderType|No|Yes|Macola\n", "operationId": "GET__api_v2.1_view_sales-order-deliveries", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "salesOrderID[eq]": "abc123", "orderLine[gte]": 123, "orderLineDelivery[eq]": "abc123", "promisedDate[gte]": "2020-09-25T04:03:00.0000000", "promisedQty[gte]": 123, "shippedDate[gte]": "2020-09-25T04:03:00.0000000", "shippedQty[gte]": 123, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\nsalesOrderJobs|SalesOrderJobs[]|\n", "schema": { "type": "string" } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/SalesOrderDelivery" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/SalesOrderDelivery" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/sales-order-jobs": { "get": { "tags": [ "View" ], "summary": "Gets a list of SalesOrderJob", "description": "Gets a list of SalesOrderJob.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nsalesOrderID|Yes|Yes|M1, JobBOSS², Macola\norderLine|Yes|Yes|M1, JobBOSS², Macola\norderLineDelivery|Yes|Yes|M1, JobBOSS², Macola\njobID|Yes|Yes|M1, JobBOSS², Macola\norderJobSeq|Yes|Yes|M1, JobBOSS², Macola\nuniqueID|Yes|Yes|M1, JobBOSS², Macola\nrowVersion|Yes|Yes|M1, JobBOSS², Macola\n", "operationId": "GET__api_v2.1_view_sales-order-jobs", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "salesOrderID[eq]": "abc123", "orderLine[gte]": 123, "orderLineDelivery[eq]": "abc123", "jobID[eq]": "abc123", "orderJobSeq[gte]": 123, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/SalesOrderJob" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/SalesOrderJob" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/sales-order-lines": { "get": { "tags": [ "View" ], "summary": "Gets a list of SalesOrderLine", "description": "Gets a list of SalesOrderLine.\n\n## Supported ERPs\n - M1\n - Macola\n - JobBOSS²\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nsalesOrderID|Yes|Yes|M1, Macola, JobBOSS², Deacom\norderLine|Yes|Yes|M1, Macola, JobBOSS², Deacom\ntotalSalePrice|Yes|Yes|M1, Macola, JobBOSS², Deacom\nuniqueID|Yes|Yes|M1, Macola, JobBOSS², Deacom\nrowVersion|Yes|Yes|M1, Macola, JobBOSS², Deacom\npartID|No|Yes|M1, Macola, JobBOSS², Deacom\npartRevisionID|No|Yes|M1, Macola, JobBOSS², Deacom\npartGroupID|No|Yes|M1, Macola, JobBOSS², Deacom\nshortDescription|No|Yes|M1, Macola, JobBOSS², Deacom\nsaleUom|No|Yes|M1, Macola, JobBOSS², Deacom\nbaseUnitPrice|No|Yes|M1, Macola, JobBOSS², Deacom\nforeignUnitPrice|No|Yes|M1, Macola, JobBOSS², Deacom\nbaseExtendedPrice|No|Yes|M1, Macola, JobBOSS², Deacom\nforeignExtendedPrice|No|Yes|M1, Macola, JobBOSS², Deacom\nquantityOrdered|No|Yes|M1, Macola, JobBOSS², Deacom\nquantityShipped|No|Yes|M1, Macola, JobBOSS², Deacom\npurchaseOrderCost|No|Yes|M1, Macola, JobBOSS², Deacom\npurchaseOrderCostForeign|No|Yes|M1, Macola, JobBOSS², Deacom\nsalesOrderType|No|Yes|Macola\nlocationID|No|Yes|Macola\nshippedDate|No|Yes|Macola\nisPosted|No|Yes|Macola\ndueDate|No|Yes|JobBOSS²\n", "operationId": "GET__api_v2.1_view_sales-order-lines", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "salesOrderID[eq]": "abc123", "orderLine[gte]": 123, "totalSalePrice[gte]": 123, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\nsalesOrderDeliveries|SalesOrderDeliveries[]|\nsalesOrderJobs|SalesOrderJobs|\nsalesOrder|SalesOrders|\npartRevision|PartRevisions|\npartGroup|PartGroups|\n", "schema": { "type": "string" } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/SalesOrderLine" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/SalesOrderLine" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/sales-orders": { "get": { "tags": [ "View" ], "summary": "Gets a list of SalesOrder", "description": "Gets a list of SalesOrder.\n\n## Supported ERPs\n - M1\n - Macola\n - JobBOSS²\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nuniqueID|Yes|Yes|M1, Macola, JobBOSS², Deacom\nrowVersion|Yes|Yes|M1, Macola, JobBOSS², Deacom\nsalesOrderID|Yes|Yes|M1, Macola, JobBOSS², Deacom\ncustomerID|Yes|Yes|M1, Macola, JobBOSS², Deacom\norderDate|Yes|Yes|M1, Macola, JobBOSS², Deacom\nplantID|No|Yes|M1, Macola, JobBOSS², Deacom\nprojectID|No|Yes|M1, Macola, JobBOSS², Deacom\nsalesOrderType|No|Yes|Macola\ntotalSalesAmount|No|Yes|Macola\nstatus|No|Yes|Macola\noriginalOrderType|No|Yes|Macola\nquoteID|No|Yes|Macola\nclosedDate|Yes|Yes|Macola\n", "operationId": "GET__api_v2.1_view_sales-orders", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "salesOrderID[eq]": "abc123", "customerID[eq]": "abc123", "orderDate[gte]": "2020-09-25T00:00:00.0000000", "closedDate[gte]": "2020-09-25T00:00:00.0000000" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\ncustomer|Organizations|The Customer Organization record.\nplant|Plants|The Plant record.\nproject|Projects|The Project record for this Sales Order.\n", "schema": { "type": "string" } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/SalesOrder" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/SalesOrder" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/sales-order-sales-people": { "get": { "tags": [ "View" ], "summary": "Gets a list of SalesOrderSalesPerson", "description": "Gets a list of SalesOrderSalesPerson.\n\n## Supported ERPs\n - M1\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nsalesOrderID|Yes|Yes|M1, Macola\nsalesEmployeeID|Yes|Yes|M1, Macola\nuniqueID|Yes|Yes|M1, Macola\nisActive|Yes|Yes|M1, Macola\nsequenceNo|No|Yes|M1, Macola\nrowVersion|Yes|Yes|M1, Macola\nsalesOrderType|No|Yes|Macola\npercentage|No|Yes|Macola\n", "operationId": "GET__api_v2.1_view_sales-order-sales-people", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "salesOrderID[eq]": "abc123", "salesEmployeeID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "isActive[eq]": true, "rowVersion[gte]": 123 } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\nsalesOrder|SalesOrders|\nsalesEmployee|Employees|\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/SalesOrderSalesPerson" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/SalesOrderSalesPerson" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/shift-days": { "get": { "tags": [ "View" ], "summary": "Gets a list of ShiftDay", "description": "Gets a list of ShiftDay.\n\n## Supported ERPs\n - M1\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nshiftID|Yes|Yes|M1, Macola\nshiftDay|Yes|Yes|M1, Macola\nstartTime|Yes|Yes|M1, Macola\nendTime|Yes|Yes|M1, Macola\nuniqueID|Yes|Yes|M1, Macola\nrowVersion|Yes|Yes|M1, Macola\n", "operationId": "GET__api_v2.1_view_shift-days", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "shiftID[eq]": "abc123", "shiftDay[eq]": "abc123", "startTime[eq]": "abc123", "endTime[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/ShiftDay" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/ShiftDay" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/shifts": { "get": { "tags": [ "View" ], "summary": "Gets a list of Shift", "description": "Gets a list of Shift.\n\n## Supported ERPs\n - M1\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nshiftID|Yes|Yes|M1, Macola\nshortDesc|Yes|Yes|M1, Macola\ninactiveDate|Yes|Yes|M1, Macola\nuniqueID|Yes|Yes|M1, Macola\nrowVersion|Yes|Yes|M1, Macola\n", "operationId": "GET__api_v2.1_view_shifts", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "shiftID[eq]": "abc123", "shortDesc[eq]": "abc123", "inactiveDate[gte]": "2020-09-25T04:03:00.0000000", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\nshiftDays|ShiftDays[]|\n", "schema": { "type": "string" } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Shift" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Shift" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/shipment-lines": { "get": { "tags": [ "View" ], "summary": "Gets a list of ShipmentLine", "description": "Gets a list of ShipmentLine.\n\n## Supported ERPs\n - M1\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nuniqueID|Yes|Yes|M1\nrowVersion|Yes|Yes|M1\nshipmentID|Yes|Yes|M1\nshipmentLineID|Yes|Yes|M1\npartID|Yes|Yes|M1\npartRevisionID|Yes|Yes|M1\ndescription|No|Yes|M1\npartWarehouseID|Yes|Yes|M1\npartBinID|Yes|Yes|M1\ninvQtyShipped|No|Yes|M1\njobQtyShipped|No|Yes|M1\nunitPriceForeign|No|Yes|M1\nextendedPriceForeign|No|Yes|M1\nisShippedComplete|Yes|Yes|M1\nunitOfMeasure|No|Yes|M1\nsalesOrderID|Yes|Yes|M1\nsalesOrderLineID|Yes|Yes|M1\nsalesOrderDeliveryID|Yes|Yes|M1\njobID|Yes|Yes|M1\npartGroupID|Yes|Yes|M1\nprojectID|Yes|Yes|M1\n", "operationId": "GET__api_v2.1_view_shipment-lines", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "shipmentID[eq]": "abc123", "shipmentLineID[eq]": "abc123", "partID[eq]": "abc123", "partRevisionID[eq]": "abc123", "partWarehouseID[eq]": "abc123", "partBinID[eq]": "abc123", "isShippedComplete[eq]": true, "salesOrderID[eq]": "abc123", "salesOrderLineID[eq]": "abc123", "salesOrderDeliveryID[eq]": "abc123", "jobID[eq]": "abc123", "partGroupID[eq]": "abc123", "projectID[eq]": "abc123" } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/ShipmentLine" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/ShipmentLine" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/tax-codes": { "get": { "tags": [ "View" ], "summary": "Gets a list of TaxCode", "description": "Gets a list of TaxCode.\n\n## Supported ERPs\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ndescription|No|Yes|JobBOSS²\ntaxCodeID|No|Yes|JobBOSS²\nisActive|No|Yes|JobBOSS²\nrowVersion|Yes|Yes|JobBOSS²\nuniqueID|Yes|Yes|JobBOSS²\n", "operationId": "GET__api_v2.1_view_tax-codes", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "rowVersion[gte]": 123, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8" } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/TaxCode" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/TaxCode" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/timecard-lines": { "get": { "tags": [ "View" ], "summary": "Gets a list of TimecardLine", "description": "Gets a list of TimecardLine.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ntimecardID|Yes|Yes|M1, JobBOSS², Macola\ntimecardLine|Yes|Yes|M1, JobBOSS², Macola\njobID|Yes|Yes|M1, JobBOSS², Macola\njobAssembly|Yes|Yes|M1, JobBOSS², Macola\njobOperation|Yes|Yes|M1, JobBOSS², Macola\nworkCenterID|Yes|Yes|M1, JobBOSS², Macola\nprocessID|Yes|Yes|M1, JobBOSS², Macola\nstatus|Yes|Yes|M1, JobBOSS², Macola\ntimecardType|Yes|Yes|M1, JobBOSS², Macola\ngoodQty|Yes|Yes|M1, JobBOSS², Macola\nscrapQty|Yes|Yes|M1, JobBOSS², Macola\nreworkQty|Yes|Yes|M1, JobBOSS², Macola\nrejectQty|Yes|Yes|M1, JobBOSS², Macola\nstartTime|Yes|Yes|M1, JobBOSS², Macola\nendTime|Yes|Yes|M1, JobBOSS², Macola\nmachineHours|Yes|Yes|M1, JobBOSS², Macola\nlaborHours|Yes|Yes|M1, JobBOSS², Macola\nemployeeID|Yes|Yes|JobBOSS²\ntimecardDate|Yes|Yes|JobBOSS²\nuniqueID|Yes|Yes|M1, JobBOSS², Macola\nrowVersion|Yes|Yes|M1, JobBOSS², Macola\n", "operationId": "GET__api_v2.1_view_timecard-lines", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "timecardID[eq]": "abc123", "timecardLine[eq]": "abc123", "jobID[eq]": "abc123", "jobAssembly[eq]": "abc123", "jobOperation[gte]": 123, "workCenterID[eq]": "abc123", "processID[eq]": "abc123", "status[eq]": "abc123", "timecardType[eq]": "abc123", "goodQty[gte]": 123, "scrapQty[gte]": 123, "reworkQty[gte]": 123, "rejectQty[gte]": 123, "startTime[gte]": "2020-09-25T04:03:00.0000000", "endTime[gte]": "2020-09-25T04:03:00.0000000", "machineHours[gte]": 123, "laborHours[gte]": 123, "employeeID[gte]": 123, "timecardDate[gte]": "2020-09-25T04:03:00.0000000", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\nworkCenters|WorkCenters[]|This relationship is obsolete and will be removed in a future release. Use 'workCenter' instead\nworkCenter|WorkCenters|The workcenter associated with this line.\ntimecards|Timecards[]|This relationship is obsolete and will be removed in a future release. Use 'timecard' instead\ntimecard|Timecards|The timecard record associated with this line.\njobs|Jobs|This relationship is obsolete and will be removed in a future release. Use 'job' instead\njob|Jobs|The Job associated with this line.\nprocesses|Processes|This relationship is obsolete and will be removed in a future release. Use 'process' instead\nprocess|Processes|The Process associated with this line.\njobOperations|JobOperations|This relationship is obsolete and will be removed in a future release. Use 'jobOperation' instead\njobOperationx|JobOperations|The Job Operation associated with this line.\nsalesOrderDeliveries|SalesOrderDeliveries[]|\nsalesOrderJobs|SalesOrderJobs|This relationship is obsolete and will be removed in a future release. Use 'salesOrderJob' instead\nsalesOrderJob|SalesOrderJobs|The Sales Order Job associated with this line.\n", "schema": { "type": "string" } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/TimecardLine" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/TimecardLine" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/timecards": { "get": { "tags": [ "View" ], "summary": "Gets a list of Timecard", "description": "Gets a list of Timecard.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ntimecardID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nemployeeID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nshiftID|Yes|Yes|M1, JobBOSS², Macola, Deacom\ntimecardDate|Yes|Yes|M1, JobBOSS², Macola, Deacom\nuniqueID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Macola, Deacom\n", "operationId": "GET__api_v2.1_view_timecards", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "timecardID[eq]": "abc123", "employeeID[eq]": "abc123", "shiftID[eq]": "abc123", "timecardDate[gte]": "2020-09-25T04:03:00.0000000", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\ntimecardlines|Timecardlines[]|\nemployees|Employees[]|\n", "schema": { "type": "string" } }, { "name": "convertToUTC", "in": "query", "description": "Convert suppported date/time values to UTC before returning the data.", "schema": { "type": "boolean" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Timecard" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Timecard" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/timezones": { "get": { "tags": [ "View" ], "summary": "Gets a list of TimeZone", "description": "Gets a list of TimeZone.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\ntimeZoneName|Yes|Yes|M1, JobBOSS²\nuniqueID|Yes|Yes|M1, JobBOSS²\nrowVersion|Yes|Yes|M1, JobBOSS²\n", "operationId": "GET__api_v2.1_view_timezones", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "timeZoneName[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123 } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/TimeZone" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/TimeZone" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/work-center-rate-breaks": { "get": { "tags": [ "View" ], "summary": "Gets a list of WorkCenterRateBreak", "description": "Gets a list of WorkCenterRateBreak.\n\n## Supported ERPs\n - JobBOSS²\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nworkCenterID|Yes|Yes|JobBOSS²\nshortDesc|Yes|Yes|JobBOSS²\nordinal|Yes|Yes|JobBOSS²\nsetupRate|Yes|Yes|JobBOSS²\nprodRate|Yes|Yes|JobBOSS²\nuniqueID|Yes|Yes|JobBOSS²\nrowVersion|Yes|Yes|JobBOSS²\nlaborRate|Yes|Yes|JobBOSS²\n", "operationId": "GET__api_v2.1_view_work-center-rate-breaks", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "workCenterID[eq]": "abc123", "shortDesc[eq]": "abc123", "ordinal[gte]": 123, "setupRate[gte]": 123, "prodRate[gte]": 123, "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "laborRate[eq]": "abc123" } } } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/WorkCenterRateBreak" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/WorkCenterRateBreak" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } }, "/api/v2.1/view/work-centers": { "get": { "tags": [ "View" ], "summary": "Gets a list of WorkCenter", "description": "Gets a list of WorkCenter.\n\n## Supported ERPs\n - M1\n - JobBOSS²\n - Macola\n - Deacom\n## Resource Features\nFeature |Supported |Notes\n------------|------------|------------\nFilter Expressions|**Yes**| \nSort Expressions|**Yes**\nField Selection|**Yes**\nPagination|**Yes**\nUniqueID|uniqueID|\n## Features by Field\nField |Filterable |Sortable |Supported ERPs\n------------|------------|------------|------------\nworkCenterID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nshortDesc|Yes|Yes|M1, JobBOSS², Macola, Deacom\ndeptID|Yes|Yes|M1, JobBOSS², Macola, Deacom\noverHeadRate|Yes|Yes|M1, JobBOSS², Macola, Deacom\nquoteRate|Yes|Yes|M1, JobBOSS², Macola, Deacom\nprocessID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nparentWorkCenterID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nshiftID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nuniqueID|Yes|Yes|M1, JobBOSS², Macola, Deacom\nrowVersion|Yes|Yes|M1, JobBOSS², Macola, Deacom\nlaborRate|Yes|Yes|JobBOSS²\n", "operationId": "GET__api_v2.1_view_work-centers", "parameters": [ { "name": "fields", "in": "query", "description": "A comma-separated list of fields to include in the result.", "schema": { "type": "string" } }, { "name": "sort", "in": "query", "description": "A comma-separated list of sort expressions.", "schema": { "type": "string" } }, { "name": "take", "in": "query", "description": "Limit the number of results being returned", "schema": { "minimum": 0, "type": "integer" } }, { "name": "skip", "in": "query", "description": "The number of results to skip. Combine with 'take' to fetch records in pages", "schema": { "minimum": 0, "type": "integer" } }, { "name": "count", "in": "query", "description": "Data and count response behavior ", "schema": { "maximum": 2, "minimum": 0, "type": "integer" } }, { "name": "filters", "in": "query", "description": "See Filter Expressions for query string syntax. The Test UI and any generated code tool may expose filter parameters as a dictionary of name/value pairs, but if creating a raw HTTP request, they must be provided on the querystring as defined in the Filter Expression section.", "style": "form", "schema": { "type": "object", "additionalProperties": { "type": "string" } }, "examples": { "Empty": { "description": "No filters applied" }, "Example #1": { "description": "A dictionary of name/value pairs that will be serialized as querystring parameters in the format ```name[operator]=value```", "value": { "workCenterID[eq]": "abc123", "shortDesc[eq]": "abc123", "deptID[eq]": "abc123", "overHeadRate[eq]": "abc123", "quoteRate[eq]": "abc123", "processID[eq]": "abc123", "parentWorkCenterID[eq]": "abc123", "shiftID[eq]": "abc123", "uniqueID[eq]": "cc90686b-399e-4094-b431-fa462f84b0a8", "rowVersion[gte]": 123, "laborRate[eq]": "abc123" } } } }, { "name": "expand", "in": "query", "description": "### Supported Expansions\nAn expansion expression containing a comma separater list of relationships to expand.\nName |Value |Description\n------------|------------|-----------\ndepartments|Departments[]|\nshifts|Shifts[]|\n", "schema": { "type": "string" } } ], "responses": { "200": { "description": "Success", "content": { "application/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/WorkCenter" } }, "resultCount": { "type": "integer", "nullable": true } } } }, "text/json": { "schema": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/WorkCenter" } }, "resultCount": { "type": "integer", "nullable": true } } } } } } } } } }, "components": { "schemas": { "APInvoice": { "title": "APInvoice", "type": "object", "properties": { "invoiceID": { "type": "string" }, "invoiceDate": { "type": "string", "format": "date" }, "dueDate": { "type": "string", "format": "date" }, "invoiceType": { "type": "integer", "format": "int32" }, "isPostedToGL": { "type": "boolean" }, "postedDate": { "type": "string", "format": "date" }, "isOnHold": { "type": "boolean" }, "isOverpayment": { "type": "boolean" }, "paymentTermID": { "type": "string" }, "baseTotal": { "type": "number", "format": "double" }, "foreignTotal": { "type": "number", "format": "double" }, "baseBalance": { "type": "number", "format": "double" }, "foreignBalance": { "type": "number", "format": "double" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "currency": { "type": "string" }, "supplierID": { "type": "string" }, "paidDate": { "type": "string", "format": "date" }, "plantID": { "type": "string" } } }, "APInvoiceLine": { "title": "APInvoiceLine", "type": "object", "properties": { "invoiceID": { "type": "string" }, "lineID": { "type": "string" }, "itemType": { "type": "string" }, "partID": { "type": "string" }, "partRevisionID": { "type": "string" }, "partDescription": { "type": "string" }, "purchaseQuantity": { "type": "number", "format": "double" }, "baseUnitCost": { "type": "number", "format": "double" }, "foreignUnitCost": { "type": "number", "format": "double" }, "baseExtendedCost": { "type": "number", "format": "double" }, "foreignExtendedCost": { "type": "number", "format": "double" }, "baseSetupCharge": { "type": "number", "format": "double" }, "foreignSetupCharge": { "type": "number", "format": "double" }, "unitOfMeasure": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" } } }, "ARInvoice": { "title": "ARInvoice", "type": "object", "properties": { "invoiceID": { "type": "string" }, "invoiceDate": { "type": "string", "format": "date" }, "dueDate": { "type": "string", "format": "date" }, "invoiceType": { "type": "integer", "format": "int32" }, "isPostedToGL": { "type": "boolean" }, "postedDate": { "type": "string", "format": "date" }, "isOnHold": { "type": "boolean" }, "isOverpayment": { "type": "boolean" }, "paymentTermID": { "type": "string" }, "invoiceTotalBase": { "type": "number", "format": "double" }, "invoiceTotalForeign": { "type": "number", "format": "double" }, "invoiceBalanceBase": { "type": "number", "format": "double" }, "invoiceBalanceForeign": { "type": "number", "format": "double" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "customerID": { "type": "string" }, "paidDate": { "type": "string", "format": "date" }, "plantID": { "type": "string" } } }, "ARInvoiceSalesPerson": { "title": "ARInvoiceSalesPerson", "type": "object", "properties": { "invoiceID": { "type": "string" }, "employeeID": { "type": "string" }, "sequenceID": { "type": "integer", "format": "int32" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" } } }, "ClockInModel": { "required": [ "clockInTime", "employeeID" ], "type": "object", "properties": { "employeeID": { "minLength": 1, "type": "string" }, "clockInTime": { "type": "string", "format": "date-time" }, "shiftID": { "type": "string", "nullable": true } }, "additionalProperties": false }, "ClockOutModel": { "required": [ "clockOutTime", "clockSessionID" ], "type": "object", "properties": { "clockSessionID": { "minLength": 1, "type": "string" }, "clockOutTime": { "type": "string", "format": "date-time" } }, "additionalProperties": false }, "ClockSession": { "type": "object", "properties": { "clockSessionID": { "type": "string", "nullable": true }, "employeeID": { "type": "string", "nullable": true }, "clockInTime": { "type": "string", "format": "date-time", "nullable": true }, "clockOutTime": { "type": "string", "format": "date-time", "nullable": true }, "shiftID": { "type": "string", "nullable": true }, "uniqueID": { "type": "string", "nullable": true } }, "additionalProperties": false }, "Contact": { "title": "Contact", "type": "object", "properties": { "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "contactID": { "type": "string" }, "name": { "type": "string" }, "organizationID": { "type": "string" }, "organizationTypes": { "type": "array", "items": { "type": "integer", "format": "int32" } }, "phoneNumber": { "type": "string" }, "emailAddress": { "type": "string" }, "isActive": { "type": "boolean" }, "comments": { "type": "string" }, "organization": { "$ref": "#/components/schemas/Organization" } } }, "ContactCreateModel": { "type": "object", "properties": { "contactID": { "type": "string", "description": "A short identifier for the contact.", "nullable": true }, "organizationID": { "type": "string", "description": "The ID or code identifying the organization with which the contact is associated.", "nullable": true }, "organizationType": { "$ref": "#/components/schemas/OrganizationType" }, "name": { "type": "string", "description": "The name of the contact.", "nullable": true }, "phoneNumber": { "type": "string", "description": "A phone number for the contact.", "nullable": true }, "emailAddress": { "type": "string", "description": "An email address for the contact.", "nullable": true }, "comments": { "type": "string", "description": "Comments or notes about the contact.", "nullable": true } }, "additionalProperties": false, "description": "A model used to create new contacts." }, "ContactListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Contact" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "CycleCode": { "title": "CycleCode", "type": "object", "properties": { "description": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "cycleCodeID": { "type": "string" } } }, "Department": { "title": "Department", "type": "object", "properties": { "deptID": { "type": "string" }, "shortDesc": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" } } }, "DepartmentListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Department" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "DmrClaim": { "title": "DmrClaim", "type": "object", "properties": { "claimID": { "type": "string" }, "supplierOrganizationID": { "type": "string" }, "claimDate": { "type": "string", "format": "date" }, "claimTotal": { "type": "number", "format": "double" }, "foreignTotal": { "type": "number", "format": "double" }, "currency": { "type": "string" }, "plantID": { "type": "string" }, "projectID": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "status": { "type": "string" }, "supplier": { "$ref": "#/components/schemas/Organization" }, "plant": { "$ref": "#/components/schemas/Plant" }, "project": { "$ref": "#/components/schemas/Project" } } }, "DmrClaimLine": { "title": "DmrClaimLine", "type": "object", "properties": { "claimLineID": { "type": "string" }, "partID": { "type": "string" }, "partRevisionID": { "type": "string" }, "partShortDescription": { "type": "string" }, "partLongDescription": { "type": "string" }, "partWarehouseID": { "type": "string" }, "quantity": { "type": "number", "format": "double" }, "quantityShipped": { "type": "number", "format": "double" }, "unitOfMeasure": { "type": "string" }, "unitCost": { "type": "number", "format": "double" }, "foreignUnitCost": { "type": "number", "format": "double" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "claimID": { "type": "string" }, "claim": { "$ref": "#/components/schemas/DmrClaim" }, "part": { "$ref": "#/components/schemas/Part" }, "partRevision": { "$ref": "#/components/schemas/PartRevision" } } }, "Employee": { "title": "Employee", "type": "object", "properties": { "employeeID": { "type": "string" }, "firstName": { "type": "string" }, "lastName": { "type": "string" }, "title": { "type": "string" }, "supervisorEmployeeID": { "type": "string" }, "payRate": { "type": "number", "format": "double" }, "deptID": { "type": "string" }, "shiftID": { "type": "string" }, "isActive": { "type": "boolean" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" } } }, "EmployeeListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Employee" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "GLCode": { "title": "GLCode", "type": "object", "properties": { "description": { "type": "string" }, "glCodeID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "uniqueID": { "type": "string" }, "isActive": { "type": "boolean" } } }, "GLCodeListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/GLCode" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "InspectionLine": { "title": "InspectionLine", "type": "object", "properties": { "notes": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "inspectionID": { "type": "string" }, "inspectionLineID": { "type": "string" }, "partID": { "type": "string" }, "partRevisionID": { "type": "string" }, "partWarehouseID": { "type": "string" }, "partBinID": { "type": "string" }, "quantityToInspect": { "type": "number", "format": "double" }, "supplierOrganizationID": { "type": "string" }, "isInspectionComplete": { "type": "boolean" }, "unitCost": { "type": "number", "format": "double" }, "projectID": { "type": "string" }, "projectAreaID": { "type": "string" }, "inspectionDate": { "type": "string", "format": "date-time" }, "sourceType": { "type": "integer", "format": "int32" }, "inspectorEmployeeID": { "type": "string" } } }, "Job": { "title": "Job", "type": "object", "properties": { "jobID": { "type": "string" }, "customerID": { "type": "string" }, "partID": { "type": "string" }, "partRevisionID": { "type": "string" }, "orderQty": { "type": "number", "format": "double" }, "prodQty": { "type": "number", "format": "double" }, "schedStartDate": { "type": "string", "format": "date-time" }, "schedEndDate": { "type": "string", "format": "date-time" }, "estLeadTime": { "type": "number", "format": "double" }, "actStartDate": { "type": "string", "format": "date-time" }, "actEndDate": { "type": "string", "format": "date-time" }, "dueDate": { "type": "string", "format": "date-time" }, "status": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "jobCost": { "type": "number", "format": "double" }, "jobCostForeign": { "type": "number", "format": "double" }, "plantID": { "type": "string" }, "jobDate": { "type": "string", "format": "date-time" }, "partWarehouseID": { "type": "string" }, "partBinID": { "type": "string" }, "partShortDesc": { "type": "string" }, "inventoryQty": { "type": "number", "format": "double" }, "isPlanningComplete": { "type": "boolean" }, "isScheduleComplete": { "type": "boolean" }, "isReleasedToFloor": { "type": "boolean" }, "isOnHold": { "type": "boolean" }, "completedDate": { "type": "string", "format": "date-time" }, "quantityCompleted": { "type": "number", "format": "double" }, "quantityShipped": { "type": "number", "format": "double" }, "quantityRcvdToInventory": { "type": "number", "format": "double" }, "projectID": { "type": "string" }, "projectAreaID": { "type": "string" }, "isClosed": { "type": "boolean" }, "closedDate": { "type": "string", "format": "date-time" }, "jobPriorityID": { "type": "string" }, "unitOfMeasure": { "type": "string" }, "plannerEmployeeID": { "type": "string" }, "parentJobID": { "type": "string" }, "shortDesc": { "type": "string" }, "childJobID": { "type": "string" }, "jobType": { "type": "string" }, "jobOperations": { "type": "array", "items": { "$ref": "#/components/schemas/JobOperation" } } } }, "JobAssembly": { "title": "JobAssembly", "type": "object", "properties": { "jobID": { "type": "string" }, "jobAssemblyID": { "type": "string" }, "level": { "type": "integer" }, "parentAssemblyID": { "type": "string" }, "sourceMethodID": { "type": "string" }, "sourceRevisionID": { "type": "string" }, "partID": { "type": "string" }, "partRevisionID": { "type": "string" }, "partShortDesc": { "type": "string" }, "quantityPerParent": { "type": "number", "format": "double" }, "orderQty": { "type": "number", "format": "double" }, "inventoryQty": { "type": "number", "format": "double" }, "scrapQty": { "type": "number", "format": "double" }, "quantityToInspect": { "type": "number", "format": "double" }, "quantityRcvdToInv": { "type": "number", "format": "double" }, "productionQty": { "type": "number", "format": "double" }, "quantityToMake": { "type": "number", "format": "double" }, "quantityToPull": { "type": "number", "format": "double" }, "quantityIssued": { "type": "number", "format": "double" }, "quantityCompleted": { "type": "number", "format": "double" }, "isProductionComplete": { "type": "boolean" }, "completedDate": { "type": "string", "format": "date-time" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "jobIsClosed": { "type": "boolean" }, "jobClosedDate": { "type": "string", "format": "date-time" } } }, "JobAssemblyListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/JobAssembly" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "JobListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Job" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "JobMaterial": { "title": "JobMaterial", "type": "object", "properties": { "jobID": { "type": "string" }, "jobAssemblyID": { "type": "string" }, "jobAssemblySeq": { "type": "integer", "format": "int32" }, "materialPartID": { "type": "string" }, "materialPartRevisionID": { "type": "string" }, "estQuantity": { "type": "number", "format": "double" }, "estUnitCost": { "type": "number", "format": "double" }, "unitOfMeasure": { "type": "string" }, "leadTime": { "type": "number", "format": "double" }, "vendorID": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "jobIsClosed": { "type": "boolean" }, "jobClosedDate": { "type": "string", "format": "date-time" }, "jobType": { "type": "string" } } }, "JobMaterialListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/JobMaterial" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "JobOperation": { "title": "JobOperation", "type": "object", "properties": { "jobID": { "type": "string" }, "jobAssembly": { "type": "string" }, "jobOperationSeq": { "type": "integer", "format": "int32" }, "status": { "type": "string" }, "workCenterID": { "type": "string" }, "processID": { "type": "string" }, "shortDesc": { "type": "string" }, "longDescText": { "type": "string" }, "longDescFormatted": { "type": "string" }, "outsideOperation": { "type": "string" }, "partID": { "type": "string" }, "partRevisionID": { "type": "string" }, "schedStartDate": { "type": "string", "format": "date-time" }, "schedEndDate": { "type": "string", "format": "date-time" }, "actStartDate": { "type": "string", "format": "date-time" }, "actEndDate": { "type": "string", "format": "date-time" }, "estSetupHours": { "type": "number", "format": "double" }, "estProdHours": { "type": "number", "format": "double" }, "estQueueHours": { "type": "number", "format": "double" }, "estMoveHours": { "type": "number", "format": "double" }, "estQAHours": { "type": "number", "format": "double" }, "actSetupHours": { "type": "number", "format": "double" }, "actualProdHours": { "type": "number", "format": "double" }, "actQAHours": { "type": "number", "format": "double" }, "vendorID": { "type": "string" }, "estSetupTimeValue": { "type": "number", "format": "double" }, "estSetupTimeUnit": { "type": "string" }, "estProdTimeValue": { "type": "number", "format": "double" }, "estProdTimeUnit": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "operationQty": { "type": "number", "format": "double" }, "quantityComplete": { "type": "number", "format": "double" }, "isSetupComplete": { "type": "boolean" }, "plantID": { "type": "string" }, "purchaseOrderID": { "type": "string" }, "supplierOrganizationID": { "type": "string" }, "purchaseLocationID": { "type": "string" }, "RFQID": { "type": "string" }, "defaultEmployeeID": { "type": "string" }, "defaultEmployeeID2": { "type": "string" }, "defaultEmployeeID3": { "type": "string" }, "isUnattended": { "type": "boolean" }, "jobType": { "type": "string" }, "supplierLeadTime": { "type": "integer", "format": "int32" }, "jobIsClosed": { "type": "boolean" }, "jobClosedDate": { "type": "string", "format": "date-time" } } }, "JobOperationListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/JobOperation" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "JobOperationUpdateModel": { "type": "object", "properties": { "workCenterID": { "type": "string", "nullable": true }, "schedStartDate": { "type": "string", "format": "date-time", "nullable": true }, "schedEndDate": { "type": "string", "format": "date-time", "nullable": true } }, "additionalProperties": false }, "JobOperationUpdateModelData": { "type": "object", "properties": { "uniqueID": { "type": "string", "nullable": true }, "workCenterID": { "type": "string", "nullable": true }, "schedStartDate": { "type": "string", "format": "date-time", "nullable": true }, "schedEndDate": { "type": "string", "format": "date-time", "nullable": true } }, "additionalProperties": false }, "JobPartProduction": { "required": [ "partID", "quantityProduced" ], "type": "object", "properties": { "partID": { "minLength": 1, "type": "string" }, "quantityProduced": { "maximum": 2147483647, "minimum": 1, "type": "number", "format": "double" }, "productionDate": { "type": "string", "format": "date", "nullable": true }, "partBinID": { "type": "string", "nullable": true }, "shiftID": { "type": "string", "nullable": true }, "printDestinationID": { "type": "string", "nullable": true }, "lotNumber": { "type": "string", "nullable": true }, "lotExpirationDate": { "type": "string", "format": "date", "nullable": true }, "lotAttributes": { "type": "array", "items": { "type": "string" }, "nullable": true }, "serialNumbers": { "type": "array", "items": { "type": "string" }, "nullable": true }, "catchWeights": { "type": "array", "items": { "type": "number", "format": "double" }, "nullable": true } }, "additionalProperties": false }, "JobUpdateModel": { "type": "object", "properties": { "schedStartDate": { "type": "string", "format": "date-time", "nullable": true }, "schedEndDate": { "type": "string", "format": "date-time", "nullable": true }, "jobOperations": { "type": "array", "items": { "$ref": "#/components/schemas/JobOperationUpdateModelData" }, "nullable": true } }, "additionalProperties": false }, "Location": { "title": "Location", "type": "object", "properties": { "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "locationID": { "type": "string" }, "name": { "type": "string" }, "organizationID": { "type": "string" }, "organizationTypes": { "type": "array", "items": { "type": "integer", "format": "int32" } }, "addressLine1": { "type": "string" }, "addressLine2": { "type": "string" }, "addressLine3": { "type": "string" }, "city": { "type": "string" }, "county": { "type": "string" }, "country": { "type": "string" }, "postalCode": { "type": "string" }, "state": { "type": "string" }, "isActive": { "type": "boolean" }, "locationTypes": { "type": "array", "items": { "type": "integer", "format": "int32" } }, "organization": { "$ref": "#/components/schemas/Organization" } } }, "LocationCreateModel": { "required": [ "addressLine1", "locationTypes", "name" ], "type": "object", "properties": { "locationID": { "type": "string", "nullable": true }, "locationTypes": { "minItems": 1, "type": "array", "items": { "$ref": "#/components/schemas/LocationType" } }, "name": { "minLength": 1, "type": "string" }, "addressLine1": { "minLength": 1, "type": "string" }, "addressLine2": { "type": "string", "nullable": true }, "addressLine3": { "type": "string", "nullable": true }, "city": { "type": "string", "nullable": true }, "county": { "type": "string", "nullable": true }, "country": { "type": "string", "nullable": true }, "postalCode": { "type": "string", "nullable": true }, "state": { "type": "string", "nullable": true }, "organizationID": { "type": "string", "nullable": true } }, "additionalProperties": false }, "LocationListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Location" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "LocationType": { "enum": [ 1, 2, 3 ], "type": "integer", "format": "int32" }, "Organization": { "title": "Organization", "type": "object", "properties": { "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "name": { "type": "string" }, "organizationID": { "type": "string" }, "country": { "type": "string" }, "isActive": { "type": "boolean" }, "organizationTypes": { "type": "array", "items": { "type": "integer", "format": "int32" } }, "phoneNumber": { "type": "string" }, "customerPaymentTermID": { "type": "string" }, "customerTaxCodeID": { "type": "string" }, "supplierPaymentTermID": { "type": "string" }, "supplierTaxCodeID": { "type": "string" }, "currencyCode": { "type": "string" }, "websiteUrl": { "type": "string" }, "comments": { "type": "string" }, "salesAccountID": { "type": "string" }, "leadTimeDays": { "type": "integer", "format": "int32" }, "minimumOrderAmount": { "type": "number", "format": "double" }, "customerStatus": { "type": "integer" }, "supplierStatus": { "type": "integer" } } }, "OrganizationCreateModel": { "required": [ "name", "organizationID", "organizationTypes" ], "type": "object", "properties": { "organizationID": { "minLength": 1, "type": "string", "description": "The ID or code identifying this organization." }, "organizationTypes": { "minItems": 1, "type": "array", "items": { "$ref": "#/components/schemas/OrganizationType" }, "description": "The type(s) of organization records to create." }, "name": { "minLength": 1, "type": "string", "description": "The descriptive name for this organization." }, "country": { "type": "string", "description": "The country in which this organization legally belongs.", "nullable": true }, "websiteUrl": { "type": "string", "description": "The URL of the organization's website.", "nullable": true }, "phoneNumber": { "type": "string", "description": "A phone number for the organization.", "nullable": true }, "currencyCode": { "type": "string", "description": "The currency code for the organization.", "nullable": true }, "comments": { "type": "string", "description": "Any comments or notes about this organization.", "nullable": true }, "customerPaymentTermID": { "type": "string", "description": "When assigned the customer organization type, specifies the payment term.", "nullable": true }, "customerTaxCodeID": { "type": "string", "description": "When assigned the customer organization type, specifies the tax code.", "nullable": true }, "supplierPaymentTermID": { "type": "string", "description": "When assigned the supplier organization type, specifies the payment term.", "nullable": true }, "supplierTaxCodeID": { "type": "string", "description": "When assigned the supplier organization type, specifies the tax code.", "nullable": true }, "salesAccountID": { "type": "string", "description": "The default sales account ID for a customer organization.", "nullable": true }, "leadTimeDays": { "type": "integer", "description": "The expected lead time in days for a supplier organization.", "format": "int32", "nullable": true }, "minimumOrderAmount": { "type": "number", "description": "The minimum order amount for a supplier organization.", "format": "double", "nullable": true }, "addresses": { "type": "array", "items": { "$ref": "#/components/schemas/LocationCreateModel" }, "description": "The addresses for the organization.", "nullable": true }, "contact": { "$ref": "#/components/schemas/ContactCreateModel" } }, "additionalProperties": false, "description": "A model used to create new organizations." }, "OrganizationListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Organization" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "OrganizationPart": { "title": "OrganizationPart", "type": "object", "properties": { "partID": { "type": "string" }, "partRevisionID": { "type": "string" }, "organizationID": { "type": "string" }, "organizationTypes": { "type": "array", "items": { "type": "integer", "format": "int32" } }, "organizationPartID": { "type": "string" }, "organizationShortDesc": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" } } }, "OrganizationPartCreateModel": { "required": [ "organizationID", "organizationTypes" ], "type": "object", "properties": { "organizationID": { "minLength": 1, "type": "string", "description": "The ID or code identifying the organization being assigned to a part." }, "organizationTypes": { "minItems": 1, "type": "array", "items": { "$ref": "#/components/schemas/OrganizationType" }, "description": "The type(s) of the organization being assigned to a part." } }, "additionalProperties": false, "description": "A model used to create new organization parts." }, "OrganizationPartListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/OrganizationPart" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "OrganizationType": { "enum": [ 0, 1, 2 ], "type": "integer", "format": "int32" }, "Part": { "title": "Part", "type": "object", "properties": { "partClassID": { "type": "string" }, "partGroupID": { "type": "string" }, "cycleCodeID": { "type": "string" }, "partType": { "type": "integer", "format": "int32" }, "partID": { "type": "string" }, "alternatePartID": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "isActive": { "type": "boolean" }, "partClass": { "$ref": "#/components/schemas/PartClass" }, "partGroup": { "$ref": "#/components/schemas/PartGroup" } } }, "PartBin": { "title": "PartBin", "type": "object", "properties": { "partRevisionID": { "type": "string" }, "warehouseID": { "type": "string" }, "partBinID": { "type": "string" }, "quantityOnHand": { "type": "number", "format": "double" }, "quantityAllocated": { "type": "number", "format": "double" }, "quantityOnOrderSales": { "type": "number", "format": "double" }, "quantityOnOrderPurchases": { "type": "number", "format": "double" }, "quantityToInspect": { "type": "number", "format": "double" }, "quantityToReturn": { "type": "number", "format": "double" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "partID": { "type": "string" }, "lotNumber": { "type": "string" }, "purchaseOrderLineID": { "type": "string" }, "partRevision": { "$ref": "#/components/schemas/PartRevision" } } }, "PartBinListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartBin" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "PartClass": { "title": "PartClass", "type": "object", "properties": { "description": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "partClassID": { "type": "string" }, "isActive": { "type": "boolean" } } }, "PartCost": { "type": "object", "properties": { "partCostID": { "type": "string", "nullable": true }, "partID": { "type": "string", "nullable": true }, "partRevisionID": { "type": "string", "nullable": true }, "startDate": { "type": "string", "format": "date-time", "nullable": true }, "endDate": { "type": "string", "format": "date-time", "nullable": true }, "uniqueID": { "type": "string", "nullable": true }, "rowVersion": { "type": "integer", "format": "int64", "nullable": true } }, "additionalProperties": false }, "PartCostBreak": { "title": "PartCostBreak", "type": "object", "properties": { "partCostID": { "type": "string" }, "quantity": { "type": "number", "format": "double" }, "unitCost": { "type": "number", "format": "double" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" } } }, "PartCostBreakListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartCostBreak" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "PartCostListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartCost" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "PartCreateModel": { "required": [ "partID" ], "type": "object", "properties": { "partID": { "minLength": 1, "type": "string", "description": "The ID or code identifying the part." }, "partClassID": { "type": "string", "description": "The ID or code identifying the part class.", "nullable": true }, "partGroupID": { "type": "string", "description": "The ID or code identifying the part group.", "nullable": true }, "cycleCodeID": { "type": "string", "description": "The ID for the cycle code.", "nullable": true }, "partType": { "type": "integer", "description": "The type of the part.", "format": "int32", "nullable": true }, "alternatePartID": { "type": "string", "description": "The alternate ID or code for the part.", "nullable": true }, "lockPrices": { "type": "boolean", "description": "Whether to lock sell prices for the part, preventing automatic recalculation.", "nullable": true }, "revision": { "$ref": "#/components/schemas/PartRevisionCreateModel" }, "materials": { "type": "array", "items": { "$ref": "#/components/schemas/PartMaterialCreateModel" }, "description": "The materials for manufacturing the part.", "nullable": true }, "operations": { "type": "array", "items": { "$ref": "#/components/schemas/PartOperationCreateModel" }, "description": "The operations for manufacturing the part.", "nullable": true }, "price": { "$ref": "#/components/schemas/PartPriceCreateModel" }, "organizations": { "type": "array", "items": { "$ref": "#/components/schemas/OrganizationPartCreateModel" }, "description": "The organizations linked to the part.", "nullable": true } }, "additionalProperties": false, "description": "A model used to create new parts." }, "PartGroup": { "title": "PartGroup", "type": "object", "properties": { "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "partGroupID": { "type": "string" }, "parentPartGroupID": { "type": "string" }, "description": { "type": "string" }, "isActive": { "type": "boolean" }, "inactiveDate": { "type": "string", "format": "date" } } }, "PartGroupListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartGroup" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "PartListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Part" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "PartMaterial": { "title": "PartMaterial", "type": "object", "properties": { "partID": { "type": "string" }, "partRevisionID": { "type": "string" }, "partOperationSeq": { "type": "integer", "format": "int32" }, "materialPartID": { "type": "string" }, "materialPartRevisionID": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "quantity": { "type": "number", "format": "double" }, "unitOfMeasure": { "type": "string" }, "partAssemblyID": { "type": "string" }, "partAssemblySeq": { "type": "integer", "format": "int32" } } }, "PartMaterialCreateModel": { "required": [ "materialPartID", "partID" ], "type": "object", "properties": { "partID": { "minLength": 1, "type": "string" }, "partRevisionID": { "type": "string", "nullable": true }, "partOperationSeq": { "type": "integer", "format": "int32", "nullable": true }, "materialPartID": { "minLength": 1, "type": "string" }, "materialPartRevisionID": { "type": "string", "nullable": true }, "quantity": { "type": "number", "format": "double", "nullable": true }, "unitOfMeasure": { "type": "string", "nullable": true } }, "additionalProperties": false }, "PartMaterialListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartMaterial" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "PartOperation": { "title": "PartOperation", "type": "object", "properties": { "partID": { "type": "string" }, "partRevisionID": { "type": "string" }, "partOperationSeq": { "type": "integer", "format": "int32" }, "workCenterID": { "type": "string" }, "processID": { "type": "string" }, "shortDesc": { "type": "string" }, "longDescText": { "type": "string" }, "longDescFormatted": { "type": "string" }, "outsideOperation": { "type": "string" }, "estSetupHours": { "type": "number", "format": "double" }, "estProdHours": { "type": "number", "format": "double" }, "estQueueHours": { "type": "number", "format": "double" }, "estMoveHours": { "type": "number", "format": "double" }, "estQAHours": { "type": "number", "format": "double" }, "vendorID": { "type": "string" }, "estSetupTimeValue": { "type": "number", "format": "double" }, "estSetupTimeUnit": { "type": "string" }, "estProdTimeValue": { "type": "number", "format": "double" }, "estProdTimeUnit": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" } } }, "PartOperationCreateModel": { "required": [ "partID", "partOperationSeq" ], "type": "object", "properties": { "partID": { "minLength": 1, "type": "string" }, "partRevisionID": { "type": "string", "nullable": true }, "partOperationSeq": { "type": "integer", "format": "int32" }, "workCenterID": { "type": "string", "nullable": true }, "processID": { "type": "string", "nullable": true }, "shortDesc": { "type": "string", "nullable": true }, "longDescText": { "type": "string", "nullable": true }, "longDescFormatted": { "type": "string", "nullable": true }, "outsideOperation": { "type": "string", "nullable": true }, "estSetupHours": { "type": "number", "format": "double", "nullable": true }, "estSetupTimeValue": { "type": "number", "format": "double", "nullable": true }, "estSetupTimeUnit": { "type": "string", "nullable": true }, "estProdHours": { "type": "number", "format": "double", "nullable": true }, "estProdTimeValue": { "type": "number", "format": "double", "nullable": true }, "estProdTimeUnit": { "type": "string", "nullable": true }, "estQueueHours": { "type": "number", "format": "double", "nullable": true }, "estMoveHours": { "type": "number", "format": "double", "nullable": true }, "estQAHours": { "type": "number", "format": "double", "nullable": true }, "vendorID": { "type": "string", "nullable": true } }, "additionalProperties": false }, "PartOperationListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartOperation" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "PartPrice": { "title": "PartPrice", "type": "object", "properties": { "partPriceID": { "type": "string" }, "partID": { "type": "string" }, "partRevisionID": { "type": "string" }, "startDate": { "type": "string", "format": "date-time" }, "endDate": { "type": "string", "format": "date-time" }, "isCustomerSpecific": { "type": "boolean" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" } } }, "PartPriceBreak": { "title": "PartPriceBreak", "type": "object", "properties": { "partPriceID": { "type": "string" }, "quantity": { "type": "number", "format": "double" }, "unitPrice": { "type": "number", "format": "double" }, "markup": { "type": "number", "format": "double" }, "discount": { "type": "number", "format": "double" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" } } }, "PartPriceBreakCreateModel": { "required": [ "partID", "quantity", "unitPrice" ], "type": "object", "properties": { "partID": { "minLength": 1, "type": "string" }, "partRevisionID": { "type": "string", "nullable": true }, "quantity": { "type": "number", "format": "double" }, "unitPrice": { "type": "number", "format": "double" } }, "additionalProperties": false }, "PartPriceBreakListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartPriceBreak" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "PartPriceCreateModel": { "required": [ "partID", "priceBreaks" ], "type": "object", "properties": { "partID": { "minLength": 1, "type": "string" }, "partRevisionID": { "type": "string", "nullable": true }, "priceBreaks": { "type": "array", "items": { "$ref": "#/components/schemas/PartPriceBreakCreateModel" } } }, "additionalProperties": false }, "PartPriceListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartPrice" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "PartRevision": { "title": "PartRevision", "type": "object", "properties": { "partID": { "type": "string" }, "partRevisionID": { "type": "string" }, "shortDesc": { "type": "string" }, "longDescText": { "type": "string" }, "longDescFormatted": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "partCost": { "type": "number", "format": "double" }, "effectiveStartDate": { "type": "string", "format": "date" }, "expirationEndDate": { "type": "string", "format": "date" }, "supplierOrganizationID": { "type": "string" }, "leadTime": { "type": "integer", "format": "int32" }, "quantityOnHand": { "type": "number", "format": "double" }, "pricingUnitOfMeasure": { "type": "string" } } }, "PartRevisionCreateModel": { "required": [ "partID", "partRevisionID", "shortDesc" ], "type": "object", "properties": { "partID": { "minLength": 1, "type": "string", "description": "The ID or code identifying the part." }, "partRevisionID": { "type": "string", "description": "The ID or code identifying the part revision." }, "shortDesc": { "minLength": 1, "type": "string", "description": "The short description for the part revision." }, "supplierOrganizationID": { "type": "string", "description": "The ID of the primary supplier of the part revision.", "nullable": true }, "leadTime": { "type": "integer", "description": "The expected lead time in days for the part revision.", "format": "int32", "nullable": true }, "pricingUnitOfMeasure": { "type": "string", "description": "The unit of measure used when pricing the part revision.", "nullable": true } }, "additionalProperties": false, "description": "A model used to create new part revisions." }, "PartRevisionListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PartRevision" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "PartTransaction": { "title": "PartTransaction", "type": "object", "properties": { "partTransactionID": { "type": "string" }, "partID": { "type": "string" }, "partRevisionID": { "type": "string" }, "transactionType": { "type": "integer" }, "source": { "type": "integer" }, "receiptType": { "type": "integer" }, "isNonInventoryTransaction": { "type": "boolean" }, "purchaseOrderID": { "type": "string" }, "jobID": { "type": "string" }, "partWarehouseID": { "type": "string" }, "partBinID": { "type": "string" }, "supplierOrganizationID": { "type": "string" }, "inventoryQtyRcvd": { "type": "number", "format": "double" }, "scrapQty": { "type": "number", "format": "double" }, "quantityToInspect": { "type": "number", "format": "double" }, "quantityToReturn": { "type": "number", "format": "double" }, "purchaseQtyRcvd": { "type": "number", "format": "double" }, "purchaseUnitCost": { "type": "number", "format": "double" }, "transactionDate": { "type": "string", "format": "date-time" }, "reference": { "type": "string" }, "shipmentID": { "type": "string" }, "shipmentLineID": { "type": "string" }, "receiptID": { "type": "string" }, "DMRShipmentID": { "type": "string" }, "RMAReceiptID": { "type": "string" }, "inspectionID": { "type": "string" }, "inventoryCountID": { "type": "string" }, "warehouseTransferID": { "type": "string" }, "warehouseReceiptID": { "type": "string" }, "projectID": { "type": "string" }, "projectAreaID": { "type": "string" }, "plantID": { "type": "string" }, "costType": { "type": "integer" }, "quantity": { "type": "number", "format": "double" }, "unitLaborCost": { "type": "number", "format": "double" }, "unitOverheadCost": { "type": "number", "format": "double" }, "unitMaterialCost": { "type": "number", "format": "double" }, "unitSubcontractCost": { "type": "number", "format": "double" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" } } }, "PaymentTerm": { "title": "PaymentTerm", "type": "object", "properties": { "description": { "type": "string" }, "paymentTermID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "uniqueID": { "type": "string" } } }, "PaymentTermListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PaymentTerm" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "Plant": { "title": "Plant", "type": "object", "properties": { "plantID": { "type": "string" }, "name": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" } } }, "Process": { "title": "Process", "type": "object", "properties": { "processID": { "type": "string" }, "shortDesc": { "type": "string" }, "setupRate": { "type": "string" }, "productionRate": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" } } }, "ProductionCalendar": { "title": "ProductionCalendar", "type": "object", "properties": { "productionDate": { "type": "string", "format": "date-time" }, "productionHours": { "type": "number", "format": "double" }, "productionStartTime": { "type": "string" }, "workCenterID": { "type": "string" }, "plantID": { "type": "string" }, "department": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" } } }, "Project": { "title": "Project", "type": "object", "properties": { "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "projectID": { "type": "string" }, "customerID": { "type": "string" }, "locationID": { "type": "string" }, "contactID": { "type": "string" }, "dueDate": { "type": "string", "format": "date" }, "projectDate": { "type": "string", "format": "date" }, "closedDate": { "type": "string", "format": "date" }, "shortDescription": { "type": "string" }, "longDescription": { "type": "string" }, "statusCode": { "type": "string" }, "isClosed": { "type": "boolean" }, "customer": { "$ref": "#/components/schemas/Organization" } } }, "PurchaseOrder": { "title": "PurchaseOrder", "type": "object", "properties": { "apInvoiceLocationID": { "type": "string" }, "buyerEmployeeID": { "type": "string" }, "currency": { "type": "string" }, "orderDate": { "type": "string", "format": "date" }, "plantID": { "type": "string" }, "projectID": { "type": "string" }, "purchaseOrderID": { "type": "string" }, "supplierOrganizationID": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "isClosed": { "type": "boolean" } } }, "PurchaseOrderLine": { "title": "PurchaseOrderLine", "type": "object", "properties": { "dueDate": { "type": "string", "format": "date" }, "extendedCost": { "type": "number", "format": "double" }, "foreignExtendedCost": { "type": "number", "format": "double" }, "partID": { "type": "string" }, "partRevisionID": { "type": "string" }, "partDescription": { "type": "string" }, "partWarehouse": { "type": "string" }, "purchaseOrderLineID": { "type": "string" }, "quantity": { "type": "number", "format": "double" }, "quantityReceived": { "type": "number", "format": "double" }, "unitCost": { "type": "number", "format": "double" }, "foreignUnitCost": { "type": "number", "format": "double" }, "isReceived": { "type": "boolean" }, "inspectionRequired": { "type": "boolean" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "isClosed": { "type": "boolean" }, "purchaseOrderID": { "type": "string" }, "unitOfMeasure": { "type": "string" }, "jobID": { "type": "string" }, "purchaseOrder": { "$ref": "#/components/schemas/PurchaseOrder" } } }, "PurchaseOrderLineListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PurchaseOrderLine" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "PurchaseOrderListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/PurchaseOrder" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "Quote": { "title": "Quote", "type": "object", "properties": { "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "quoteID": { "type": "string" }, "employeeID": { "type": "string" }, "organizationID": { "type": "string" }, "locationID": { "type": "string" }, "contactID": { "type": "string" }, "invoiceLocationID": { "type": "string" }, "quoteDate": { "type": "string", "format": "date" }, "dueDate": { "type": "string", "format": "date" }, "isClosed": { "type": "boolean" }, "closedDate": { "type": "string", "format": "date" }, "currencyRateID": { "type": "string" }, "customerID": { "type": "string" }, "expirationDate": { "type": "string", "format": "date" }, "plantID": { "type": "string" }, "projectID": { "type": "string" }, "shipToOrganizationID": { "type": "string" }, "shipToContactID": { "type": "string" }, "shipToLocationID": { "type": "string" }, "statusCode": { "type": "string" }, "totalSalesAmount": { "type": "number", "format": "double" }, "awardProbability": { "type": "number", "format": "double" }, "lostSaleCode": { "type": "string" }, "customer": { "$ref": "#/components/schemas/Organization" }, "contact": { "$ref": "#/components/schemas/Contact" }, "shipTo": { "$ref": "#/components/schemas/Organization" }, "shipToContact": { "$ref": "#/components/schemas/Contact" }, "project": { "$ref": "#/components/schemas/Project" } } }, "QuoteLine": { "title": "QuoteLine", "type": "object", "properties": { "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "quoteID": { "type": "string" }, "partID": { "type": "string" }, "partRevisionID": { "type": "string" }, "partGroupID": { "type": "string" }, "shortDescription": { "type": "string" }, "quoteQuantityID": { "type": "string", "description": "The QuoteQuantity record identifier to be used when calculating a Quote Total." }, "quoteLineID": { "type": "string" }, "resolutionReasonID": { "type": "string" }, "locationID": { "type": "string" }, "quote": { "$ref": "#/components/schemas/Quote" }, "resolutionReason": { "$ref": "#/components/schemas/Reason" }, "partGroup": { "$ref": "#/components/schemas/PartGroup" } } }, "QuoteLineListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/QuoteLine" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "QuoteListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Quote" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "QuoteQuantity": { "title": "QuoteQuantity", "type": "object", "properties": { "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "quoteQuantityID": { "type": "string" }, "quoteID": { "type": "string" }, "quoteLineID": { "type": "string" }, "quantity": { "type": "number", "format": "double" }, "baseUnitPrice": { "type": "number", "description": "The price expressed in the currency of the seller.", "format": "double" }, "foreignUnitPrice": { "type": "number", "description": "The price expressed in the currency of the buyer, if different from that of the seller.", "format": "double" }, "quote": { "$ref": "#/components/schemas/Quote" }, "quoteLine": { "$ref": "#/components/schemas/QuoteLine" } } }, "QuoteQuantityListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/QuoteQuantity" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "QuoteSalesPerson": { "title": "QuoteSalesPerson", "type": "object", "properties": { "quoteID": { "type": "string" }, "employeeID": { "type": "string" }, "percentage": { "type": "number", "format": "double" }, "isClosed": { "type": "boolean" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "sequenceNo": { "type": "integer", "format": "int32" }, "quote": { "$ref": "#/components/schemas/Quote" } } }, "Reason": { "title": "Reason", "type": "object", "properties": { "reasonID": { "type": "string" }, "description": { "type": "string" }, "name": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" } } }, "ReasonListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Reason" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "RmaClaim": { "title": "RmaClaim", "type": "object", "properties": { "claimDate": { "type": "string", "format": "date" }, "claimTotal": { "type": "number", "format": "double" }, "foreignTotal": { "type": "number", "format": "double" }, "currency": { "type": "string" }, "customerOrganizationID": { "type": "string" }, "plantID": { "type": "string" }, "claimID": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "status": { "type": "string" }, "customer": { "$ref": "#/components/schemas/Organization" } } }, "RmaClaimLine": { "title": "RmaClaimLine", "type": "object", "properties": { "unitPrice": { "type": "number", "format": "double" }, "foreignUnitPrice": { "type": "number", "format": "double" }, "extendedPrice": { "type": "number", "format": "double" }, "foreignExtendedPrice": { "type": "number", "format": "double" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "claimID": { "type": "string" }, "claimLineID": { "type": "string" }, "quantity": { "type": "integer", "format": "int64" }, "partID": { "type": "string" }, "partRevisionID": { "type": "string" }, "claim": { "$ref": "#/components/schemas/RmaClaim" } } }, "RmaReceiptLine": { "title": "RmaReceiptLine", "type": "object", "properties": { "description": { "type": "string" }, "isInspected": { "type": "boolean" }, "partID": { "type": "string" }, "partLongDescription": { "type": "string" }, "partRevisionID": { "type": "string" }, "partWarehouseID": { "type": "string" }, "projectID": { "type": "string" }, "isReceived": { "type": "boolean" }, "inspectionRequired": { "type": "boolean" }, "claimLineID": { "type": "string" }, "claimQuantity": { "type": "number", "format": "double" }, "receiptID": { "type": "string" }, "receiptLineID": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "isClosed": { "type": "boolean" }, "isReversed": { "type": "boolean" }, "claimID": { "type": "string" }, "claim": { "$ref": "#/components/schemas/RmaClaim" }, "claimLine": { "$ref": "#/components/schemas/RmaClaimLine" } } }, "SalesAccount": { "title": "SalesAccount", "type": "object", "properties": { "salesAccountID": { "type": "string" }, "name": { "type": "string" }, "isActive": { "type": "boolean" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" } } }, "SalesAccountListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/SalesAccount" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "SalesOrder": { "title": "SalesOrder", "type": "object", "properties": { "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "salesOrderID": { "type": "string" }, "customerID": { "type": "string" }, "orderDate": { "type": "string", "format": "date" }, "plantID": { "type": "string" }, "projectID": { "type": "string" }, "salesOrderType": { "type": "string" }, "totalSalesAmount": { "type": "number", "format": "double" }, "status": { "type": "string" }, "originalOrderType": { "type": "string" }, "quoteID": { "type": "string" }, "closedDate": { "type": "string", "format": "date" }, "customer": { "$ref": "#/components/schemas/Organization" }, "plant": { "$ref": "#/components/schemas/Plant" }, "project": { "$ref": "#/components/schemas/Project" } } }, "SalesOrderCreateModel": { "required": [ "customerID" ], "type": "object", "properties": { "customerID": { "minLength": 1, "type": "string" }, "customerPONumber": { "type": "string", "nullable": true }, "currencyCode": { "type": "string", "nullable": true }, "comments": { "type": "string", "nullable": true }, "orderDate": { "type": "string", "format": "date", "nullable": true }, "contactID": { "type": "string", "nullable": true }, "salesAccountID": { "type": "string", "nullable": true }, "paymentTermID": { "type": "string", "nullable": true }, "plantID": { "type": "string", "nullable": true }, "shipToLocationID": { "type": "string", "nullable": true }, "shipMethodID": { "type": "string", "nullable": true }, "requestedShipDate": { "type": "string", "format": "date", "nullable": true }, "lines": { "type": "array", "items": { "$ref": "#/components/schemas/SalesOrderLineCreateModel" }, "nullable": true } }, "additionalProperties": false }, "SalesOrderDelivery": { "title": "SalesOrderDelivery", "type": "object", "properties": { "salesOrderID": { "type": "string" }, "orderLine": { "type": "integer" }, "orderLineDelivery": { "type": "string" }, "promisedDate": { "type": "string", "format": "date-time" }, "promisedQty": { "type": "number", "format": "double" }, "shippedDate": { "type": "string", "format": "date-time" }, "shippedQty": { "type": "number", "format": "double" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "deliveryTypeCode": { "type": "string" }, "salesOrderType": { "type": "string" }, "salesOrderJobs": { "type": "array", "items": { "$ref": "#/components/schemas/SalesOrderJob" } } } }, "SalesOrderJob": { "title": "SalesOrderJob", "type": "object", "properties": { "salesOrderID": { "type": "string" }, "orderLine": { "type": "integer" }, "orderLineDelivery": { "type": "string" }, "jobID": { "type": "string" }, "orderJobSeq": { "type": "integer", "format": "int32" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" } } }, "SalesOrderJobListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/SalesOrderJob" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "SalesOrderLine": { "title": "SalesOrderLine", "type": "object", "properties": { "salesOrderID": { "type": "string" }, "orderLine": { "type": "integer" }, "totalSalePrice": { "type": "number", "format": "double" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "partID": { "type": "string" }, "partRevisionID": { "type": "string" }, "partGroupID": { "type": "string" }, "shortDescription": { "type": "string" }, "saleUom": { "type": "string" }, "baseUnitPrice": { "type": "number", "description": "The price expressed in the currency of the seller.", "format": "double" }, "foreignUnitPrice": { "type": "number", "description": "The price expressed in the currency of the buyer, if different from that of the seller.", "format": "double" }, "baseExtendedPrice": { "type": "number", "description": "The extended (qty x price) total expressed in the currency of the seller.", "format": "double" }, "foreignExtendedPrice": { "type": "number", "description": "The extended (qty x price) total expressed in the currency of the buyer, if different from that of the seller.", "format": "double" }, "quantityOrdered": { "type": "number", "format": "double" }, "quantityShipped": { "type": "number", "format": "double" }, "purchaseOrderCost": { "type": "number", "format": "double" }, "purchaseOrderCostForeign": { "type": "number", "format": "double" }, "salesOrderType": { "type": "string" }, "locationID": { "type": "string" }, "shippedDate": { "type": "string", "format": "date-time" }, "isPosted": { "type": "boolean" }, "dueDate": { "type": "string", "format": "date-time" }, "salesOrderDeliveries": { "type": "array", "items": { "$ref": "#/components/schemas/SalesOrderDelivery" } }, "salesOrderJobs": { "$ref": "#/components/schemas/SalesOrderJob" }, "salesOrder": { "$ref": "#/components/schemas/SalesOrder" }, "partRevision": { "$ref": "#/components/schemas/PartRevision" }, "partGroup": { "$ref": "#/components/schemas/PartGroup" } } }, "SalesOrderLineCreateModel": { "type": "object", "properties": { "salesOrderID": { "type": "string", "nullable": true }, "partID": { "type": "string", "nullable": true }, "partRevisionID": { "type": "string", "nullable": true }, "partGroupID": { "type": "string", "description": "Should this be able to be specified???", "nullable": true }, "quantityOrdered": { "type": "number", "format": "double", "nullable": true }, "saleUom": { "type": "string", "nullable": true }, "baseUnitPrice": { "type": "number", "format": "double", "nullable": true }, "foreignUnitPrice": { "type": "number", "format": "double", "nullable": true }, "quoteID": { "type": "string", "nullable": true }, "quoteLineID": { "type": "string", "nullable": true }, "dueDate": { "type": "string", "format": "date", "nullable": true } }, "additionalProperties": false }, "SalesOrderLineListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/SalesOrderLine" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "SalesOrderListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/SalesOrder" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "SalesOrderSalesPerson": { "title": "SalesOrderSalesPerson", "type": "object", "properties": { "salesOrderID": { "type": "string" }, "salesEmployeeID": { "type": "string" }, "uniqueID": { "type": "string" }, "isActive": { "type": "boolean" }, "sequenceNo": { "type": "integer", "format": "int32" }, "rowVersion": { "type": "integer", "format": "int64" }, "salesOrderType": { "type": "string" }, "percentage": { "type": "number", "format": "double" }, "salesOrder": { "$ref": "#/components/schemas/SalesOrder" }, "salesEmployee": { "$ref": "#/components/schemas/Employee" } } }, "Shift": { "title": "Shift", "type": "object", "properties": { "shiftID": { "type": "number", "format": "float" }, "shortDesc": { "type": "string" }, "inactiveDate": { "type": "string", "format": "date-time" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "shiftDays": { "type": "array", "items": { "$ref": "#/components/schemas/ShiftDay" } } } }, "ShiftDay": { "title": "ShiftDay", "type": "object", "properties": { "shiftID": { "type": "number", "format": "float" }, "shiftDay": { "type": "number", "format": "float" }, "startTime": { "type": "string" }, "endTime": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" } } }, "ShiftListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Shift" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "ShipmentLine": { "title": "ShipmentLine", "type": "object", "properties": { "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "shipmentID": { "type": "string" }, "shipmentLineID": { "type": "string" }, "partID": { "type": "string" }, "partRevisionID": { "type": "string" }, "description": { "type": "string" }, "partWarehouseID": { "type": "string" }, "partBinID": { "type": "string" }, "invQtyShipped": { "type": "number", "format": "double" }, "jobQtyShipped": { "type": "number", "format": "double" }, "unitPriceForeign": { "type": "number", "format": "double" }, "extendedPriceForeign": { "type": "number", "format": "double" }, "isShippedComplete": { "type": "boolean" }, "unitOfMeasure": { "type": "string" }, "salesOrderID": { "type": "string" }, "salesOrderLineID": { "type": "string" }, "salesOrderDeliveryID": { "type": "string" }, "jobID": { "type": "string" }, "partGroupID": { "type": "string" }, "projectID": { "type": "string" } } }, "TaxCode": { "title": "TaxCode", "type": "object", "properties": { "description": { "type": "string" }, "taxCodeID": { "type": "string" }, "isActive": { "type": "boolean" }, "rowVersion": { "type": "integer", "format": "int64" }, "uniqueID": { "type": "string" } } }, "TaxCodeListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/TaxCode" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "TimeZone": { "title": "TimeZone", "type": "object", "properties": { "timeZoneName": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" } } }, "TimeZoneListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/TimeZone" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "Timecard": { "title": "Timecard", "type": "object", "properties": { "timecardID": { "type": "string" }, "employeeID": { "type": "string" }, "shiftID": { "type": "number", "format": "float" }, "timecardDate": { "type": "string", "format": "date-time" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "timecardlines": { "type": "array", "items": { "$ref": "#/components/schemas/TimecardLine" } }, "employees": { "type": "array", "items": { "$ref": "#/components/schemas/Employee" } } } }, "TimecardCreateModel": { "required": [ "employeeID", "timecardDate" ], "type": "object", "properties": { "employeeID": { "minLength": 1, "type": "string" }, "timecardDate": { "type": "string", "format": "date" }, "shiftID": { "type": "string", "nullable": true }, "timecardLines": { "type": "array", "items": { "$ref": "#/components/schemas/TimecardLineCreateModel" }, "nullable": true } }, "additionalProperties": false }, "TimecardLine": { "title": "TimecardLine", "type": "object", "properties": { "timecardID": { "type": "string" }, "timecardLine": { "type": "string" }, "jobID": { "type": "string" }, "jobAssembly": { "type": "string" }, "jobOperation": { "type": "integer", "format": "int32" }, "workCenterID": { "type": "string" }, "processID": { "type": "string" }, "status": { "type": "string" }, "timecardType": { "type": "string" }, "goodQty": { "type": "number", "format": "double" }, "scrapQty": { "type": "number", "format": "double" }, "reworkQty": { "type": "number", "format": "double" }, "rejectQty": { "type": "number", "format": "double" }, "startTime": { "type": "string", "format": "date-time" }, "endTime": { "type": "string", "format": "date-time" }, "machineHours": { "type": "number", "format": "double" }, "laborHours": { "type": "number", "format": "double" }, "employeeID": { "type": "integer", "format": "int32" }, "timecardDate": { "type": "string", "format": "date-time" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "workCenters": { "type": "array", "items": { "$ref": "#/components/schemas/WorkCenter" } }, "workCenter": { "$ref": "#/components/schemas/WorkCenter" }, "timecards": { "type": "array", "items": { "$ref": "#/components/schemas/Timecard" } }, "timecard": { "$ref": "#/components/schemas/Timecard" }, "jobs": { "$ref": "#/components/schemas/Job" }, "job": { "$ref": "#/components/schemas/Job" }, "processes": { "$ref": "#/components/schemas/Process" }, "process": { "$ref": "#/components/schemas/Process" }, "jobOperations": { "$ref": "#/components/schemas/JobOperation" }, "jobOperationx": { "$ref": "#/components/schemas/JobOperation" }, "salesOrderDeliveries": { "type": "array", "items": { "$ref": "#/components/schemas/SalesOrderDelivery" } }, "salesOrderJobs": { "$ref": "#/components/schemas/SalesOrderJob" }, "salesOrderJob": { "$ref": "#/components/schemas/SalesOrderJob" } } }, "TimecardLineCreateModel": { "required": [ "jobID" ], "type": "object", "properties": { "jobID": { "minLength": 1, "type": "string" }, "jobOperationSeq": { "type": "integer", "format": "int32", "nullable": true }, "elapsedTime": { "type": "number", "format": "double", "nullable": true }, "setupTime": { "type": "number", "format": "double", "nullable": true }, "machineHours": { "type": "number", "description": "Not used for JobBOSS²", "format": "double", "nullable": true }, "laborHours": { "type": "number", "description": "Not used for JobBOSS²", "format": "double", "nullable": true }, "processID": { "type": "string", "nullable": true }, "workCenterID": { "type": "string", "nullable": true }, "goodQty": { "type": "number", "format": "double", "nullable": true }, "scrapQty": { "type": "number", "format": "double", "nullable": true }, "comments": { "type": "string", "nullable": true }, "startTime": { "type": "string", "format": "date-time", "nullable": true }, "endTime": { "type": "string", "format": "date-time", "nullable": true }, "jobOperationID": { "type": "string", "nullable": true } }, "additionalProperties": false }, "TimecardLineDetailCreateModel": { "required": [ "jobID" ], "type": "object", "properties": { "jobID": { "minLength": 1, "type": "string" }, "jobOperationSeq": { "type": "integer", "format": "int32", "nullable": true }, "elapsedTime": { "type": "number", "format": "double", "nullable": true }, "setupTime": { "type": "number", "format": "double", "nullable": true }, "machineHours": { "type": "number", "description": "Not used for JobBOSS²", "format": "double", "nullable": true }, "laborHours": { "type": "number", "description": "Not used for JobBOSS²", "format": "double", "nullable": true }, "processID": { "type": "string", "nullable": true }, "workCenterID": { "type": "string", "nullable": true }, "goodQty": { "type": "number", "format": "double", "nullable": true }, "scrapQty": { "type": "number", "format": "double", "nullable": true }, "comments": { "type": "string", "nullable": true }, "startTime": { "type": "string", "format": "date-time", "nullable": true }, "endTime": { "type": "string", "format": "date-time", "nullable": true }, "jobOperationID": { "type": "string", "nullable": true }, "timecardID": { "type": "string", "nullable": true }, "employeeID": { "type": "string", "nullable": true }, "timecardDate": { "type": "string", "format": "date", "nullable": true } }, "additionalProperties": false }, "TimecardLineListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/TimecardLine" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "TimecardLineUpdateModel": { "type": "object", "properties": { "goodQty": { "type": "number", "format": "double", "nullable": true }, "scrapQty": { "type": "number", "format": "double", "nullable": true } }, "additionalProperties": false }, "TimecardListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/Timecard" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "UserInfoResponse": { "type": "object", "properties": { "userId": { "type": "string", "description": "Gets the User ID of the authenticated user.", "nullable": true }, "username": { "type": "string", "description": "Gets the User name of the authenticated user.", "nullable": true }, "expires": { "type": "string", "description": "Gets the expiration date of the current user's access token.", "format": "date-time", "nullable": true }, "companyId": { "type": "integer", "description": "Gets a unique identifier for the company being accessed. \r\n*Note* that this does *NOT* uniquely identify the database being accessed. \r\nA single company may have more than one database accessible via the ERP API.", "format": "int32" }, "companyName": { "type": "string", "description": "Gets the assigned company name. The format of this value varies by Product.", "nullable": true }, "companyCustomerId": { "type": "string", "description": "Gets the assigned customer ID value. The format of this value varies by Product.", "nullable": true }, "companyTimeZone": { "type": "string", "description": "Gets a value that indicates the time zone of the company being accessed.", "nullable": true }, "productId": { "type": "integer", "description": "The unique product identifier.", "format": "int32" }, "productName": { "type": "string", "description": "The product name.", "nullable": true }, "integrationName": { "type": "string", "description": "The name of the integration that the authenticated user is able to use.", "nullable": true }, "systemName": { "type": "string", "description": "The name of the integration system that the authenticated user is able to use.", "nullable": true } }, "additionalProperties": false }, "ValidValue": { "type": "object", "properties": { "code": { "type": "string", "nullable": true }, "description": { "type": "string", "nullable": true } }, "additionalProperties": false }, "ValidValueSet": { "type": "object", "properties": { "description": { "type": "string", "description": "A description of the valid value set.", "nullable": true }, "unique": { "type": "boolean", "description": "A value indicating if the values in this set are unique or can contain multiple values with the same code." }, "values": { "type": "array", "items": { "$ref": "#/components/schemas/ValidValue" }, "description": "A collection of valid values for this set.", "nullable": true }, "resultCount": { "type": "integer", "description": "The number of valid values in the collection for this set.", "format": "int32", "readOnly": true } }, "additionalProperties": false }, "WorkCenter": { "title": "WorkCenter", "type": "object", "properties": { "workCenterID": { "type": "string" }, "shortDesc": { "type": "string" }, "deptID": { "type": "string" }, "overHeadRate": { "type": "string" }, "quoteRate": { "type": "string" }, "processID": { "type": "string" }, "parentWorkCenterID": { "type": "string" }, "shiftID": { "type": "string" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "laborRate": { "type": "string" }, "departments": { "type": "array", "items": { "$ref": "#/components/schemas/Department" } }, "shifts": { "type": "array", "items": { "$ref": "#/components/schemas/Shift" } } } }, "WorkCenterCreateModel": { "required": [ "workCenterID" ], "type": "object", "properties": { "workCenterID": { "minLength": 1, "type": "string", "description": "The ID or code identifying this workcenter." }, "shortDesc": { "type": "string", "description": "The short description for the workcenter.", "nullable": true }, "deptID": { "type": "string", "description": "The ID of the department associated with the workcenter.", "nullable": true }, "overHeadRate": { "type": "string", "description": "The overhead rate for the workcenter.", "nullable": true }, "laborRate": { "type": "string", "description": "The labor rate for the workcenter.", "nullable": true }, "quoteRate": { "type": "string", "description": "The Quote rate for the workcenter.", "nullable": true }, "processID": { "type": "string", "description": "The ID of the process associated with the workcenter.", "nullable": true } }, "additionalProperties": false, "description": "A model used to create new workcenters." }, "WorkCenterListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/WorkCenter" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false }, "WorkCenterRateBreak": { "title": "WorkCenterRateBreak", "type": "object", "properties": { "workCenterID": { "type": "string" }, "shortDesc": { "type": "string" }, "ordinal": { "type": "integer" }, "setupRate": { "type": "number", "format": "double" }, "prodRate": { "type": "number", "format": "double" }, "uniqueID": { "type": "string" }, "rowVersion": { "type": "integer", "format": "int64" }, "laborRate": { "type": "string" } } }, "WorkCenterRateBreakListResponse": { "type": "object", "properties": { "data": { "type": "array", "items": { "$ref": "#/components/schemas/WorkCenterRateBreak" }, "nullable": true, "readOnly": true }, "resultCount": { "type": "integer", "format": "int32" } }, "additionalProperties": false } }, "securitySchemes": { "Bearer": { "type": "oauth2", "description": "OAuth 2.0 Client Credentials Flow with API Users issued from Integration Engine Management Console", "flows": { "clientCredentials": { "tokenUrl": "https://api-user.integrations.ecimanufacturing.com/oauth2/api-user/token", "scopes": { "openid": "openid" } } } } } }, "security": [ { "Bearer": [ ] } ] }