openapi: 3.2.0 info: title: JobBOSS² Public Product Codes API description: Provides a common API surface for accessing ECI ERP JobBOSS². version: v1 servers: - url: https://api-jb2.integrations.ecimanufacturing.com:443 description: API Host security: - Bearer: [] tags: - name: Product Codes paths: /api/v1/product-codes: get: tags: - Product Codes summary: Gets a list of Product Codes description: 'By default a product code response will include only the fields: active, ARAccount, cashDiscount, description, freightAccount, lastModDate, lastModUser, productCode, uniqueID, salesAccount. You may specify the exact fields to return using the fields parameter.' 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 field to sort by. See the Sort Expressions section for more information. schema: type: string - name: filters in: query description: Filters must be provided as query string parameters as defined in the Filter Expressions section. schema: type: object additionalProperties: type: string examples: No filters: {} Filter by AR Account: value: ARAccount: '1240' - name: skip in: query description: The number of records at the start of the result set to skip over. schema: type: string - name: take in: query description: The number of records to retrieve. schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ProductCodeListSuccessResponse' example: Data: - active: false ARAccount: string cashDiscount: string description: string enteredDate: '2026-09-06T17:13:12.0000000+00:00' freightAccount: string lastModDate: '2026-09-06T17:13:12.0000000+00:00' lastModUser: string productCode: string revisedDate: '2026-09-06T17:13:12.0000000+00:00' salesAccount: string uniqueID: 0 operationId: getApiV1ProductCodes x-operation-id-source: derived /api/v1/product-codes/{productCode}: get: tags: - Product Codes summary: Gets a Product Code by specifying the productCode description: 'By default a product code response will include only the fields: active, ARAccount, cashDiscount, description, freightAccount, lastModDate, lastModUser, productCode, uniqueID, salesAccount. You may specify the exact fields to return using the fields parameter.' parameters: - name: productCode in: path required: true schema: type: string - name: fields in: query description: A comma separated list of fields to include in the result. schema: type: string responses: '200': description: Success content: application/json: schema: $ref: '#/components/schemas/ProductCodeSuccessResponse' example: Data: active: false ARAccount: string cashDiscount: string description: string enteredDate: '2026-09-06T17:13:12.0000000+00:00' freightAccount: string lastModDate: '2026-09-06T17:13:12.0000000+00:00' lastModUser: string productCode: string revisedDate: '2026-09-06T17:13:12.0000000+00:00' salesAccount: string uniqueID: 0 operationId: getApiV1ProductCodesByProductCode x-operation-id-source: derived components: schemas: ProductCode: type: object properties: active: type: boolean readOnly: true ARAccount: type: - string - 'null' readOnly: true cashDiscount: type: - string - 'null' readOnly: true description: type: - string - 'null' readOnly: true enteredDate: type: - string - 'null' format: date-time readOnly: true freightAccount: type: - string - 'null' readOnly: true lastModDate: type: - string - 'null' format: date-time readOnly: true lastModUser: type: - string - 'null' readOnly: true productCode: type: - string - 'null' readOnly: true revisedDate: type: - string - 'null' format: date-time readOnly: true salesAccount: type: - string - 'null' readOnly: true uniqueID: type: integer format: int32 readOnly: true additionalProperties: false ProductCodeListSuccessResponse: type: object properties: Data: type: - array - 'null' items: $ref: '#/components/schemas/ProductCode' additionalProperties: false ProductCodeSuccessResponse: type: object properties: Data: $ref: '#/components/schemas/ProductCode' 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