openapi: 3.0.1
info:
  title: Documentation ProductService
  description: ''
  version: '1.1'
servers:
  - url: https://customer-slug.api-se.norce.tech/commerce/product/1.1
paths:
  /ListAssortments:
    get:
      tags:
        - Assortments
      summary: List product assortments
      description: Reference list of Product Assortments.
      operationId: ListAssortments
      parameters:
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdValue'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdValue'
        '500':
          description: Internal Server Error
          content: {}
  /ListCategories:
    get:
      tags:
        - Categories
      summary: List categories (abbreviated)
      description: Lists categories as defined in Storm. Used for lookup.
      operationId: ListCategories
      parameters:
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdValue'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdValue'
        '500':
          description: Internal Server Error
          content: {}
  /ListCategoryItems:
    get:
      tags:
        - Categories
      summary: List categories
      description: Navigational structure.
      operationId: ListCategoryItems
      parameters:
        - name: categoryStructureId
          in: query
          description: >-
            Specifies which category structure to use. If none is supplied,
            value is resolved from Application.
          schema:
            type: string
        - name: level
          in: query
          description: If supplied, only returns structure nodes of specified level.
          schema:
            type: string
        - name: parentId
          in: query
          description: If supplied, only returns child nodes of specified parent node.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CategoryItem'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CategoryItem'
        '500':
          description: Internal Server Error
          content: {}
  /ListCategoryItemsByPricelists:
    get:
      tags:
        - Categories
      summary: List categories by pricelists
      description: Lists categories as defined by the products on the priceLists in Storm.
      operationId: ListCategoryItemsByPricelists
      parameters:
        - name: pricelistSeed
          in: query
          description: Accepts a comma separated string of pricelist internal ids.
          required: true
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: categoryStructureId
          in: query
          description: >-
            Specifies which category structure to use. If none is supplied,
            value is resolved from Application.
          schema:
            type: string
        - name: level
          in: query
          description: If supplied, only returns structure nodes of specified level.
          schema:
            type: string
        - name: parentId
          in: query
          description: If supplied, only returns child nodes of specified parent node.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CategoryItem'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CategoryItem'
        '500':
          description: Internal Server Error
          content: {}
  /SearchCategories:
    get:
      tags:
        - Categories
      summary: Search categories
      operationId: SearchCategories
      parameters:
        - name: searchString
          in: query
          description: >-
            The string to search for. Searchable fields are code, name, synonyms
            and unspsc code.
          required: true
          schema:
            type: string
        - name: size
          in: query
          description: Number of items to display.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdValue'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdValue'
        '500':
          description: Internal Server Error
          content: {}
  /ListConfigurationItems:
    get:
      tags:
        - Configurations
      summary: List configuration items
      description: >-
        Lists all configuration items for the supplied list of partNos. The list
        will contain an item for each partNo.
      operationId: ListConfigurationItems
      parameters:
        - name: partNoSeed
          in: query
          description: >-
            A comma separated list of partNos for which to fetch all
            configuration items.
          required: true
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ConfigurationItem'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ConfigurationItem'
        '500':
          description: Internal Server Error
          content: {}
  /ListFamilies:
    get:
      tags:
        - Families
      summary: List families
      description: Lists product families.
      operationId: ListFamilies
      parameters:
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status IDs. Lookup references in
            ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment IDs. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList IDs to use, if any. PriceLists
            supplied must be valid, either from the application's public
            priceList or any customer or company priceLists or any valid client
            priceLists. For clients configured to use priceListSeed exclusively
            in the API only the supplied priceLists will be used. If this is not
            configured, the supplied priceLists will be appended to the valid
            priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Family'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Family'
        '500':
          description: Internal Server Error
          content: {}
  /ListFileTypeIds:
    get:
      tags:
        - Files
      summary: List file types
      description: Reference list of Product file type ids.
      operationId: ListFileTypeIds
      parameters:
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdValue'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdValue'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductFilters: {}
  /ListProductFilters2:
    get:
      tags:
        - Filters
      summary: List product filters (v2)
      description: Retrieves available filters for ListProduct
      operationId: ListProductFilters2
      parameters:
        - name: searchString
          in: query
          description: Free text search string. Minimum of 2 characters required.
          schema:
            type: string
        - name: categorySeed
          in: query
          description: >-
            Accepts a comma separated string of Category internal ids, retrieved
            from CategoryItem.
          schema:
            type: string
        - name: manufacturerSeed
          in: query
          description: Accepts a comma separated string of Manufacturer internal ids.
          schema:
            type: string
        - name: flagSeed
          in: query
          description: >-
            Accepts a comma separated string of Flag internal ids. Lookup
            references in ListFlags.
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: parametrics
          in: query
          description: >-
            Parametric values formatted as ListParameters =
            L[ParametricId]_[ListId], MultiParameters =
            M[ParametricId]_[MultipleId], ValueParameters =
            V[ParametricId]_[ValueFrom]-[ValueTo] with asterisk (*) as
            separator. Sample: L10_45*M20_254*M20_145*V60_256-1024*V70_1.4-1.9.
            The logical operation between values is AND.
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Sample: Field1 Asc, Field2 Desc.
          schema:
            type: string
        - name: filter
          in: query
          description: >-
            Property values to filter on. The return value's ItemCount will be
            the number of items after filters have been applied. General format:
            'filterName|value specification'. See Filter.Name for valid values
            and the different Filter entities for value specifications. Sample:
            catf|11946,11947;mfrf|7276;ohf|true;flgf|42,46;prcf|true_10-20;parf|L6360_13239*M6355_3387*M6355_3390!V60_256-1024*V70_1.4-1.9.
            The logical operator between comma separated values in catf, mfrf
            and flgf is OR while parf values use AND.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Filter'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Filter'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductFiltersByCustomer:
    get:
      tags:
        - Filters
      summary: List product filters by customer
      description: >-
        Retrieves available filters for product list based on customer
        priceLists.
      operationId: ListProductFiltersByCustomer
      parameters:
        - name: searchString
          in: query
          description: Free text search string.
          schema:
            type: string
        - name: categorySeed
          in: query
          description: >-
            Accepts a comma separated string of Category internal ids, retrieved
            from CategoryItem.
          schema:
            type: string
        - name: manufacturerSeed
          in: query
          description: Accepts a comma separated string of Manufacturer internal ids.
          schema:
            type: string
        - name: flagSeed
          in: query
          description: >-
            Accepts a comma separated string of Flag internal ids. Lookup
            references in ListFlags.
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: parametrics
          in: query
          description: >-
            Parametric values formatted as ListParameters =
            L[ParametricId]_[ListId], MultiParameters =
            M[ParametricId]_[MultipleId], ValueParameters =
            V[ParametricId]_[ValueFrom]-[ValueTo] with asterisk (*) as
            separator. Sample: L10_45*M20_254*M20_145*V60_256-1024*V70_1.4-1.9.
            The logical operation between values is AND.
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: integer
            format: int32
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Sample: Field1 Asc, Field2 Desc.
          schema:
            type: string
        - name: pageNo
          in: query
          description: >-
            Page numbers start with 1. Default is 1. If you specify a pageNo
            outside the range of items, an empty list will be returned. PageSize
            is mandatory for pageNo to work.
          schema:
            type: string
        - name: pageSize
          in: query
          description: Number of items to display per page. Mandatory if using pageNo.
          schema:
            type: string
        - name: filter
          in: query
          description: >-
            Property values to filter on. The return value's ItemCount will be
            the number of items after filters have been applied. General format:
            'filterName|value specification'. See Filter.Name for valid values
            and the different Filter entities for value specifications. Sample:
            catf|11946,11947;mfrf|7276;ohf|true;flgf|42,46;prcf|true_10-20;parf|L6360_13239*M6355_3387*M6355_3390!V60_256-1024*V70_1.4-1.9.
            The logical operator between comma separated values in catf, mfrf
            and flgf is OR while parf values use AND.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Filter'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Filter'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductFiltersByIds:
    get:
      tags:
        - Filters
      summary: List product filters by product ids
      description: Retrieves available filters for product list based on product ids.
      operationId: ListProductFiltersByIds
      parameters:
        - name: idSeed
          in: query
          description: Accepts a comma separated string of product internal ids.
          required: true
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Sample: Field1 Asc, Field2 Desc.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Filter'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Filter'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductFiltersByNode: {}
  /ListProductFiltersByNode2:
    get:
      tags:
        - Filters
      summary: List product filters by node (v2)
      description: Retrieves available filters for ListProduct by Navigation Node.
      operationId: ListProductFiltersByNode2
      parameters:
        - name: nodeKey
          in: query
          description: Key from NavigationNode.
          required: true
          schema:
            type: string
            format: guid
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Sample: Field1 Asc, Field2 Desc.
          schema:
            type: string
        - name: filter
          in: query
          description: >-
            Property values to filter on. The return value's ItemCount will be
            the number of items after filters have been applied. General format:
            'filterName|value specification'. See Filter.Name for valid values
            and the different Filter entities for value specifications. Sample:
            catf|11946,11947;mfrf|7276;ohf|true;flgf|42,46;prcf|true_10-20;parf|L6360_13239*M6355_3387*M6355_3390!V60_256-1024*V70_1.4-1.9.
            The logical operator between comma separated values in catf, mfrf
            and flgf is OR while parf values use AND.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Filter'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Filter'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductFiltersByPricelist:
    get:
      tags:
        - Filters
      summary: List product filters by pricelist
      description: Retrieves available filters for product list based on priceLists.
      operationId: ListProductFiltersByPricelist
      parameters:
        - name: searchString
          in: query
          description: Free text search string.
          schema:
            type: string
        - name: categorySeed
          in: query
          description: >-
            Accepts a comma separated string of Category internal ids, retrieved
            from CategoryItem.
          schema:
            type: string
        - name: manufacturerSeed
          in: query
          description: Accepts a comma separated string of Manufacturer internal ids.
          schema:
            type: string
        - name: flagSeed
          in: query
          description: >-
            Accepts a comma separated string of Flag internal ids. Lookup
            references in ListFlags.
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: parametrics
          in: query
          description: >-
            Parametric values formatted as ListParameters =
            L[ParametricId]_[ListId], MultiParameters =
            M[ParametricId]_[MultipleId], ValueParameters =
            V[ParametricId]_[ValueFrom]-[ValueTo] with asterisk (*) as
            separator. Sample: L10_45*M20_254*M20_145*V60_256-1024*V70_1.4-1.9.
            The logical operation between values is AND.
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Sample: Field1 Asc, Field2 Desc.
          schema:
            type: string
        - name: pageNo
          in: query
          description: >-
            Page numbers start with 1. Default is 1. If you specify a pageNo
            outside the range of items, an empty list will be returned. PageSize
            is mandatory for pageNo to work.
          schema:
            type: string
        - name: pageSize
          in: query
          description: Number of items to display per page. Mandatory if using pageNo.
          schema:
            type: string
        - name: filter
          in: query
          description: >-
            Property values to filter on. The return value's ItemCount will be
            the number of items after filters have been applied. General format:
            'filterName|value specification'. See Filter.Name for valid values
            and the different Filter entities for value specifications. Sample:
            catf|11946,11947;mfrf|7276;ohf|true;flgf|42,46;prcf|true_10-20;parf|L6360_13239*M6355_3387*M6355_3390!V60_256-1024*V70_1.4-1.9.
            The logical operator between comma separated values in catf, mfrf
            and flgf is OR while parf values use AND.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Filter'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Filter'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductItemFilterValues:
    get:
      tags:
        - Filters
      summary: List filter values
      description: >-
        Returns a list of filter values for products. The list can be used to
        filter products client side.
      operationId: ListProductItemFilterValues
      parameters:
        - name: searchString
          in: query
          description: Free text search string.
          schema:
            type: string
        - name: categorySeed
          in: query
          description: >-
            Accepts a comma separated string of Category internal ids, retrieved
            from CategoryItem.
          schema:
            type: string
        - name: manufacturerSeed
          in: query
          description: Accepts a comma separated string of Manufacturer internal ids.
          schema:
            type: string
        - name: flagSeed
          in: query
          description: >-
            Accepts a comma separated string of Flag internal ids. Lookup
            references in ListFlags.
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: parametrics
          in: query
          description: >-
            Parametric values formatted as ListParameters =
            L[ParametricId]_[ListId], MultiParameters =
            M[ParametricId]_[MultipleId], ValueParameters =
            V[ParametricId]_[ValueFrom]-[ValueTo] with asterisk (*) as
            separator. Sample: L10_45*M20_254*M20_145*V60_256-1024*V70_1.4-1.9.
            The logical operation between values is AND.
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Sample: Field1 Asc, Field2 Desc.
          schema:
            type: string
        - name: pageNo
          in: query
          description: >-
            Page numbers start with 1. Default is 1. If you specify a pageNo
            outside the range of items, an empty list will be returned. PageSize
            is mandatory for pageNo to work.
          schema:
            type: string
        - name: pageSize
          in: query
          description: Number of items to display per page. Mandatory if using pageNo.
          schema:
            type: string
        - name: filter
          in: query
          description: >-
            Property values to filter on. The return value's ItemCount will be
            the number of items after filters have been applied. General format:
            'filterName|value specification'. See Filter.Name for valid values
            and the different Filter entities for value specifications. Sample:
            catf|11946,11947;mfrf|7276;ohf|true;flgf|42,46;prcf|true_10-20;parf|L6360_13239*M6355_3387*M6355_3390!V60_256-1024*V70_1.4-1.9.
            The logical operator between comma separated values in catf, mfrf
            and flgf is OR while parf values use AND.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProductItemFilterValues'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProductItemFilterValues'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductItemFilterValuesByCustomer:
    get:
      tags:
        - Filters
      summary: List filter values by customer
      description: >-
        Returns a list of filter values for product list. The list can be used
        to filter products client side.
      operationId: ListProductItemFilterValuesByCustomer
      parameters:
        - name: searchString
          in: query
          description: Free text search string.
          schema:
            type: string
        - name: categorySeed
          in: query
          description: >-
            Accepts a comma separated string of Category internal ids, retrieved
            from CategoryItem.
          schema:
            type: string
        - name: manufacturerSeed
          in: query
          description: Accepts a comma separated string of Manufacturer internal ids.
          schema:
            type: string
        - name: flagSeed
          in: query
          description: >-
            Accepts a comma separated string of Flag internal ids. Lookup
            references in ListFlags.
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: parametrics
          in: query
          description: >-
            Parametric values formatted as ListParameters =
            L[ParametricId]_[ListId], MultiParameters =
            M[ParametricId]_[MultipleId], ValueParameters =
            V[ParametricId]_[ValueFrom]-[ValueTo] with asterisk (*) as
            separator. Sample: L10_45*M20_254*M20_145*V60_256-1024*V70_1.4-1.9.
            The logical operation between values is AND.
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: integer
            format: int32
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Sample: Field1 Asc, Field2 Desc.
          schema:
            type: string
        - name: pageNo
          in: query
          description: >-
            Page numbers start with 1. Default is 1. If you specify a pageNo
            outside the range of items, an empty list will be returned. PageSize
            is mandatory for pageNo to work.
          schema:
            type: string
        - name: pageSize
          in: query
          description: Number of items to display per page. Mandatory if using pageNo.
          schema:
            type: string
        - name: filter
          in: query
          description: >-
            Property values to filter on. The return value's ItemCount will be
            the number of items after filters have been applied. General format:
            'filterName|value specification'. See Filter.Name for valid values
            and the different Filter entities for value specifications. Sample:
            catf|11946,11947;mfrf|7276;ohf|true;flgf|42,46;prcf|true_10-20;parf|L6360_13239*M6355_3387*M6355_3390!V60_256-1024*V70_1.4-1.9.
            The logical operator between comma separated values in catf, mfrf
            and flgf is OR while parf values use AND.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProductItemFilterValues'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProductItemFilterValues'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductItemFilterValuesById:
    get:
      tags:
        - Filters
      summary: List filter values by specific product
      description: >-
        Returns a list of filter values for the product id. The list can be used
        to filter products client side.
      operationId: ListProductItemFilterValuesById
      parameters:
        - name: productId
          in: query
          description: Accepts an integer product internal id.
          required: true
          schema:
            type: integer
            format: int32
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Sample: Field1 Asc, Field2 Desc.
          schema:
            type: string
        - name: pageNo
          in: query
          description: >-
            Page numbers start with 1. Default is 1. If you specify a pageNo
            outside the range of items, an empty list will be returned. PageSize
            is mandatory for pageNo to work.
          schema:
            type: string
        - name: pageSize
          in: query
          description: Number of items to display per page. Mandatory if using pageNo.
          schema:
            type: string
        - name: filter
          in: query
          description: >-
            Property values to filter on. The return value's ItemCount will be
            the number of items after filters have been applied. General format:
            'filterName|value specification'. See Filter.Name for valid values
            and the different Filter entities for value specifications. Sample:
            catf|11946,11947;mfrf|7276;ohf|true;flgf|42,46;prcf|true_10-20;parf|L6360_13239*M6355_3387*M6355_3390!V60_256-1024*V70_1.4-1.9.
            The logical operator between comma separated values in catf, mfrf
            and flgf is OR while parf values use AND.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProductItemFilterValues'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProductItemFilterValues'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductItemFilterValuesByIds:
    get:
      tags:
        - Filters
      summary: List filter values by product ids
      description: >-
        Returns a list of filter values for products. The list can be used to
        filter products client side.
      operationId: ListProductItemFilterValuesByIds
      parameters:
        - name: idSeed
          in: query
          description: Accepts a comma separated string of product internal ids.
          required: true
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Sample: Field1 Asc, Field2 Desc.
          schema:
            type: string
        - name: pageNo
          in: query
          description: >-
            Page numbers start with 1. Default is 1. If you specify a pageNo
            outside the range of items, an empty list will be returned. PageSize
            is mandatory for pageNo to work.
          schema:
            type: string
        - name: pageSize
          in: query
          description: Number of items to display per page. Mandatory if using pageNo.
          schema:
            type: string
        - name: filter
          in: query
          description: >-
            Property values to filter on. The return value's ItemCount will be
            the number of items after filters have been applied. General format:
            'filterName|value specification'. See Filter.Name for valid values
            and the different Filter entities for value specifications. Sample:
            catf|11946,11947;mfrf|7276;ohf|true;flgf|42,46;prcf|true_10-20;parf|L6360_13239*M6355_3387*M6355_3390!V60_256-1024*V70_1.4-1.9.
            The logical operator between comma separated values in catf, mfrf
            and flgf is OR while parf values use AND.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProductItemFilterValues'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProductItemFilterValues'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductItemFilterValuesByNode:
    get:
      tags:
        - Filters
      summary: List filter values by node
      description: >-
        Returns a list of filter values for products. The list can be used to
        filter products client side.
      operationId: ListProductItemFilterValuesByNode
      parameters:
        - name: nodeKey
          in: query
          description: Key from NavigationNode.
          required: true
          schema:
            type: string
            format: guid
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Sample: Field1 Asc, Field2 Desc.
          schema:
            type: string
        - name: pageNo
          in: query
          description: >-
            Page numbers start with 1. Default is 1. If you specify a pageNo
            outside the range of items, an empty list will be returned. PageSize
            is mandatory for pageNo to work.
          schema:
            type: string
        - name: pageSize
          in: query
          description: Number of items to display per page. Mandatory if using pageNo.
          schema:
            type: string
        - name: filter
          in: query
          description: >-
            Property values to filter on. The return value's ItemCount will be
            the number of items after filters have been applied. General format:
            'filterName|value specification'. See Filter.Name for valid values
            and the different Filter entities for value specifications. Sample:
            catf|11946,11947;mfrf|7276;ohf|true;flgf|42,46;prcf|true_10-20;parf|L6360_13239*M6355_3387*M6355_3390!V60_256-1024*V70_1.4-1.9.
            The logical operator between comma separated values in catf, mfrf
            and flgf is OR while parf values use AND.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProductItemFilterValues'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProductItemFilterValues'
        '500':
          description: Internal Server Error
          content: {}
  /ListFlagGroups:
    get:
      tags:
        - Flags
      summary: List product flag gropus
      operationId: ListFlagGroups
      parameters:
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FlagGroup'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/FlagGroup'
        '500':
          description: Internal Server Error
          content: {}
  /ListFlags:
    get:
      tags:
        - Flags
      summary: List product flags
      description: Reference list of Product Flags.
      operationId: ListFlags
      parameters:
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CustomersFlag'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/CustomersFlag'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductFlags: {}
  /ListOnHandInfoTypes:
    get:
      tags:
        - InfoTypes
      summary: Get info types for availability
      description: Lists the available OnHandInfo types.
      operationId: ListOnHandInfoTypes
      parameters:
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdNameDescription'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdNameDescription'
        '500':
          description: Internal Server Error
          content: {}
  /GetManufacturer:
    get:
      tags:
        - Manufacturers
      summary: Get a manufacturer
      description: Get a specific manufacturer by internal id.
      operationId: GetManufacturer
      parameters:
        - name: id
          in: query
          description: Internal id for manufacturer.
          required: true
          schema:
            type: integer
            format: int32
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Manufacturer'
            application/xml:
              schema:
                $ref: '#/components/schemas/Manufacturer'
        '500':
          description: Internal Server Error
          content: {}
  /GetManufacturerByUniqueName:
    get:
      tags:
        - Manufacturers
      summary: Get a manufacturer by unique name
      description: Get a specific manufacturer by unique name.
      operationId: GetManufacturerByUniqueName
      parameters:
        - name: uniqueName
          in: query
          description: Unique name for the manufacturer.
          required: true
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Manufacturer'
            application/xml:
              schema:
                $ref: '#/components/schemas/Manufacturer'
        '500':
          description: Internal Server Error
          content: {}
  /ListManufacturers:
    get:
      tags:
        - Manufacturers
      summary: List manufacturers
      description: >-
        Main manufacturer list. This function will not calculate ProductCount.
        Use ListManufacturersEx for that.
      operationId: ListManufacturers
      parameters:
        - name: searchString
          in: query
          description: Free text search string.
          schema:
            type: string
        - name: pageNo
          in: query
          description: >-
            Page numbers start with 1. Default is 1. If you specify a pageNo
            outside the range of items, an empty list will be returned. PageSize
            is mandatory for pageNo to work.
          schema:
            type: string
        - name: pageSize
          in: query
          description: Number of items to display per page. Mandatory if using pageNo.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManufacturerItemPagedList'
            application/xml:
              schema:
                $ref: '#/components/schemas/ManufacturerItemPagedList'
        '500':
          description: Internal Server Error
          content: {}
  /ListManufacturersEx:
    get:
      tags:
        - Manufacturers
      summary: List manufacturers (extended)
      description: >-
        Main product list. Same as ListManufacturers but this one will calculate
        ProductCount.
      operationId: ListManufacturersEx
      parameters:
        - name: searchString
          in: query
          description: Free text search string on manufacturer.
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status IDs. Lookup references in
            ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment IDs. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
        - name: pageNo
          in: query
          description: >-
            Page numbers start with 1. Default is 1. If you specify a pageNo
            outside the range of items, an empty list will be returned. PageSize
            is mandatory for pageNo to work.
          schema:
            type: string
        - name: pageSize
          in: query
          description: Number of items to display per page. Mandatory if using pageNo.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManufacturerItemPagedList'
            application/xml:
              schema:
                $ref: '#/components/schemas/ManufacturerItemPagedList'
        '500':
          description: Internal Server Error
          content: {}
  /SearchManufacturers:
    get:
      tags:
        - Manufacturers
      summary: Search manufacturers
      operationId: SearchManufacturers
      parameters:
        - name: searchString
          in: query
          description: >-
            The string to search for. Searchable fields are manufacturerCode,
            orgNo, name and prefix.
          required: true
          schema:
            type: string
        - name: size
          in: query
          description: Number of items to display.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdValue'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdValue'
        '500':
          description: Internal Server Error
          content: {}
  /GetNavigationStructure:
    get:
      tags:
        - Navigation
      summary: Get navigation structure
      description: >-
        Gets the NavigationStructure for the Application. The
        NavigationStructure is used to get the list of NavigationNodes. See
        IProductService.ListNavigationNodes for more information.
      operationId: GetNavigationStructure
      parameters:
        - name: id
          in: query
          description: >-
            Specifies id for the navigation structure. If none is supplied, the
            default structure for the Application is returned.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NavigationStructure'
            application/xml:
              schema:
                $ref: '#/components/schemas/NavigationStructure'
        '500':
          description: Internal Server Error
          content: {}
  /ListNavigationNodes:
    get:
      tags:
        - Navigation
      summary: List navigation nodes
      description: >-
        Lists the NavigationNodes for the NavigationStructure. See
        NavigationNode for more information.
      operationId: ListNavigationNodes
      parameters:
        - name: navigationId
          in: query
          description: Specifies id for the navigation structure.
          required: true
          schema:
            type: integer
            format: int32
        - name: descendantOf
          in: query
          description: >-
            Specifies the parent hierarchy for the NavigationNodes to list. If
            none is supplied all nodes will be listed. Sample: /1/
          schema:
            type: string
        - name: maxRecursions
          in: query
          description: >-
            Specifies the number of levels deep to go. If none is supplied all
            nodes will be listed.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/NavigationNode'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/NavigationNode'
        '500':
          description: Internal Server Error
          content: {}
  /ListNavigationNodesEx:
    get:
      tags:
        - Navigation
      summary: List navigation nodes (extended)
      description: >-
        Lists the NavigationNodes. Same as ListNavigationNodes but this one will
        calculate ProductCount.
      operationId: ListNavigationNodesEx
      parameters:
        - name: navigationId
          in: query
          description: Specifies id for the navigation structure.
          required: true
          schema:
            type: integer
            format: int32
        - name: descendantOf
          in: query
          description: >-
            Specifies the parent hierarchy for the NavigationNodes to list. If
            none is supplied all nodes will be listed. Sample: /1/
          schema:
            type: string
        - name: maxRecursions
          in: query
          description: >-
            Specifies the number of levels deep to go. If none is supplied all
            nodes will be listed.
          schema:
            type: string
        - name: hideEmptyNodes
          in: query
          description: >-
            If set to true only nodes with underlying products will be fetched.
            If false, all nodes will be fetched. Default value is false.
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the product count should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/NavigationNode'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/NavigationNode'
        '500':
          description: Internal Server Error
          content: {}
  /ListNavigationNodeTypeIds:
    get:
      tags:
        - Navigation
      summary: List navigation node types
      description: Lists the available NavigationNode.TypeIds.
      operationId: ListNavigationNodeTypeIds
      parameters:
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdNameDescription'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdNameDescription'
        '500':
          description: Internal Server Error
          content: {}
  /GetExternalProductOnHandByPartNo:
    post:
      tags:
        - OnHand
      summary: Get product external availability by part number
      description: Checks the actual on hand status in the customers back end system.
      operationId: GetExternalProductOnHandByPartNo
      parameters:
        - name: partNo
          in: query
          description: Part number of the product to get.
          required: true
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
      requestBody:
        description: >-
          The actual list of warehouses to check OnHand for. OnHand in Warehouse
          is ignored.
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Warehouse'
          application/xml:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Warehouse'
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductOnHand'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductOnHand'
        '400':
          description: |-
            Bad Request

            Key: RemoteCallFailed. Gets raised when the remote call fails.
          content: {}
        '500':
          description: Internal Server Error
          content: {}
      x-codegen-request-body-name: warehouses
  /GetExternalProductOnHandByProduct:
    post:
      tags:
        - OnHand
      summary: Get product external availability by id
      description: Checks the actual on hand status in the customers back end system.
      operationId: GetExternalProductOnHandByProduct
      parameters:
        - name: productId
          in: query
          description: Internal id of the product to get.
          required: true
          schema:
            type: integer
            format: int32
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
      requestBody:
        description: >-
          The actual list of warehouses to check OnHand for. OnHand in Warehouse
          is ignored.
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Warehouse'
          application/xml:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Warehouse'
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductOnHand'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductOnHand'
        '400':
          description: |-
            Bad Request

            Key: RemoteCallFailed. Gets raised when the remote call fails.
          content: {}
        '500':
          description: Internal Server Error
          content: {}
      x-codegen-request-body-name: warehouses
  /GetProductOnHandByPartNo:
    post:
      tags:
        - OnHand
      summary: Get product availability by part number
      operationId: GetProductOnHandByPartNo
      parameters:
        - name: partNo
          in: query
          description: Part number of the product to get.
          required: true
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
      requestBody:
        description: >-
          The actual list of warehouses to check OnHand for. OnHand in Warehouse
          is ignored.
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Warehouse'
          application/xml:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Warehouse'
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductOnHand'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductOnHand'
        '500':
          description: Internal Server Error
          content: {}
      x-codegen-request-body-name: warehouses
  /GetProductOnHandByProduct:
    post:
      tags:
        - OnHand
      summary: Get product availability by id
      operationId: GetProductOnHandByProduct
      parameters:
        - name: productId
          in: query
          description: Internal id of the product to get.
          required: true
          schema:
            type: integer
            format: int32
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
      requestBody:
        description: >-
          The actual list of warehouses to check OnHand for. OnHand in Warehouse
          is ignored.
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Warehouse'
          application/xml:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/Warehouse'
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductOnHand'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductOnHand'
        '500':
          description: Internal Server Error
          content: {}
      x-codegen-request-body-name: warehouses
  /ListFocusParametrics:
    get:
      tags:
        - Parametric
      summary: List category focus parametrics
      description: >-
        Available focus parametrics on a category. Focus parametrics is used
        when filtering a ListProduct result set.
      operationId: ListFocusParametrics
      parameters:
        - name: categoryId
          in: query
          description: Internal id of category, retrieved from CategoryItem.
          required: true
          schema:
            type: integer
            format: int32
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IFilterItem'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IFilterItem'
        '500':
          description: Internal Server Error
          content: {}
  /ListParametricGroups:
    get:
      tags:
        - Parametric
      summary: List product parametric groups
      description: Lists all parametric groups for the client.
      operationId: ListParametricGroups
      parameters:
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ParametricGroup'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ParametricGroup'
        '500':
          description: Internal Server Error
          content: {}
  /ListParametricInfo:
    get:
      tags:
        - Parametric
      summary: List parametric metadata
      description: Lists metadata for parametric, ParametricInfos.
      operationId: ListParametricInfo
      parameters:
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ParametricInfo'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ParametricInfo'
        '500':
          description: Internal Server Error
          content: {}
  /ListParametricValues: {}
  /ListParametricValues2:
    get:
      tags:
        - Parametric
      summary: List parametric list values
      description: Reference list of Parametric values.
      operationId: ListParametricValues2
      parameters:
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ParametricValue'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ParametricValue'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductParametrics:
    get:
      tags:
        - Parametric
      summary: List product parametrics
      description: >-
        Lists Product Parametric values for a product. What parametric values
        are returned is defined in the primary Category of the product, or if no
        primary exists, the first category by sort order. If the product does
        not exist or does not have a category an empty list is returned. Sort
        order of the parametric values is taken from the order defined for the
        category.
      operationId: ListProductParametrics
      parameters:
        - name: productId
          in: query
          description: Internal id of the Product.
          required: true
          schema:
            type: integer
            format: int32
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProductParametric'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProductParametric'
        '500':
          description: Internal Server Error
          content: {}
  /ListPricelists:
    get:
      tags:
        - PriceLists
      summary: List pricelists
      description: Lists priceLists for the client.
      operationId: ListPricelists
      parameters:
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Pricelist'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Pricelist'
        '500':
          description: Internal Server Error
          content: {}
  /ListPricelistTypes:
    get:
      tags:
        - PriceLists
      summary: List pricelist types
      description: Reference list of PriceList Types.
      operationId: ListPricelistTypes
      parameters:
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdValue'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdValue'
        '500':
          description: Internal Server Error
          content: {}
  /GetProduct:
    get:
      tags:
        - Products
      summary: Get a product
      description: >-
        Gets a Product and its optional variants by internal id. The main
        product will be based on the product with the supplied id, status
        permitting.
      operationId: GetProduct
      parameters:
        - name: id
          in: query
          description: >-
            The id of the Product. If the product has variants, any id of the
            variants can be used.
          required: true
          schema:
            type: integer
            format: int32
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status IDs. Lookup references in
            ListStatuses.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList IDs to use, if any. PriceLists
            supplied must be valid, either from the application's public
            priceList or any customer or company priceLists or any valid client
            priceLists. For clients configured to use priceListSeed exclusively
            in the API only the supplied priceLists will be used. If this is not
            configured, the supplied priceLists will be appended to the valid
            priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Internal id of company. Checks for specific company bound prices if
            provided.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Product'
            application/xml:
              schema:
                $ref: '#/components/schemas/Product'
        '500':
          description: Internal Server Error
          content: {}
  /GetProductByPartNo:
    get:
      tags:
        - Products
      summary: Get a product by part no
      description: >-
        Gets a Product and its optional variants by partNo. The main product
        will be based on the product with the supplied partNo, status
        permitting.
      operationId: GetProductByPartNo
      parameters:
        - name: partNo
          in: query
          description: Part number of the product to get.
          required: true
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Product'
            application/xml:
              schema:
                $ref: '#/components/schemas/Product'
        '500':
          description: Internal Server Error
          content: {}
  /GetProductByUniqueName:
    get:
      tags:
        - Products
      summary: Get a product by unique name
      description: >-
        Gets a Product and its optional variants by the uniqueName. The main
        product will be based on the product with the supplied name, status
        permitting.
      operationId: GetProductByUniqueName
      parameters:
        - name: uniqueName
          in: query
          description: Unique name of the product
          required: true
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Product'
            application/xml:
              schema:
                $ref: '#/components/schemas/Product'
        '500':
          description: Internal Server Error
          content: {}
  /ListBestsellingProducts: {}
  /ListBestsellingProducts2:
    get:
      tags:
        - Products
      summary: List best selling products (v2)
      description: Returns the best selling products based on supplied parameters.
      operationId: ListBestsellingProducts2
      parameters:
        - name: searchString
          in: query
          description: Free text search string. Minimum of 2 characters required.
          schema:
            type: string
        - name: categorySeed
          in: query
          description: >-
            Accepts a comma separated string of Category internal ids, retrieved
            from CategoryItem.
          schema:
            type: string
        - name: manufacturerSeed
          in: query
          description: Accepts a comma separated string of Manufacturer internal ids.
          schema:
            type: string
        - name: flagSeed
          in: query
          description: >-
            Accepts a comma separated string of Flag internal ids. Lookup
            references in ListFlags.
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: parametrics
          in: query
          description: >-
            Parametric values formatted as ListParameters =
            L[ParametricId]_[ListId], MultiParameters =
            M[ParametricId]_[MultipleId], ValueParameters =
            V[ParametricId]_[ValueFrom]-[ValueTo] with asterisk (*) as
            separator. Sample: L10_45*M20_254*M20_145*V60_256-1024*V70_1.4-1.9.
            The logical operation between values is AND.
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied. If omitted 
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Supported properties for sorting on the server are
            PopularityRank, Name, Price and SortOrder.
          schema:
            type: string
        - name: size
          in: query
          description: Number of items to display.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
        '500':
          description: Internal Server Error
          content: {}
  /ListBestSellingProductsByCompany:
    get:
      tags:
        - Products
      summary: List best selling products by company
      description: Main product list based on best selling items for a company
      operationId: ListBestSellingProductsByCompany
      parameters:
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: integer
            format: int32
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: integer
            format: int32
        - name: fromDate
          in: query
          description: >-
            Orders from this date will only be included in the calculation.
            Format: yyyy-mm-ddThh:mm:ss.nnn[z], example 2024-08-01T12:59:59.000Z
          required: true
          schema:
            type: string
            format: date-time
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: size
          in: query
          description: Number of items to display. Default is 50.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
        '500':
          description: Internal Server Error
          content: {}
  /ListBestsellingProductsByNode: {}
  /ListBestsellingProductsByNode2:
    get:
      tags:
        - Products
      summary: List best selling products by node (v2)
      description: >-
        Returns the best selling products based on supplied parameters by
        Navigation Node.
      operationId: ListBestsellingProductsByNode2
      parameters:
        - name: nodeKey
          in: query
          description: Key from NavigationNode.
          required: true
          schema:
            type: string
            format: guid
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied. If omitted 
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Supported properties for sorting on the server are
            PopularityRank, Name, Price and SortOrder.
          schema:
            type: string
        - name: size
          in: query
          description: Number of items to display.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
        '500':
          description: Internal Server Error
          content: {}
  /ListHistoricalBestPrices:
    get:
      tags:
        - Products
      summary: List historical best prices
      description: Lists historical best prices for a product going back 30 days.
      operationId: ListHistoricalBestPrices
      parameters:
        - name: partNo
          in: query
          description: The part number of the Product.
          required: true
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/HistoricalBestPrice'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/HistoricalBestPrice'
        '500':
          description: Internal Server Error
          content: {}
  /ListIncludedProducts:
    get:
      tags:
        - Products
      summary: List products included in structure
      description: >-
        Returns a list of included products for structural products. Note that
        this is on sku level.
      operationId: ListIncludedProducts
      parameters:
        - name: partNo
          in: query
          description: The partNo of the selected structural product.
          required: true
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids for the
            included products. Lookup references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids for the
            included products. Lookup references in ListAssortments.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Not used. The items are returned in the sort order specified by the
            structure item in Storm.
          schema:
            type: string
        - name: pageNo
          in: query
          description: >-
            Page numbers start with 1. Default is 1. If you specify a pageNo
            outside the range of items, an empty list will be returned. PageSize
            is mandatory for pageNo to work.
          schema:
            type: string
        - name: pageSize
          in: query
          description: Number of items to display per page. Mandatory if using pageNo.
          schema:
            type: string
        - name: filter
          in: query
          description: >-
            Property values to filter on. The return value's ItemCount will be
            the number of items after filters have been applied. General format:
            'filterName|value specification'. Multiple filters are separated by
            a semi colon. See Filter.Name for valid values and the different
            Filter entities for value specifications. Sample:
            catf|11946,11947;mfrf|7276;ohf|true;flgf|42,46;prcf|true_10-20;parf|L6360_13239*M6355_3387*M6355_3390!V60_256-1024*V70_1.4-1.9.
            The logical operator between comma separated values in catf, mfrf
            and flgf is OR while parf values use AND.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
        '500':
          description: Internal Server Error
          content: {}
  /ListPopularProducts: {}
  /ListPopularProducts2:
    get:
      tags:
        - Products
      summary: List popular products (v2)
      description: Returns the most popular products based on supplied parameters.
      operationId: ListPopularProducts2
      parameters:
        - name: searchString
          in: query
          description: Free text search string. Minimum of 2 characters required.
          schema:
            type: string
        - name: categorySeed
          in: query
          description: >-
            Accepts a comma separated string of Category internal ids, retrieved
            from CategoryItem.
          schema:
            type: string
        - name: manufacturerSeed
          in: query
          description: Accepts a comma separated string of Manufacturer internal ids.
          schema:
            type: string
        - name: flagSeed
          in: query
          description: >-
            Accepts a comma separated string of Flag internal ids. Lookup
            references in ListFlags.
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: parametrics
          in: query
          description: >-
            Parametric values formatted as ListParameters =
            L[ParametricId]_[ListId], MultiParameters =
            M[ParametricId]_[MultipleId], ValueParameters =
            V[ParametricId]_[ValueFrom]-[ValueTo] with asterisk (*) as
            separator. Sample: L10_45*M20_254*M20_145*V60_256-1024*V70_1.4-1.9.
            The logical operation between values is AND.
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Supported properties for sorting on the server are
            PopularityRank, Name, Price and SortOrder.
          schema:
            type: string
        - name: size
          in: query
          description: Number of items to display.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
        '500':
          description: Internal Server Error
          content: {}
  /ListPopularProductsByNode: {}
  /ListPopularProductsByNode2:
    get:
      tags:
        - Products
      summary: List popular products by node (v2)
      description: >-
        Returns the most popular products based on supplied parameters by
        Navigation Node.
      operationId: ListPopularProductsByNode2
      parameters:
        - name: nodeKey
          in: query
          description: Key from NavigationNode.
          required: true
          schema:
            type: string
            format: guid
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Supported properties for sorting on the server are
            PopularityRank, Name, Price and SortOrder.
          schema:
            type: string
        - name: size
          in: query
          description: Number of items to display.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductPriceQtyBreak:
    get:
      tags:
        - Products
      summary: List product quantity break prices
      description: >-
        Gets a ProductPriceQtyBreakList. The list contains ProductPrices
        representing the price for each given minimum quantity bought.
      operationId: ListProductPriceQtyBreak
      parameters:
        - name: id
          in: query
          description: The internal id of the Product.
          required: true
          schema:
            type: integer
            format: int32
        - name: storeSeed
          in: query
          description: Accepts a comma separated string of store internal IDs.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of pricelist internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProductPriceQtyBreak'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProductPriceQtyBreak'
        '500':
          description: Internal Server Error
          content: {}
  /ListProducts: {}
  /ListProducts2:
    get:
      tags:
        - Products
      summary: List products (v2)
      description: Main product list.
      operationId: ListProducts2
      parameters:
        - name: searchString
          in: query
          description: Free text search string.
          schema:
            type: string
        - name: categorySeed
          in: query
          description: >-
            Accepts a comma separated string of Category internal ids, retrieved
            from CategoryItem.
          schema:
            type: string
        - name: manufacturerSeed
          in: query
          description: Accepts a comma separated string of Manufacturer internal ids.
          schema:
            type: string
        - name: flagSeed
          in: query
          description: >-
            Accepts a comma separated string of Flag internal ids. Lookup
            references in ListFlags.
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: parametrics
          in: query
          description: >-
            Parametric values formatted as ListParameters =
            L[ParametricId]_[ListId], MultiParameters =
            M[ParametricId]_[MultipleId], ValueParameters =
            V[ParametricId]_[ValueFrom]-[ValueTo] with asterisk (*) as
            separator. Sample: L10_45*M20_254*M20_145*V60_256-1024*V70_1.4-1.9.
            The logical operation between values is AND.
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Supported properties for sorting on the server are
            PopularityRank, Name, Price and SortOrder.
          schema:
            type: string
        - name: pageNo
          in: query
          description: >-
            Page numbers start with 1. Default is 1. If you specify a pageNo
            outside the range of items, an empty list will be returned. PageSize
            is mandatory for pageNo to work.
          schema:
            type: string
        - name: pageSize
          in: query
          description: Number of items to display per page. Mandatory if using pageNo.
          schema:
            type: string
        - name: filter
          in: query
          description: >-
            Property values to filter on. The return value's ItemCount will be
            the number of items after filters have been applied. General format:
            'filterName|value specification'. See Filter.Name for valid values
            and the different Filter entities for value specifications. Sample:
            catf|11946,11947;mfrf|7276;ohf|true;flgf|42,46;prcf|true_10-20;parf|L6360_13239*M6355_3387*M6355_3390!V60_256-1024*V70_1.4-1.9.
            The logical operator between comma separated values in catf, mfrf
            and flgf is OR while parf values use AND.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
        '400':
          description: >-
            Bad Request


            Key: ResultSetTooLargePagingRequired. Gets raised when a result set
            is too large (> 1000). Set pageNo and pageSize to avoid this.
          content: {}
        '500':
          description: Internal Server Error
          content: {}
  /ListProductsByCustomer:
    get:
      tags:
        - Products
      summary: List products by customer
      description: Main product list and prices based on customer priceLists.
      operationId: ListProductsByCustomer
      parameters:
        - name: searchString
          in: query
          description: Free text search string.
          schema:
            type: string
        - name: categorySeed
          in: query
          description: >-
            Accepts a comma separated string of Category internal ids, retrieved
            from CategoryItem.
          schema:
            type: string
        - name: manufacturerSeed
          in: query
          description: Accepts a comma separated string of Manufacturer internal ids.
          schema:
            type: string
        - name: flagSeed
          in: query
          description: >-
            Accepts a comma separated string of Flag internal ids. Lookup
            references in ListFlags.
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: parametrics
          in: query
          description: >-
            Parametric values formatted as ListParameters =
            L[ParametricId]_[ListId], MultiParameters =
            M[ParametricId]_[MultipleId], ValueParameters =
            V[ParametricId]_[ValueFrom]-[ValueTo] with asterisk (*) as
            separator. Sample: L10_45*M20_254*M20_145*V60_256-1024*V70_1.4-1.9.
            The logical operation between values is AND.
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: integer
            format: int32
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Supported properties for sorting on the server are
            PopularityRank, Name, Price and SortOrder.
          schema:
            type: string
        - name: pageNo
          in: query
          description: >-
            Page numbers start with 1. Default is 1. If you specify a pageNo
            outside the range of items, an empty list will be returned. PageSize
            is mandatory for pageNo to work.
          schema:
            type: string
        - name: pageSize
          in: query
          description: Number of items to display per page. Mandatory if using pageNo.
          schema:
            type: string
        - name: filter
          in: query
          description: >-
            Property values to filter on. The return value's ItemCount will be
            the number of items after filters have been applied. General format:
            'filterName|value specification'. See Filter.Name for valid values
            and the different Filter entities for value specifications. Sample:
            catf|11946,11947;mfrf|7276;ohf|true;flgf|42,46;prcf|true_10-20;parf|L6360_13239*M6355_3387*M6355_3390!V60_256-1024*V70_1.4-1.9.
            The logical operator between comma separated values in catf, mfrf
            and flgf is OR while parf values use AND.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductsByFamilies:
    get:
      tags:
        - Products
      summary: List products by families
      description: Main product list.
      operationId: ListProductsByFamilies
      parameters:
        - name: categorySeed
          in: query
          description: >-
            Accepts a comma separated string of Category internal ids, retrieved
            from CategoryItem.
          schema:
            type: string
        - name: manufacturerSeed
          in: query
          description: Accepts a comma separated string of Manufacturer internal ids.
          schema:
            type: string
        - name: flagSeed
          in: query
          description: >-
            Accepts a comma separated string of Flag internal ids. Lookup
            references in ListFlags.
          schema:
            type: string
        - name: familySeed
          in: query
          description: >-
            Accepts a comma separated string of family IDs. Lookup references in
            ListFamilies.
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: parametrics
          in: query
          description: >-
            Parametric values formatted as ListParameters =
            L[ParametricId]_[ListId], MultiParameters =
            M[ParametricId]_[MultipleId], ValueParameters =
            V[ParametricId]_[ValueFrom]-[ValueTo] with asterisk (*) as
            separator. Sample: L10_45*M20_254*M20_145*V60_256-1024*V70_1.4-1.9.
            The logical operation between values is AND.
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Supported properties for sorting on the server are
            PopularityRank, Name, Price and SortOrder.
          schema:
            type: string
        - name: pageNo
          in: query
          description: >-
            Page numbers start with 1. Default is 1. If you specify a pageNo
            outside the range of items, an empty list will be returned. PageSize
            is mandatory for pageNo to work.
          schema:
            type: string
        - name: pageSize
          in: query
          description: Number of items to display per page. Mandatory if using pageNo.
          schema:
            type: string
        - name: filter
          in: query
          description: >-
            Property values to filter on. The return value's ItemCount will be
            the number of items after filters have been applied. General format:
            'filterName|value specification'. See Filter.Name for valid values
            and the different Filter entities for value specifications. Sample:
            catf|11946,11947;mfrf|7276;ohf|true;flgf|42,46;prcf|true_10-20;parf|L6360_13239*M6355_3387*M6355_3390!V60_256-1024*V70_1.4-1.9.
            The logical operator between comma separated values in catf, mfrf
            and flgf is OR while parf values use AND.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductsById:
    get:
      tags:
        - Products
      summary: List product variants by product ids
      description: Returns all variants for the product as a ProductItemList.
      operationId: ListProductsById
      parameters:
        - name: productId
          in: query
          description: Accepts a comma separated string of Product IDs.
          required: true
          schema:
            type: integer
            format: int32
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Supported properties for sorting on the server are
            PopularityRank, Name, Price and SortOrder.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductsByIds: {}
  /ListProductsByIds2:
    get:
      tags:
        - Products
      summary: List products by ids (v2)
      description: Main product list.
      operationId: ListProductsByIds2
      parameters:
        - name: idSeed
          in: query
          description: Accepts a comma separated string of Product IDs.
          required: true
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Supported properties for sorting on the server are
            PopularityRank, Name, Price and SortOrder.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted. Only specified ids will be returned if
            returnAllVariants is set to false. Set returnAllVariants to true to
            return all.
          schema:
            type: string
        - name: returnAllVariants
          in: query
          description: >-
            Specifies if the result should include all variants or just the
            specified. Default is false.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductsByIds3:
    get:
      tags:
        - Products
      summary: List products by ids (v3)
      description: Main product list.
      operationId: ListProductsByIds3
      parameters:
        - name: idSeed
          in: query
          description: Accepts a comma separated string of Product IDs.
          required: true
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Supported properties for sorting on the server are
            PopularityRank, Name, Price and SortOrder.
          schema:
            type: string
        - name: pageNo
          in: query
          description: >-
            Page numbers start with 1. Default is 1. If you specify a pageNo
            outside the range of items, an empty list will be returned. PageSize
            is mandatory for pageNo to work.
          schema:
            type: string
        - name: pageSize
          in: query
          description: Number of items to display per page. Mandatory if using pageNo.
          schema:
            type: string
        - name: filter
          in: query
          description: >-
            Property values to filter on. The return value's ItemCount will be
            the number of items after filters have been applied. General format:
            'filterName|value specification'. See Filter.Name for valid values
            and the different Filter entities for value specifications. Sample:
            catf|11946,11947;mfrf|7276;ohf|true;flgf|42,46;prcf|true_10-20;parf|L6360_13239*M6355_3387*M6355_3390!V60_256-1024*V70_1.4-1.9.
            The logical operator between comma separated values in catf, mfrf
            and flgf is OR while parf values use AND.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted. Only specified ids will be returned if
            returnAllVariants is set to false. Set returnAllVariants to true to
            return all.
          schema:
            type: string
        - name: returnAllVariants
          in: query
          description: >-
            Specifies if the result should include all variants or just the
            specified. Default is false.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductsByNode: {}
  /ListProductsByNode2:
    get:
      tags:
        - Products
      summary: List products by node (v2)
      description: Main product list by Navigation Node.
      operationId: ListProductsByNode2
      parameters:
        - name: nodeKey
          in: query
          description: Key from NavigationNode.
          required: true
          schema:
            type: string
            format: guid
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Supported properties for sorting on the server are
            PopularityRank, Name, Price and SortOrder.
          schema:
            type: string
        - name: pageNo
          in: query
          description: >-
            Page numbers start with 1. Default is 1. If you specify a pageNo
            outside the range of items, an empty list will be returned. PageSize
            is mandatory for pageNo to work.
          schema:
            type: string
        - name: pageSize
          in: query
          description: Number of items to display per page. Mandatory if using pageNo.
          schema:
            type: string
        - name: filter
          in: query
          description: >-
            Property values to filter on. The return value's ItemCount will be
            the number of items after filters have been applied. General format:
            'filterName|value specification'. See Filter.Name for valid values
            and the different Filter entities for value specifications. Sample:
            catf|11946,11947;mfrf|7276;ohf|true;flgf|42,46;prcf|true_10-20;parf|L6360_13239*M6355_3387*M6355_3390!V60_256-1024*V70_1.4-1.9.
            The logical operator between comma separated values in catf, mfrf
            and flgf is OR while parf values use AND.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductsByPartNos:
    get:
      tags:
        - Products
      summary: List products by part numbers
      description: Main product list.
      operationId: ListProductsByPartNos
      parameters:
        - name: partNoSeed
          in: query
          description: Accepts a comma separated string of partNos.
          required: true
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Supported properties for sorting on the server are
            PopularityRank, Name, Price and SortOrder.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted. Only specified ids will be returned if
            returnAllVariants is set to false. Set returnAllVariants to true to
            return all.
          schema:
            type: string
        - name: returnAllVariants
          in: query
          description: >-
            Specifies if the result should include all variants or just the
            specified. Default is false.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductsByPricelist:
    get:
      tags:
        - Products
      summary: List products by pricelists
      description: Main product list and prices based on priceLists.
      operationId: ListProductsByPricelist
      parameters:
        - name: searchString
          in: query
          description: Free text search string.
          schema:
            type: string
        - name: categorySeed
          in: query
          description: >-
            Accepts a comma separated string of Category internal ids, retrieved
            from CategoryItem.
          schema:
            type: string
        - name: manufacturerSeed
          in: query
          description: Accepts a comma separated string of Manufacturer internal ids.
          schema:
            type: string
        - name: flagSeed
          in: query
          description: >-
            Accepts a comma separated string of Flag internal ids. Lookup
            references in ListFlags.
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: parametrics
          in: query
          description: >-
            Parametric values formatted as ListParameters =
            L[ParametricId]_[ListId], MultiParameters =
            M[ParametricId]_[MultipleId], ValueParameters =
            V[ParametricId]_[ValueFrom]-[ValueTo] with asterisk (*) as
            separator. Sample: L10_45*M20_254*M20_145*V60_256-1024*V70_1.4-1.9.
            The logical operation between values is AND.
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Supported properties for sorting on the server are
            PopularityRank, Name, Price and SortOrder.
          schema:
            type: string
        - name: pageNo
          in: query
          description: >-
            Page numbers start with 1. Default is 1. If you specify a pageNo
            outside the range of items, an empty list will be returned. PageSize
            is mandatory for pageNo to work.
          schema:
            type: string
        - name: pageSize
          in: query
          description: Number of items to display per page. Mandatory if using pageNo.
          schema:
            type: string
        - name: filter
          in: query
          description: >-
            Property values to filter on. The return value's ItemCount will be
            the number of items after filters have been applied. General format:
            'filterName|value specification'. See Filter.Name for valid values
            and the different Filter entities for value specifications. Sample:
            catf|11946,11947;mfrf|7276;ohf|true;flgf|42,46;prcf|true_10-20;parf|L6360_13239*M6355_3387*M6355_3390!V60_256-1024*V70_1.4-1.9.
            The logical operator between comma separated values in catf, mfrf
            and flgf is OR while parf values use AND.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductsByPriceList2:
    get:
      tags:
        - Products
      summary: List products by pricelists (v2)
      description: Main product list (v2) and prices based on priceLists.
      operationId: ListProductsByPriceList2
      parameters:
        - name: searchString
          in: query
          description: Free text search string.
          schema:
            type: string
        - name: categorySeed
          in: query
          description: >-
            Accepts a comma separated string of Category internal ids, retrieved
            from CategoryItem.
          schema:
            type: string
        - name: manufacturerSeed
          in: query
          description: Accepts a comma separated string of Manufacturer internal ids.
          schema:
            type: string
        - name: flagSeed
          in: query
          description: >-
            Accepts a comma separated string of Flag internal ids. Lookup
            references in ListFlags.
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: parametrics
          in: query
          description: >-
            Parametric values formatted as ListParameters =
            L[ParametricId]_[ListId], MultiParameters =
            M[ParametricId]_[MultipleId], ValueParameters =
            V[ParametricId]_[ValueFrom]-[ValueTo] with asterisk (*) as
            separator. Sample: L10_45*M20_254*M20_145*V60_256-1024*V70_1.4-1.9.
            The logical operation between values is AND.
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Supported properties for sorting on the server are
            PopularityRank, Name, Price and SortOrder.
          schema:
            type: string
        - name: pageNo
          in: query
          description: >-
            Page numbers start with 1. Default is 1. If you specify a pageNo
            outside the range of items, an empty list will be returned. PageSize
            is mandatory for pageNo to work.
          schema:
            type: string
        - name: pageSize
          in: query
          description: Number of items to display per page. Mandatory if using pageNo.
          schema:
            type: string
        - name: filter
          in: query
          description: >-
            Property values to filter on. The return value's ItemCount will be
            the number of items after filters have been applied. General format:
            'filterName|value specification'. See Filter.Name for valid values
            and the different Filter entities for value specifications. Sample:
            catf|11946,11947;mfrf|7276;ohf|true;flgf|42,46;prcf|true_10-20;parf|L6360_13239*M6355_3387*M6355_3390!V60_256-1024*V70_1.4-1.9.
            The logical operator between comma separated values in catf, mfrf
            and flgf is OR while parf values use AND.
          schema:
            type: string
        - name: expand
          in: query
          description: >-
            An expand option that specifies what expansions should be made on
            the ProductItem2 entity. Valid values are: None, Variants, Price,
            OnHand, OnHandStore, OnHandSupplier and Parameters. These can be
            comma separated. Use Full for all. Default is Full. None will return
            just the ProductItem without expansions.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductItem2PagedList'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductItem2PagedList'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductsByPromotionRequirement:
    get:
      tags:
        - Products
      summary: List products by promotion requirement
      description: Lists all products by promotion requirements.
      operationId: ListProductsByPromotionRequirement
      parameters:
        - name: promotionId
          in: query
          description: PromotionId. See Shopping.ListPromotions for a List of promotions.
          required: true
          schema:
            type: integer
            format: int32
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Supported properties for sorting on the server are
            PopularityRank, Name, Price and SortOrder.
          schema:
            type: string
        - name: pageNo
          in: query
          description: >-
            Page numbers start with 1. Default is 1. If you specify a pageNo
            outside the range of items, an empty list will be returned. PageSize
            is mandatory for pageNo to work.
          schema:
            type: string
        - name: pageSize
          in: query
          description: Number of items to display per page. Mandatory if using pageNo.
          schema:
            type: string
        - name: filter
          in: query
          description: >-
            Property values to filter on. The return value's ItemCount will be
            the number of items after filters have been applied. General format:
            'filterName|value specification'. See Filter.Name for valid values
            and the different Filter entities for value specifications. Sample:
            catf|11946,11947;mfrf|7276;ohf|true;flgf|42,46;prcf|true_10-20;parf|L6360_13239*M6355_3387*M6355_3390!V60_256-1024*V70_1.4-1.9.
            The logical operator between comma separated values in catf, mfrf
            and flgf is OR while parf values use AND.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductsInFamilies: {}
  /ListProductsInFamilies2:
    get:
      tags:
        - Products
      summary: List product in family (v2)
      description: Returns other products in the same family for the current product.
      operationId: ListProductsInFamilies2
      parameters:
        - name: productId
          in: query
          description: The internal product id for which family products are listed.
          required: true
          schema:
            type: integer
            format: int32
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Supported properties for sorting on the server are
            PopularityRank, Name, Price and SortOrder.
          schema:
            type: string
        - name: size
          in: query
          description: Number of items to display.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
            application/xml:
              schema:
                $ref: '#/components/schemas/ProductItemPagedList'
        '500':
          description: Internal Server Error
          content: {}
  /ListTopProducts: {}
  /SearchProductsLite: {}
  /SearchProductsLite2:
    get:
      tags:
        - Products
      summary: Search products light (v2)
      description: Quick search of products, only returns ProductId and Name.
      operationId: SearchProductsLite2
      parameters:
        - name: searchString
          in: query
          description: Free text search string. Minimum of 2 characters required.
          required: true
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList IDs to use, if any. PriceLists
            supplied must be valid, either from the application's public
            priceList or any customer or company priceLists or any valid client
            priceLists. For clients configured to use priceListSeed exclusively
            in the API only the supplied priceLists will be used. If this is not
            configured, the supplied priceLists will be appended to the valid
            priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: Current Customer.Id, checks for specific customer bound prices.
          schema:
            type: string
        - name: companyId
          in: query
          description: Current Company ID, checks for specific company bound prices.
          schema:
            type: string
        - name: size
          in: query
          description: Number of items to display.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProductId'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProductId'
        '500':
          description: Internal Server Error
          content: {}
  /UpdateProductViewCount:
    post:
      tags:
        - Products
      summary: Update product view count
      description: >-
        Updates the view count for the product. Used when calculating most
        popular products. Should be called on product detail pages.
      operationId: UpdateProductViewCount
      parameters:
        - name: categoryId
          in: query
          description: The category internal id for the product.
          required: true
          schema:
            type: integer
            format: int32
        - name: productId
          in: query
          description: Product internal id.
          required: true
          schema:
            type: integer
            format: int32
      responses:
        '200':
          description: Success
          content: {}
        '500':
          description: Internal Server Error
          content: {}
  /ListPromotionProducts:
    get:
      tags:
        - Promotions
      summary: List products by promotion effect
      description: >-
        Lists all products by promotion effect ChooseProducts(2) or
        AddProduct(5). This allows the product detail page to display what comes
        with the main product as promoted products.
      operationId: ListPromotionProducts
      parameters:
        - name: productId
          in: query
          description: The main product to find promoted products for.
          required: true
          schema:
            type: integer
            format: int32
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Supported properties for sorting on the server are
            PopularityRank, Name, Price and SortOrder.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PromotionProducts'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/PromotionProducts'
        '500':
          description: Internal Server Error
          content: {}
  /ListPromotionsByProductId:
    get:
      tags:
        - Promotions
      summary: List promotions for a specific product
      description: >-
        Lists all promotions where the product is either in a requirement or in
        an effect for the promotion.
      operationId: ListPromotionsByProductId
      parameters:
        - name: id
          in: query
          description: >-
            The internal id of the Product. If the product has variants, any id
            of the variants can be used.
          required: true
          schema:
            type: integer
            format: int32
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ShoppingPromotion'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ShoppingPromotion'
        '500':
          description: Internal Server Error
          content: {}
  /ListPromotionsByProductUniqueName:
    get:
      tags:
        - Promotions
      summary: List promotions for a specific product by unique name
      description: >-
        Lists all promotions where the product is either in a requirement or in
        an effect for the promotion.
      operationId: ListPromotionsByProductUniqueName
      parameters:
        - name: uniqueName
          in: query
          description: Unique name of the product to use.
          required: true
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: salesAreaId
          in: query
          description: >-
            Specifies the SalesArea to use. Uses Storm internal ids. If none is
            supplied, primary SalesArea on Application will be used.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ShoppingPromotion'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ShoppingPromotion'
        '500':
          description: Internal Server Error
          content: {}
  /ListAccessoryTypes: {}
  /ListProductAccessories: {}
  /ListProductAccessories2: {}
  /ListProductAccessories3: {}
  /ListProductAccessories4: {}
  /ListProductAccessories5: {}
  /ListProductCrossSell: {}
  /ListProductCrossSell2: {}
  /ListProductCrossSell3: {}
  /ListProductCrossSell4: {}
  /ListProductRelations:
    get:
      tags:
        - Relations
      summary: List product relations
      description: >-
        Relations connected to a product. Relations are defined as products that
        customer could choose to buy in addition to the current product.
        Supports relations like product to product, product to variant, variant
        to product and variant to variant.
      operationId: ListProductRelations
      parameters:
        - name: productId
          in: query
          description: Internal id of current Product.
          required: true
          schema:
            type: integer
            format: int32
        - name: relationTypeSeed
          in: query
          description: >-
            Accepts a comma separated string of Type IDs. Lookup references in
            ListProductRelationTypes. If empty or null, all types will be used.
          required: true
          schema:
            type: string
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: assortmentSeed
          in: query
          description: >-
            Accepts a comma separated string of Assortment internal ids. Lookup
            references in ListAssortments.
          required: true
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: sort
          in: query
          description: >-
            Sort order as formatted [Property] [Asc/Desc] with comma as
            separator. Supported properties for sorting on the server are
            PopularityRank, Name, Price and SortOrder.
          schema:
            type: string
        - name: size
          in: query
          description: Number of items to display.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: asVariants
          in: query
          description: >-
            Specifies if the output should be grouped as products or as
            variants. Default is false which returns a list of products. Set to
            true if variants are wanted.
          schema:
            type: string
        - name: isForAllVariants
          in: query
          description: >-
            Specifies if the result should include all variants or just the one
            specified as productId. Default is true.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProductRelations'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/ProductRelations'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductRelationTypes:
    get:
      tags:
        - Relations
      summary: List product relation types
      description: >-
        Reference list of Product Relation types. The ids in the list can be
        used as accessoryTypeSeed in calls to
        ListProductAccessories/ListProductRelations.
      operationId: ListProductRelationTypes
      parameters:
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdValue'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdValue'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductUpsell: {}
  /ListProductUpsell2: {}
  /ListProductUpSell3: {}
  /ListProductUpSell4: {}
  /InsertProductReview:
    post:
      tags:
        - Reviews
      summary: Insert product review
      description: >-
        Inserts a product review and returns the new list. Likes and Dislikes
        will be set to zero.
      operationId: InsertProductReview
      parameters:
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      requestBody:
        description: >-
          The actual Review to insert. Likes and Dislikes will be ignored and
          set to zero.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Review'
          application/xml:
            schema:
              $ref: '#/components/schemas/Review'
        required: true
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Review'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Review'
        '500':
          description: Internal Server Error
          content: {}
      x-codegen-request-body-name: review
  /ListProductReviews:
    get:
      tags:
        - Reviews
      summary: List product reviews
      description: Lists reviews for a product. Only published Reviews will be listed.
      operationId: ListProductReviews
      parameters:
        - name: productId
          in: query
          description: The internal id of the product for which reviews are listed.
          required: true
          schema:
            type: integer
            format: int32
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Review'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Review'
        '500':
          description: Internal Server Error
          content: {}
  /ListProductReviewsAll:
    get:
      tags:
        - Reviews
      summary: List all product reviews
      description: >-
        Lists all reviews for all products. Only published Reviews will be
        listed.
      operationId: ListProductReviewsAll
      parameters:
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Review'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Review'
        '500':
          description: Internal Server Error
          content: {}
  /UpdateProductReviewLikes:
    post:
      tags:
        - Reviews
      summary: Update product review likes
      description: Updates likes/dislikes on review.
      operationId: UpdateProductReviewLikes
      parameters:
        - name: productId
          in: query
          description: Product internal id of the review.
          required: true
          schema:
            type: integer
            format: int32
        - name: reviewId
          in: query
          description: The internal id of the review to like/dislike.
          required: true
          schema:
            type: integer
            format: int32
        - name: doLike
          in: query
          description: True or false depending on like or dislike.
          required: true
          schema:
            type: boolean
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Review'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Review'
        '500':
          description: Internal Server Error
          content: {}
  /ListSkuTypes:
    get:
      tags:
        - SkuTypes
      summary: List SKU types
      description: Lists the available sku types.
      operationId: ListSkuTypes
      parameters:
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SkuType'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/SkuType'
        '500':
          description: Internal Server Error
          content: {}
  /ListStatuses:
    get:
      tags:
        - Status
      summary: List product statuses
      description: Reference list of Product Statuses.
      operationId: ListStatuses
      parameters:
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdValue'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdValue'
        '500':
          description: Internal Server Error
          content: {}
  /ListVariantItems:
    post:
      tags:
        - Variants
      summary: List variant items
      description: >-
        This method can be used together with any ListProduct-method to get
        related variant data when the ListProduct-method is called with
        asVariants = false. This will enable filtering on variant data in the
        product list. Just expand on the data needed in the list.
      operationId: ListVariantItems
      parameters:
        - name: productIds
          in: query
          description: A list of product internal ids to get variant data for.
          required: true
          schema:
            type: integer
            format: int32
        - name: statusSeed
          in: query
          description: >-
            Accepts a comma separated string of Status internal ids. Lookup
            references in ListStatuses.
          required: true
          schema:
            type: string
        - name: parametrics
          in: query
          description: >-
            Parametric values formatted as ListParameters =
            L[ParametricId]_[ListId], MultiParameters =
            M[ParametricId]_[MultipleId], ValueParameters =
            V[ParametricId]_[ValueFrom]-[ValueTo] with asterisk (*) as
            separator. Sample: L10_45*M20_254*M20_145*V60_256-1024*V70_1.4-1.9.
            The logical operation between values is AND.
          schema:
            type: string
        - name: storeSeed
          in: query
          description: >-
            Accepts a comma separated string of store internal ids. The
            StoreOnHand property of the product will show the onHand values for
            supplied Stores if supplied.
          schema:
            type: string
        - name: pricelistSeed
          in: query
          description: >-
            A comma separated list of PriceList internal ids to use, if any.
            PriceLists supplied must be valid, either from the application's
            public priceList or any customer or company priceLists or any valid
            client priceLists. For clients configured to use priceListSeed
            exclusively in the API only the supplied priceLists will be used. If
            this is not configured, the supplied priceLists will be appended to
            the valid priceLists. If none is supplied, the default value for the
            application will be used in combination with any customer or company
            priceLists. This applies to both configurations.
          schema:
            type: string
        - name: customerId
          in: query
          description: >-
            Customer internal id. Checks for specific customer bound prices if
            provided.
          schema:
            type: string
        - name: companyId
          in: query
          description: >-
            Company internal id. Checks for specific company bound prices if
            provided. Note! customerId is mandatory in combination with
            companyId.
          schema:
            type: string
        - name: expand
          in: query
          description: >-
            An expand option that specifies what expansions should be made on
            the VariantItem entity. Valid values are: None, Price, OnHand,
            OnHandStore, OnHandSupplier and Parameters. These can be comma
            separated. Use Full for all. Default is Full. None will return just
            the VariantItem without expansions.
          schema:
            type: string
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
        - name: currencyId
          in: query
          description: >-
            Specifies in which currency to display prices. Uses Storm internal
            ids. If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/VariantItem'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/VariantItem'
        '500':
          description: Internal Server Error
          content: {}
  /ListWarehouseInfo:
    get:
      tags:
        - Warehouses
      summary: List warehouse info types
      description: List warehouse information types
      operationId: ListWarehouseInfo
      parameters:
        - name: cultureCode
          in: query
          description: >-
            Specifies in which language to display culture specific information.
            If none is supplied, value is resolved from Application.
          schema:
            type: string
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/WarehouseInfo'
            application/xml:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/WarehouseInfo'
        '500':
          description: Internal Server Error
          content: {}
components:
  schemas:
    CategoryItem:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id of the Category structure item.
          format: int32
        ParentId:
          type: integer
          description: The internal Id of the parent Category structure item.
          format: int32
          nullable: true
        CategoryId:
          type: integer
          description: The internal Id of the actual Category.
          format: int32
        Name:
          type: string
          description: >-
            The Name of the actual Category if the specified so, otherwise it is
            the Name of the Category structure. MaxLength: 50.
        Description:
          type: string
          description: 'The Description of the Category. MaxLength: max.'
        ImagePath:
          type: string
          description: 'MaxLength: 500. Obsolete! - Use ImageKey'
        Level:
          type: integer
          description: The Level of the CategoryItem from the Category structure.
          format: int32
        IsDisplayOnly:
          type: boolean
          description: Indicates if the CategoryItem is just for display or not.
        Key:
          type: string
          description: The Key of the Category structure item.
          format: guid
        Children:
          type: array
          description: A list of children for the Category structure item.
          items:
            $ref: '#/components/schemas/CategoryItem'
        ImageKey:
          type: string
          description: >-
            A unique id for the image at our image server. Url for images are
            formed like http://[client specific CDN]/{ImageKey}. Preset, height
            and width can be sent as parameters.
          format: guid
          nullable: true
        Code:
          type: string
          description: >-
            External code for mapping to the Client's id of this entity.
            MaxLength: 50.
        Synonyms:
          type: string
          description: >-
            Synonyms from the Category in Storm. Can be used when indexing the
            category in any search engine. MaxLength: 500.
        Parametrics:
          type: array
          description: Parametrics is a list of parameterics defined for the category.
          items:
            $ref: '#/components/schemas/CategoryParametric'
      format: CategoryItem
    CategoryParametric:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id of the Parametric.
          format: int32
        Name:
          type: string
          description: 'The internal Id of the Parametric. MaxLength: 50.'
        GroupId:
          type: integer
          description: The internal Id of the ParametricGroup.
          format: int32
        GroupName:
          type: string
          description: 'The Name of the ParametricGroup. MaxLength: 50.'
        SortOrder:
          type: integer
          description: >-
            Use this to sort the parametric. The value is fetched from the
            category's sort order for the parametric values.
          format: int32
        IsGlobal:
          type: boolean
          description: >-
            Indicates if the parametric is global. If it is set as global it
            exists on all products in all categories.
      format: CategoryParametric
    ConfigurationItem:
      type: object
      properties:
        PartNo:
          type: string
          description: 'The PartNo of the ConfigurationItem. MaxLength: 50.'
        Groups:
          type: array
          description: >-
            A list of ConfigurationItemGroups where each group contains
            selectable items.
          items:
            $ref: '#/components/schemas/ConfigurationItemGroup'
      format: ConfigurationItem
    ConfigurationItemGroup:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id of the ConfigurationItemGroup.
          format: int32
        Name:
          type: string
          description: 'The Name of the ConfigurationItemGroup. MaxLength: 512.'
        IsOptional:
          type: boolean
          description: Indicates if any item from Items must be selected or not.
        IsMultiSelection:
          type: boolean
          description: Indicates if more than one item in Items must be selected or not.
        SortOrder:
          type: integer
          description: >-
            The SortOrder of the ConfigurationItemGroup within the
            ConfigurationItem.
          format: int32
        Items:
          type: array
          description: >-
            A list of ConfigurationItemGroupItems where each item is a
            selectable product.
          items:
            $ref: '#/components/schemas/ConfigurationItemGroupItem'
      format: ConfigurationItemGroup
    ConfigurationItemGroupItem:
      type: object
      properties:
        ProductId:
          type: integer
          description: The internal product id of the Product.
          format: int32
        PartNo:
          type: string
          description: 'The PartNo of the Product. MaxLength: 50.'
        Name:
          type: string
          description: >-
            The Name of the Product. When Product is a VariantType, this will be
            the value of the variant parameter(s). MaxLength: 255.
        Description:
          type: string
          description: 'The Description of the Product. MaxLength: max.'
        SortOrder:
          type: integer
          description: The SortOrder of the Item within the group.
          format: int32
        Quantity:
          type: number
          description: The Quantity of the Item.
          format: decimal
        Price:
          type: number
          description: The Price of the Item.
          format: decimal
        PriceListId:
          type: integer
          description: The internal pricelist id of the Item.
          format: int32
        VatRate:
          type: number
          description: >-
            A rate to multiply with price to get price inc VAT. 25% VAT equals a
            VatRate of 1.25.
          format: decimal
        ImageKey:
          type: string
          description: >-
            A unique id for the image at our image server. Url for images are
            formed like http://[client specific CDN]/{ImageKey}. Preset, height
            and width can be sent as parameters.
          format: guid
          nullable: true
        UniqueName:
          type: string
          description: >-
            A unique name that can be used in Urls and to get a Product.
            GetProduct and GetProductByUniqueName gets the same Product.
            MaxLength: 500.
      format: ConfigurationItemGroupItem
    Family:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id of the Family.
          format: int32
        Name:
          type: string
          description: 'The Name of the Family. MaxLength: 50.'
        Description:
          type: string
          description: 'The Description of the Family. MaxLength: max.'
        ImageKey:
          type: string
          description: >-
            A unique id for the image at our image server. Url for images are
            formed like http://[client specific CDN]/{ImageKey}. Preset, height
            and width can be sent as parameters.
          format: guid
          nullable: true
        Code:
          type: string
          description: 'The external Code of the Family. MaxLength: 50.'
      format: Family
    Filter:
      type: object
      properties:
        Name:
          type: string
          description: >-
            The Name of the filter. Available names are: catf, mfrf, flgf, ohf,
            prcf and parf. These are a short notation of the actual types. Used
            in filter specifications as filter name. MaxLength: 50.
        Type:
          type: string
          description: >-
            The Type of the filter. Available types are: Category, Manufacturer,
            Flag, OnHand, Price and Parametric. MaxLength: 50.
        Items:
          type: array
          description: >-
            A list of specific FilterItems for the Filter. The items are the
            actual values for each type of Filter.
          items:
            $ref: '#/components/schemas/IFilterItem'
      format: Filter
    FilterBoolItem:
      allOf:
        - $ref: '#/components/schemas/IFilterItem'
        - type: object
          properties:
            Id:
              type: string
              description: 'The internal Id of the Parametric. MaxLength: int.'
            Name:
              type: string
              description: 'The Name of the Parametric. MaxLength: 255.'
            Count:
              type: integer
              description: A count of SKUs matched by the FilterItem.
              format: int32
            FalseCount:
              type: integer
              description: A count of SKUs not matched by the FilterItem.
              format: int32
            Description:
              type: string
              description: 'The Description of the Parametric. MaxLength: max.'
            ImageKey:
              type: string
              description: >-
                A unique id for the image at our image server. Url for images
                are formed like http://[client specific CDN]/{ImageKey}. Preset,
                height and width can be sent as parameters. Obsolete! - Not
                supported
              format: guid
              nullable: true
    FilterItem:
      allOf:
        - $ref: '#/components/schemas/IFilterItem'
        - type: object
          properties:
            Id:
              type: string
              description: >-
                The internal id of the FilterItem. Values are dependent on the
                type of the filter. This will be the internal id of a catergory
                if the Filter is a Category filter. Not used for OnHand and
                Price filters. MaxLength: int.max.
            Name:
              type: string
              description: 'MaxLength: 255.'
            Value:
              type: string
              description: 'The Value of the FilterItem. MaxLength: max.'
            Type:
              type: string
              description: >-
                The Type of the Item. This is the data type, such as int,
                string, decimal and DateTime. MaxLength: 50.
            Uom:
              type: string
              description: 'Unit of measurement for the value, if specified. MaxLength: 50.'
            Count:
              type: integer
              description: A count of SKUs matched by the FilterItem.
              format: int32
            Description:
              type: string
              description: 'A description of the value. MaxLength: max.'
            Code:
              type: string
              description: 'A Client specific code for the value. MaxLength: 50.'
            SortOrder:
              type: integer
              description: >-
                SortOrder for the FilterItem. Only used for parametric filter
                values and can be specified in StormAdmin for list values or
                multi values. Can be used to sort the values. Default sort order
                is Name.
              format: int32
              nullable: true
    FilterListItem:
      allOf:
        - $ref: '#/components/schemas/IFilterItem'
        - type: object
          properties:
            Id:
              type: string
              description: 'The internal Id of the Parametric. MaxLength: int.'
            Name:
              type: string
              description: 'The Name of the Parametric. MaxLength: 255.'
            Items:
              type: array
              description: >-
                A list of FilterItems where each FilterItem represents a
                distinct parametric value.
              items:
                $ref: '#/components/schemas/IFilterItem'
            Description:
              type: string
              description: 'The Description of the Parametric. MaxLength: max.'
            ImageKey:
              type: string
              description: >-
                A unique id for the image at our image server. Url for images
                are formed like http://[client specific CDN]/{ImageKey}. Preset,
                height and width can be sent as parameters. Obsolete! - Not
                supported
              format: guid
              nullable: true
    FilterMultiItem:
      allOf:
        - $ref: '#/components/schemas/IFilterItem'
        - type: object
          properties:
            Id:
              type: string
              description: 'The internal Id of the Parametric. MaxLength: int.'
            Name:
              type: string
              description: 'The Name of the Parametric. MaxLength: 255.'
            Items:
              type: array
              description: >-
                A list of FilterItems where each FilterItem represents a
                distinct parametric value.
              items:
                $ref: '#/components/schemas/IFilterItem'
            Description:
              type: string
              description: 'The Description of the Parametric. MaxLength: max.'
            ImageKey:
              type: string
              description: >-
                A unique id for the image at our image server. Url for images
                are formed like http://[client specific CDN]/{ImageKey}. Preset,
                height and width can be sent as parameters. Obsolete! - Not
                supported
              format: guid
              nullable: true
    FilterPriceItem:
      allOf:
        - $ref: '#/components/schemas/IFilterItem'
        - type: object
          properties:
            Id:
              type: string
              description: 'Not used. MaxLength: int.'
            Name:
              type: string
              description: 'Not used. MaxLength: 255.'
            From:
              type: number
              description: The lowest price from the result set, excluding VAT.
              format: decimal
            To:
              type: number
              description: The highest price from the result set, excluding VAT.
              format: decimal
            FromIncVat:
              type: number
              description: The lowest price from the result set, including VAT.
              format: decimal
            ToIncVat:
              type: number
              description: The highest price from the result set, including VAT.
              format: decimal
    FilterRangeItem:
      allOf:
        - $ref: '#/components/schemas/IFilterItem'
        - type: object
          properties:
            Id:
              type: string
              description: 'The internal Id of the Parametric. MaxLength: int.'
            Name:
              type: string
              description: 'The Name of the Parametric. MaxLength: 255.'
            From:
              type: string
              description: >-
                The minimum value in the range of the Parametric. MaxLength:
                decimal.
            To:
              type: string
              description: >-
                The maximum value in the range of the Parametric. MaxLength:
                decimal.
            Type:
              type: string
              description: >-
                The Type of the range values. Normally int or decimal.
                MaxLength: max.
            Uom:
              type: string
              description: 'The unit of measurement of the Parametric. MaxLength: 50.'
            Description:
              type: string
              description: 'The Description of the Parametric. MaxLength: max.'
            ImageKey:
              type: string
              description: >-
                A unique id for the image at our image server. Url for images
                are formed like http://[client specific CDN]/{ImageKey}. Preset,
                height and width can be sent as parameters. Obsolete! - Not
                supported
              format: guid
              nullable: true
    Flag:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id of the Flag.
          format: int32
        Name:
          type: string
          description: 'The Name of the Flag. MaxLength: 50.'
        TypeId:
          type: integer
          description: >-
            The Type of the Flag. ProductFlags have TypeId = 1 and VariantFlags
            have TypeId = 2.
          format: int32
        GroupId:
          type: integer
          description: >-
            The GroupId of the Flag. This value is client specific and can be
            used to group product flags.
          format: int32
        Description:
          type: string
          description: 'The Description of the Flag. MaxLength: 500.'
        Code:
          type: string
          description: 'The external Code for the flag. MaxLength: 500.'
      format: Flag
    FlagGroup:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id of the flagGroup.
          format: int32
        Name:
          type: string
          description: 'The Name of the flagGroup. MaxLength: 50.'
        Description:
          type: string
          description: 'The Description of the flagGroup. MaxLength: 500.'
        Code:
          type: string
          description: 'The external Code for the flagGroup. MaxLength: 500.'
      format: FlagGroup
    HistoricalBestPrice:
      type: object
      properties:
        PartNo:
          type: string
          description: 'The part number for this product. MaxLength: 50.'
        PriceListId:
          type: integer
          description: The pricelist internal id for the price.
          format: int32
        Price:
          type: number
          description: The actual price value, excluding VAT.
          format: decimal
        PriceIncVat:
          type: number
          description: The actual price value, including VAT.
          format: decimal
        VatRate:
          type: number
          description: >-
            A rate to multiply with price to get price inc VAT. 25% VAT equals a
            VatRate of 1.25.
          format: decimal
        Updated:
          type: string
          description: Time when this price started to be best price.
          format: date-time
      format: HistoricalBestPrice
    Manufacturer:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id of the Manufacturer.
          format: int32
        Name:
          type: string
          description: 'The Name of the Manufacturer. MaxLength: 100.'
        OrgNo:
          type: string
          description: 'The organizational number of the Manufacturer. MaxLength: 50.'
        WebSite:
          type: string
          description: 'The url to the Manufacturer''s web site. MaxLength: 255.'
        LogoPath:
          type: string
          description: 'MaxLength: 255. Obsolete! - Use LogoKey'
        SupportUrl:
          type: string
          description: >-
            The url to the Manufacturer's support page on their web site.
            MaxLength: 255.
        SupportEmail:
          type: string
          description: 'The email address to the Manufacturer''s support. MaxLength: 255.'
        SupportPhone:
          type: string
          description: 'The phone number to the Manufacturer''s support. MaxLength: 500.'
        SupportOpenHours:
          type: string
          description: 'The opening hours for the Manufacturer''s support. MaxLength: max.'
        SupportPolicy:
          type: string
          description: >-
            The url to the Manufacturer's support policy web page. MaxLength:
            max.
        SupportDescription:
          type: string
          description: >-
            The url to the Manufacturer's support description web page.
            MaxLength: max.
        Key:
          type: string
          description: The system wide unique Key of the Manufacturer.
          format: guid
        LogoKey:
          type: string
          description: >-
            A unique id for the image at our image server. Url for images are
            formed like http://[client specific CDN]/{LogoKey}. Preset, height
            and width can be sent as parameters.
          format: guid
          nullable: true
        UniqueName:
          type: string
          description: >-
            A unique name that can be used in Urls and to get this entity.
            GetManufacturer and GetManufacturerByUniqueName gets the same
            Manufacturer. MaxLength: 255.
      format: Manufacturer
    ManufacturerItem:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id of the Manufacturer.
          format: int32
        Name:
          type: string
          description: 'The Name of the Manufacturer. MaxLength: 100.'
        Key:
          type: string
          description: The system wide unique Key of the Manufacturer.
          format: guid
        ProductCount:
          type: integer
          format: int32
        UniqueName:
          type: string
          description: >-
            A unique name that can be used in Urls and to get a Manufacturer.
            GetManufacturer and GetManufacturerByUniqueName gets the same
            Manufacturer. MaxLength: 255.
        LogoKey:
          type: string
          description: >-
            A unique id for the image at our image server. Url for images are
            formed like http://[client specific CDN]/{LogoKey}. Preset, height
            and width can be sent as parameters.
          format: guid
          nullable: true
      format: ManufacturerItem
    ManufacturerItemPagedList:
      type: object
      properties:
        ItemCount:
          type: integer
          description: >-
            The total item count. Can be used to manage paging. Use PageSize to
            calculate number of pages.
          format: int32
        Items:
          type: array
          description: >-
            Current list of ManufacturerItems for the current page if paging is
            used. Otherwise all items will be in the list.
          items:
            $ref: '#/components/schemas/ManufacturerItem'
      format: ManufacturerItemPagedList
    NavigationNode:
      type: object
      properties:
        Key:
          type: string
          description: >-
            Key is unique for the NavigationNode and used when listing the
            content displayed for the node.
          format: guid
        Hierarchy:
          type: string
          description: >-
            Hierarchy represents the current navigation path within the
            NavigationNode structure. Hierarchy is used to get the sub nodes for
            current node. MaxLength: 4000.
        TypeId:
          type: integer
          description: 'TypeId defines the content type of the NavigationNode. '
          format: int32
        Name:
          type: string
          description: 'The display name of the NavigationNode. MaxLength: 50.'
        TargetPath:
          type: string
          description: >-
            The target path, if any, for the NavigationNode. This can be a
            direct link to any page that defines the content for the node.
            Depending on TypeId. MaxLength: 500.
        ManufacturerSeed:
          type: string
          description: >-
            The manufacturer seed, if any, for the NavigationNode. MaxLength:
            255.
        CategorySeed:
          type: string
          description: 'The category seed, if any, for the NavigationNode. MaxLength: 255.'
        FlagIdSeed:
          type: string
          description: >-
            A comma separated list of flag internal ids, if any, for the
            NavigationNode. MaxLength: 255.
        ImageKey:
          type: string
          description: >-
            The image key for the first underlying category, if any. Url for
            images are formed like http://[client specific CDN]/{ImageKey}.
            Preset, height and width can be sent as parameters.
          format: guid
          nullable: true
        Description:
          type: string
          description: >-
            The description for the first underlying category, if any.
            MaxLength: max.
        ProductCount:
          type: integer
          description: >-
            A count of existing products under this node. It will have a value
            if fetched from an operation which calculates the value, null
            otherwise.
          format: int32
          nullable: true
      format: NavigationNode
    NavigationStructure:
      type: object
      properties:
        Id:
          type: integer
          description: >-
            The internal Id is used to get the NavigationNodeList for this
            structure.
          format: int32
        Name:
          type: string
          description: 'The Name of the NavigationStructure. MaxLength: 50.'
        Description:
          type: string
          description: 'The Description of the NavigationStructure. MaxLength: 500.'
        IsDefault:
          type: boolean
          description: Indicates if the NavigationStructure is a default structure or not.
      format: NavigationStructure
    OnHand:
      type: object
      properties:
        Value:
          type: number
          description: >-
            The aggregated value from all warehouses and locations in the
            current context (Web, Supplier or Store).
          format: decimal
        IncomingValue:
          type: number
          description: The incoming quantity on the next delivery.
          format: decimal
        NextDeliveryDate:
          type: string
          description: The next delivery data from supplier to client warehouse.
          format: date-time
          nullable: true
        LeadtimeDayCount:
          type: integer
          description: The number of days it takes to ship from the supplier.
          format: int32
          nullable: true
        LastChecked:
          type: string
          description: When onHand info was last checked. Null if never.
          format: date-time
          nullable: true
        IsActive:
          type: boolean
          description: Indicate if the product is stocked in a store.
        IsReturnable:
          type: boolean
          description: Indicate if the product is returnable in a store.
        Info:
          type: array
          description: >-
            List of IdValues for the OnHand data for this sku warehouse location
            combination. This will always be null unless fetched with any of the
            ProductOnHand methods.
          items:
            $ref: '#/components/schemas/IdValue'
      format: OnHand
    ParametricGroup:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id of the parametricGroup.
          format: int32
        Name:
          type: string
          description: 'The Name of the parametricGroup. MaxLength: 50.'
        Description:
          type: string
          description: 'The Description of the parametricGroup. MaxLength: 500.'
        Code:
          type: string
          description: 'The external Code for the parametricGroup. MaxLength: 500.'
      format: ParametricGroup
    ParametricInfo:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id of the parametric.
          format: int32
        Name:
          type: string
          description: 'The Name of the parametric. MaxLength: 50.'
        Type:
          type: string
          description: 'The Type of the parametric: ListValue, MultiValue or Value.'
        Description:
          type: string
          description: 'The Description of the parametric. MaxLength: 500.'
        Uom:
          type: string
          description: 'The unit of measurement of the values. MaxLength: 50.'
        IsVariantParametric:
          type: boolean
          description: >-
            Specifies if the current Parametric is for variants only (true) or
            for the common product (false).
        ValueType:
          type: string
          description: >-
            The data type of the values for this parametric: Text, Integer,
            Decimal, Boolean, Html or Date.
        Code:
          type: string
          description: >-
            An externally defined code use to identify this Parametric.
            MaxLength: 50.
        IsHidden:
          type: boolean
          description: >-
            Indicates if the parametric is hidden or not. This can be used to
            hide parametrics that are only used in application logic. Only
            non-hidden parametrics should be displayed in the frontend.
        IsGlobal:
          type: boolean
          description: >-
            Indicates if the parametric is global. If it is set as global it
            exists on all products in all categories.
      format: ParametricInfo
    ParametricsSeed:
      type: object
      properties:
        ListSeed:
          type: string
          description: >-
            A comma separated list of parametric values on the format
            id:value-id. Id is the parametric id and value id is the parametric
            value id. Use ListParametricInfo to list all parametric info and
            ListParametricValues2 for all values as lookup when resolving
            parametric data. MaxLength: max.
        MultipleSeed:
          type: string
          description: >-
            Same as for ParametricListSeed but any parametric can have multiple
            values. Use ListParametricInfo to list all parametric info and
            ListParametricValues2 for all values as lookup when resolving
            parametric data. MaxLength: max.
        ValueSeed:
          type: string
          description: >-
            Same as for ParametricListSeed but the value is inlined as id:value.
            Use ListParametricInfo to list all parametric info and
            ListParametricValues2 for all values as lookup when resolving
            parametric data. Parametric with values of type html or text are not
            supported. MaxLength: max.
      format: ParametricsSeed
    ParametricValue:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id of the parametric value.
          format: int32
        Name:
          type: string
          description: 'The Name of the parametric value. MaxLength: 255.'
        Description:
          type: string
          description: 'The Description of the parametric value. MaxLength: max.'
        Code:
          type: string
          description: >-
            An externally defined code use to identify this Parametric value.
            MaxLength: 50.
        ImageKey:
          type: string
          description: >-
            A unique id for the image at our image server. Url for images are
            formed like http://[client specific CDN]/{ImageKey}. Preset, height
            and width can be sent as parameters.
          format: guid
          nullable: true
        Type:
          type: string
          description: 'MaxLength: 50. Obsolete! - Use ParametricInfo.Type'
        SortOrder:
          type: integer
          description: Can be specified in Storm Admin for each parametric value.
          format: int32
        ParametricId:
          type: integer
          description: The internal Id of the Parametric that contains this value.
          format: int32
        ParametricCode:
          type: string
          description: >-
            An externally defined code use to identify this Parametric that
            contains this value. MaxLength: 50.
      format: ParametricValue
    Pricelist:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id of the pricelist.
          format: int32
        Name:
          type: string
          description: 'The Name of the pricelist. MaxLength: 50.'
        Description:
          type: string
          description: 'The Description of the pricelist. MaxLength: max.'
        Agreement:
          type: string
          description: >-
            External pricelist code usually known to the Erp-system. MaxLength:
            50.
        Currency:
          $ref: '#/components/schemas/ApplicationsCurrency'
        IsPrimary:
          type: boolean
          description: Specifies if this is the primary priceList or not.
        IsPublic:
          type: boolean
          description: >-
            Specifies if this is a public priceList or not. Most application
            specific pricelists are public while customer specific are not.
        IsLimitedToStock:
          type: boolean
          description: Specifies if this priceList is limited to stock or not.
        IsBid:
          type: boolean
          description: Specifies if this is a bid pricelist or not.
        ImageKey:
          type: string
          description: >-
            A unique id for the image at our image server. Url for images are
            formed like http://[client specific CDN]/{ImageKey}. Preset, height
            and width can be sent as parameters.
          format: guid
          nullable: true
        Type:
          type: integer
          description: >-
            Internal id representing the type of priceList. Types are client
            specific except for 0=None, which is the default or standard
            priceList type. See ListPriceListTypes for defined types.
          format: int32
        StartDate:
          type: string
          description: The StarDate for when the pricelist is valid, if any.
          format: date-time
          nullable: true
        EndDate:
          type: string
          description: The EndDate for when the pricelist is valid, if any.
          format: date-time
          nullable: true
        IsVirtual:
          type: boolean
          description: >-
            Specifies if the pricelist is virtual or not. Virtual pricelists
            must be inherited from a parent pricelists, which cannot be virtual,
            and can have no population rules. Prices are not stored in Storm but
            calculated on the fly when needed. Rules can be specified but other
            properties are inherited from parent.
      format: Pricelist
    Product:
      type: object
      properties:
        Id:
          type: integer
          description: Internal id of the product.
          format: int32
        Name:
          type: string
          description: >-
            The name of the product. When Product is a VariantType, this will be
            the value of the variant parameter(s). MaxLength: 255.
        Description:
          type: string
          description: 'Description of the product. MaxLength: max.'
        PartNo:
          type: string
          description: >-
            Contains the partNo if the product is not a variant or if the
            product is fetched by PartNo or VariantUniqueName. If the product
            has a value here then the selected variant can be found by either
            PartNo or by Id. MaxLength: 50.
        SubHeader:
          type: string
          description: 'MaxLength: 25.'
        Manufacturer:
          $ref: '#/components/schemas/ProductManufacturer'
        Image:
          type: string
          description: 'MaxLength: 255. Obsolete! - Use ImageKey'
        CampaignImage:
          type: string
          description: 'MaxLength: 255. Obsolete! - Use ImageKey with preset'
        LargeImage:
          type: string
          description: 'MaxLength: 255. Obsolete! - Use ImageKey with preset'
        ThumbnailImage:
          type: string
          description: 'MaxLength: 255. Obsolete! - Use ImageKey with preset'
        Files:
          type: array
          description: >-
            If viewed on Product level this will be the product specific files.
            If viewed on a Variant it will be the variant specific files.
          items:
            $ref: '#/components/schemas/ProductFile'
        FlagIdSeed:
          type: string
          description: >-
            A comma separated list of flag internal ids. If viewed on Product
            level this will be the product specific flags. If viewed on a
            Variant it will be the variant specific flags. MaxLength: max.
        Price:
          type: number
          description: >-
            If viewed on Product level this can be a from-price. It will be the
            price of the cheapest variant. If viewed on a Variant it will be the
            variant specific price.
          format: decimal
        PriceCatalog:
          type: number
          description: >-
            The original price, if specified. Same rules apply as for Price if
            it is a Product or a Variant.
          format: decimal
          nullable: true
        PriceRecommended:
          type: number
          description: >-
            The rule based price from a priceList, if specified. Same rules
            apply as for Price if it is a Product or a Variant.
          format: decimal
          nullable: true
        PriceFreight:
          type: number
          description: Obsolete! - Use ListDeliveryMethodByProduct if this is required.
          format: decimal
          nullable: true
        PriceFreightVatRate:
          type: number
          description: Obsolete! - Use ListDeliveryMethodByProduct if this is required.
          format: decimal
          nullable: true
        VatRate:
          type: number
          description: >-
            A rate to multiply with price to get price inc VAT. 25% VAT equals a
            VatRate of 1.25.
          format: decimal
        RecommendedQuantity:
          type: number
          description: >-
            Indicates the default value used as quantity when buying the
            product. If IsRecommendedQuantityFixed is true, only multiples of
            this quantity should be allowed.
          format: decimal
          nullable: true
        OnHand:
          $ref: '#/components/schemas/OnHand'
        OnHandStore:
          $ref: '#/components/schemas/OnHand'
        OnHandSupplier:
          $ref: '#/components/schemas/OnHand'
        Variants:
          type: array
          description: >-
            A list of variants for this Product, if any. If the Product is
            itself a variant this will be empty.
          items:
            $ref: '#/components/schemas/Product'
        PriceListId:
          type: integer
          format: int32
        Key:
          type: string
          format: guid
        Updated:
          type: string
          format: date-time
          nullable: true
        NavigationNodeKey:
          type: string
          format: guid
          nullable: true
        CategoryId:
          type: integer
          description: Obsolete! - Use Categories
          format: int32
          nullable: true
        CategoryName:
          type: string
          description: 'MaxLength: 50. Obsolete! - Use Categories'
        ImageKey:
          type: string
          description: >-
            A unique id for the image at our image server. Url for images are
            formed like http://[client specific CDN]/{ImageKey}. Preset, height
            and width can be sent as parameters.
          format: guid
          nullable: true
        VariantParametrics:
          type: array
          description: A list of this product's parametric values. Only used on variants.
          items:
            $ref: '#/components/schemas/ProductParametric'
        StatusId:
          type: integer
          format: int32
        MetaTags:
          type: string
          description: 'Meta tags for SEO optimization. MaxLength: max.'
        MetaDescription:
          type: string
          description: 'Meta description for SEO optimization. MaxLength: max.'
        VariantName:
          type: string
          description: 'The complete variant name of the product. MaxLength: 255.'
        DescriptionHeader:
          type: string
          description: >-
            DescriptionHeader for the product as specified in Storm Admin.
            MaxLength: 255.
        UniqueName:
          type: string
          description: >-
            A unique name that can be used in Urls and to get a Product.
            GetProduct and GetProductByUniqueName gets the same Product.
            MaxLength: 500.
        StockDisplayBreakPoint:
          type: integer
          description: A value that can be used for display logic regarding OnHand.
          format: int32
          nullable: true
        Parametrics:
          type: array
          description: >-
            A list of this product's parametric values. Only Parametric values
            common to all variants for this product will be here. On Variant
            level this will contain Parametric values with distinguishing values
            that are not variant parametric values.
          items:
            $ref: '#/components/schemas/ProductParametric'
        Families:
          type: array
          description: A list of this product's families.
          items:
            $ref: '#/components/schemas/IdNameDescription'
        IsBuyable:
          type: boolean
          description: >-
            Indicates if the item is buyable or not. Will always be false if the
            status is closed. An exception will be thrown if IsBuyable is false
            and an attempt to buy the item is made. The property can be used to
            hide or show the buy-button. Note that the value can differ for
            underlying variants.
        SubDescription:
          type: string
          description: 'Sub description from Storm Admin. MaxLength: max.'
        Uom:
          type: string
          description: 'Short unit of measurement from Storm Admin. MaxLength: 50.'
        UomCount:
          type: number
          description: Unit of measurement count
          format: decimal
          nullable: true
        EanCode:
          type: string
          description: >-
            This will be the EAN code of the selected variant of the product if
            any. Variants will have this set. MaxLength: 50.
        Type:
          type: integer
          description: >-
            Sku type internal id for this product. Might not be valid if there
            are variants with different types. Then variants must be examined.
            Also see ListSkutypes.
          format: int32
        Categories:
          type: array
          description: A list of categories ordered so the primary category is first.
          items:
            $ref: '#/components/schemas/IdValue'
        IsRecommendedQuantityFixed:
          type: boolean
          description: >-
            If this is set to true only multiples of RecommendedQuantity should
            be allowed.
        PopularityRank:
          type: integer
          description: >-
            A value used to sort items based on popularity. Lower values are
            more popular.
          format: int32
          nullable: true
        CostPurchase:
          type: number
          description: CostPurchase from Storm Admin.
          format: decimal
          nullable: true
        CostUnit:
          type: number
          description: CostUnit from Storm Admin.
          format: decimal
          nullable: true
        Title:
          type: string
          description: 'Title for the product. As specified in Storm Admin. MaxLength: 255.'
        ActualWeight:
          type: number
          description: >-
            Actual weight or gross weight for the product. As specified in Storm
            Admin.
          format: decimal
        CommodityCode:
          type: string
          description: Commodity code for the product. As specified in Storm Admin.
        IsDropShipOnly:
          type: boolean
          description: True if this product is for drop ship only. False otherwise.
        Synonyms:
          type: string
          description: >-
            Synonyms from the Product in Storm. Can be used when indexing the
            product in any search engine. MaxLength: 500.
        IsSubscribable:
          type: boolean
          description: >-
            True if this product can be added to a Subscription. False
            otherwise.
        UnspscCode:
          type: string
          description: >-
            United Nations Standard Products and Services Code for the product.
            MaxLength: 50.
        PriceStandard:
          type: number
          description: >-
            The standard price, if specified. Same rules apply as for Price if
            it is a Product or a Variant.
          format: decimal
          nullable: true
        Width:
          type: number
          description: The logistic width as defined in Storm.
          format: decimal
          nullable: true
        Height:
          type: number
          description: The logistic height as defined in Storm.
          format: decimal
          nullable: true
        Depth:
          type: number
          description: The logistic depth as defined in Storm.
          format: decimal
          nullable: true
        IsDangerousGoods:
          type: boolean
          description: >-
            True if this product is considered as dangerous goods. False
            otherwise.
        HasQuantityBreaks:
          type: boolean
          description: True if this product has any quantity breaks. False otherwise.
        GroupByKey:
          type: string
          description: >-
            A key that can be used to group items on product. It is equal to the
            ProductId for non-variants and equals 'v'+variantId for variants.
            Should only be used when fetching product lists as variants.
            MaxLength: int.
        PriceIncVat:
          type: number
          description: >-
            The price including VAT calculated on the server side. Should be
            used to display prices including VAT.
          format: decimal
      format: Product
    ProductAccessories:
      type: object
      properties:
        Accessories:
          $ref: '#/components/schemas/ProductItemPagedList'
        VariantAccessories:
          type: array
          description: This is a list of VariantAccessories.
          items:
            $ref: '#/components/schemas/VariantAccessories'
      format: ProductAccessories
    ProductFile:
      type: object
      properties:
        Id:
          type: integer
          description: >-
            This is the file internal id and it defines the kind of file it is.
            Not to be confused with entity ids. Values are application specific
            and should be like 'Front image', 'Back image'. See ListFileTypeIds
            for possible values.
          format: int32
        Type:
          type: integer
          description: >-
            This is the FileTypeId mapped from Storm's predefined types. Types
            maps to mime types.
          format: int32
        Path:
          type: string
          description: 'MaxLength: max. Obsolete! - Use Key'
        Name:
          type: string
          description: 'This is the Name of the product file. MaxLength: 50.'
        Description:
          type: string
          description: 'This is the Description of the product file. MaxLength: max.'
        Key:
          type: string
          description: >-
            A unique id for the file at our image server. Url for images are
            formed like http://[client specific CDN]/{Key}. Preset, height and
            width can be sent as parameters.
          format: guid
          nullable: true
        Extension:
          type: string
          description: >-
            This is the file type extension for the current file. Can be used to
            append after image key in url. MaxLength: 50.
        Code:
          type: string
          description: >-
            This is the file's external Code. Can be use as is for grouping
            files if Id is not adequate. Or any other application specific
            purpose. MaxLength: 50.
        SortOrder:
          type: integer
          description: This is the sortorder of the file within its file type Id.
          format: int32
          nullable: true
      format: ProductFile
    ProductId:
      type: object
      properties:
        Id:
          type: integer
          description: Internal product id.
          format: int32
        Name:
          type: string
          description: 'MaxLength: 255.'
        ManufacturerName:
          type: string
          description: 'MaxLength: 100.'
        Price:
          type: number
          description: The best price excluding VAT for the product.
          format: decimal
        VatRate:
          type: number
          description: >-
            A rate to multiply with price to get price inc VAT. 25% VAT equals a
            VatRate of 1.25.
          format: decimal
        ImageKey:
          type: string
          description: >-
            A unique id for the image at our image server. Url for images are
            formed like http://[client specific CDN]/{ImageKey}. Preset, height
            and width can be sent as parameters.
          format: guid
          nullable: true
        UniqueName:
          type: string
          description: >-
            A unique name that can be used in Urls and to get a Product.
            GetProduct and GetProductByUniqueName gets the same Product.
            MaxLength: 500.
        CategoryId:
          type: integer
          format: int32
          nullable: true
        PriceIncVat:
          type: number
          description: >-
            The price including VAT calculated on the server side. Should be
            used to display prices including VAT.
          format: decimal
      format: ProductId
    ProductItem:
      type: object
      properties:
        Id:
          type: integer
          description: Internal product id.
          format: int32
        Name:
          type: string
          description: 'MaxLength: 255.'
        SubHeader:
          type: string
          description: 'MaxLength: 255.'
        Manufacturer:
          $ref: '#/components/schemas/ProductManufacturer'
        Image:
          type: string
          description: 'MaxLength: 255. Obsolete! - Use ImageKey'
        CampaignImage:
          type: string
          description: 'MaxLength: 255. Obsolete! - Use ImageKey with preset'
        LargeImage:
          type: string
          description: 'MaxLength: 255. Obsolete! - Use ImageKey with preset'
        ThumbnailImage:
          type: string
          description: 'MaxLength: 255. Obsolete! - Use ImageKey with preset'
        FlagIdSeed:
          type: string
          description: 'A comma separated list of flag internal ids. MaxLength: max.'
        Price:
          type: number
          description: Best price calculated from available pricelists, excluding VAT.
          format: decimal
        PriceRecommended:
          type: number
          description: The rule based price from a priceList, excluding VAT, if specified.
          format: decimal
          nullable: true
        PriceCatalog:
          type: number
          description: 'The original price, excluding VAT, if specified. '
          format: decimal
          nullable: true
        VatRate:
          type: number
          description: >-
            A rate to multiply with price to get price inc VAT. 25% VAT equals a
            VatRate of 1.25.
          format: decimal
        RecommendedQuantity:
          type: number
          description: >-
            Indicates the default value used as quantity when buying the
            product. If IsRecommendedQuantityFixed is true, only multiples of
            this quantity should be allowed.
          format: decimal
          nullable: true
        OnHand:
          $ref: '#/components/schemas/OnHand'
        OnHandStore:
          $ref: '#/components/schemas/OnHand'
        OnHandSupplier:
          $ref: '#/components/schemas/OnHand'
        Key:
          type: string
          format: guid
        Updated:
          type: string
          format: date-time
          nullable: true
        ImageKey:
          type: string
          description: >-
            A unique id for the image at our image server. Url for images are
            formed like http://[client specific CDN]/{ImageKey}. Preset, height
            and width can be sent as parameters.
          format: guid
          nullable: true
        PopularityRank:
          type: integer
          description: >-
            A value used to sort items based on popularity. Lower values are
            more popular.
          format: int32
          nullable: true
        StatusId:
          type: integer
          format: int32
        VariantName:
          type: string
          description: 'MaxLength: 255.'
        VariantImageKey:
          type: string
          format: guid
          nullable: true
        AdditionalImageKeySeed:
          type: string
          description: >-
            Seed formatted as TypeId[1]:Guid[1], TypeId[2]:Guid[2],..,
            TypeId[n]:Guid[n]. MaxLength: max.
        GroupByKey:
          type: string
          description: >-
            A key that can be used to group items on product. It is equal to the
            ProductId for non-variants and equals 'v'+variantId for variants.
            Should only be used when fetching product lists as variants.
            MaxLength: int.
        VariantFlagIdSeed:
          type: string
          description: >-
            A comma separated list of flag internal ids. Contains any variant
            specific flags when fetched in product list AsVariants. MaxLength:
            max.
        PartNo:
          type: string
          description: >-
            Contains the partNo if the product is not a variant. This will be
            empty if the product has variants. MaxLength: 50.
        PriceListId:
          type: integer
          description: >-
            Contains the priceList internal id if the product is not a variant.
            This will be empty if the product has variants.
          format: int32
          nullable: true
        SortOrder:
          type: integer
          description: >-
            A custom sort order that can be used when the product item is in a
            list. The sort order is defined for the primary category of the
            product item.
          format: int32
          nullable: true
        CategoryId:
          type: integer
          description: Obsolete! - Use CategoryIdSeed
          format: int32
          nullable: true
        ParametricListSeed:
          type: string
          description: >-
            ParametricListSeed contains a comma separated list of id-value pairs
            separated by colon. Ex: 4711:32,4712:5. Id is the ParametricId and
            Value is a ListValueId. Note that parametric values with string or
            html types are not included here since we cannot know if they
            contain any of the separators. Use ListParametricInfo to list all
            parametric info and ListParametricValues2 for all values as lookup
            when resolving parametric data. MaxLength: max.
        ParametricMultipleSeed:
          type: string
          description: >-
            ParametricMultipleSeed contains a comma separated list of id-value
            pairs separated by colon. Ex: 4711:32,4712:5. Id is the ParametricId
            and Value is a MultipleValueId. Multiple values for the same
            parametric are repeated with the same id but different values. Note
            that parametric values with string or html types are not included
            here since we cannot know if they contain any of the separators. Use
            ListParametricInfo to list all parametric info and
            ListParametricValues2 for all values as lookup when resolving
            parametric data. MaxLength: max.
        ParametricValueSeed:
          type: string
          description: >-
            ParametricValueSeed contains a comma separated list of id-value
            pairs separated by colon. Ex: 4711:32,4712:5. Id is the ParametricId
            and Value is the actual value depending on the parametric type. Note
            that parametric values with string or html types are not included
            here since we cannot know if they contain any of the separators. Use
            ListParametricInfo to list all parametric info and
            ListParametricValues2 for all values as lookup when resolving
            parametric data. MaxLength: max.
        ParametricTextField:
          type: array
          description: Global text parametrics configured to to appear in lists.
          items:
            $ref: '#/components/schemas/IdValue'
        VariantParametricSeed:
          type: string
          description: >-
            Contains all ParametricIds that distinguishes these variants for
            this product. Their specific values are found under
            ParametricListSeed, ParametricMultiSeed or ParametricValueSeed. Use
            ListParametricInfo to list all parametric info and
            ListParametricValues2 for all values as lookup when resolving
            parametric data. MaxLength: max.
        UniqueName:
          type: string
          description: >-
            A unique name that can be used in Urls and to get a Product.
            GetProduct and GetProductByUniqueName gets the same Product.
            MaxLength: 500.
        StockDisplayBreakPoint:
          type: integer
          description: A value that can be used for display logic regarding OnHand.
          format: int32
          nullable: true
        IsBuyable:
          type: boolean
          description: >-
            Indicates if the item is buyable or not. Will always be false if the
            status is closed. An exception will be thrown if IsBuyable is false
            and an attempt to buy the item is made. The property can be used to
            hide or show the buy-button.
        SubDescription:
          type: string
          description: 'Sub description from Storm Admin. MaxLength: max.'
        Quantity:
          type: number
          description: >-
            The Quantity, if applicable. Null otherwise. This value will be set
            when it makes sense such as for included items in StructuralItems.
          format: decimal
          nullable: true
        Type:
          type: integer
          description: >-
            Sku type for this product. Might not be valid if there are variants
            with different types. Then variants must be examined. Also see
            ListSkutypes.
          format: int32
        CategoryIdSeed:
          type: string
          description: >-
            A comma separated list of category internal ids ordered so the
            primary category id is first. MaxLength: max.
        IsRecommendedQuantityFixed:
          type: boolean
          description: >-
            If this is set to true only multiples of RecommendedQuantity should
            be allowed.
        Synonyms:
          type: string
          description: >-
            Synonyms from the Product in Storm. Can be used when indexing the
            product in any search engine. MaxLength: 500.
        VariantUniqueName:
          type: string
          description: >-
            A unique name that can be used in Urls and to get a Product. This is
            the variant's unique name. GetProduct and GetProductByUniqueName
            gets the same Product. MaxLength: 500.
        IsSubscribable:
          type: boolean
          description: >-
            True if this product can be added in a Subscription. False
            otherwise.
        UnitOfMeasurement:
          type: string
          description: 'Short unit of measurement from Storm Admin. MaxLength: 50.'
        UnitOfMeasurementCount:
          type: number
          description: Unit of measurement count
          format: decimal
          nullable: true
        EanCode:
          type: string
          description: >-
            This will be the EAN code of the selected variant of the product if
            any. Variants will have this set. MaxLength: 50.
        PriceStandard:
          type: number
          description: The standard price, excluding VAT, if specified.
          format: decimal
          nullable: true
        IsDangerousGoods:
          type: boolean
          description: >-
            True if this product is considered as dangerous goods. False
            otherwise.
        PriceIncVat:
          type: number
          description: >-
            The price including VAT calculated on the server side. Should be
            used to display prices including VAT.
          format: decimal
      format: ProductItem
    ProductItem2:
      type: object
      properties:
        Id:
          type: integer
          description: The product internal id for this ProductItem2.
          format: int32
        Key:
          type: string
          format: guid
        Name:
          type: string
          description: 'MaxLength: 255.'
        Manufacturer:
          $ref: '#/components/schemas/ProductManufacturer'
        CategoryIdSeed:
          type: string
          description: >-
            A comma separated list of category internal id ordered so the
            primary category id is first. MaxLength: max.
        PartNo:
          type: string
          description: >-
            Contains the part number of the primary Variant, adhering to manual
            sorting or if sorting isn't set - by lowest available price.
            MaxLength: 50.
        Price:
          $ref: '#/components/schemas/ProductPrice'
        OnHand:
          $ref: '#/components/schemas/OnHand'
        OnHandStore:
          $ref: '#/components/schemas/OnHand'
        OnHandSupplier:
          $ref: '#/components/schemas/OnHand'
        Variants:
          type: array
          description: >-
            The Variants on this ProductItem2. Use expand option Variants to
            include this property or it will be null.
          items:
            $ref: '#/components/schemas/VariantItem'
        ImageKey:
          type: string
          description: >-
            A unique id for the image at our image server. Url for images are
            formed like http://[client specific CDN]/{ImageKey}. Preset, height
            and width can be sent as parameters.
          format: guid
          nullable: true
        AdditionalImageKeySeed:
          type: string
          description: >-
            Seed formatted as TypeId[1]:Guid[1], TypeId[2]:Guid[2],..,
            TypeId[n]:Guid[n]. MaxLength: max.
        FlagIdSeed:
          type: string
          description: 'A comma separated list of flag internal ids. MaxLength: max.'
        Parametrics:
          $ref: '#/components/schemas/ParametricsSeed'
        UniqueName:
          type: string
          description: >-
            A unique name that can be used in Urls and to get a Product.
            GetProduct and GetProductByUniqueName gets the same Product.
            MaxLength: 500.
        SubHeader:
          type: string
          description: 'Sub header from the Product in Storm. MaxLength: 255.'
        SubDescription:
          type: string
          description: 'Sub description from the Product in Storm. MaxLength: max.'
        Synonyms:
          type: string
          description: >-
            Synonyms from the Product in Storm. Can be used when indexing the
            product in any search engine. MaxLength: 500.
        StockDisplayBreakPoint:
          type: integer
          description: A value that can be used for display logic regarding OnHand.
          format: int32
          nullable: true
        IsSubscribable:
          type: boolean
          description: >-
            True if this product can be added in a Subscription. False
            otherwise.
        PopularityRank:
          type: integer
          description: >-
            A value used to sort items based on popularity. Lower values are
            more popular.
          format: int32
          nullable: true
        SortOrder:
          type: integer
          description: >-
            A custom sort order that can be used when the product item is in a
            list. The sort order is defined for the primary category of the
            product item.
          format: int32
          nullable: true
        Updated:
          type: string
          format: date-time
          nullable: true
      format: ProductItem2
    ProductItem2PagedList:
      type: object
      properties:
        ItemCount:
          type: integer
          description: >-
            Counts the number of products in the list. When fetched with a
            method that has filters, this value will be to total after the
            filters have been applied.
          format: int32
        Items:
          type: array
          items:
            $ref: '#/components/schemas/ProductItem2'
      format: ProductItem2PagedList
    ProductItemFilterValues:
      type: object
      properties:
        ProductId:
          type: integer
          description: Internal product id.
          format: int32
        GroupByKey:
          type: string
          description: >-
            A key that can be used to group items on product. It is equal to the
            ProductId for non-variants and equals 'v'+variantId for variants.
            Should only be used when fetching product lists as variants.
            MaxLength: int.
        CategoryId:
          type: integer
          description: Internal category id.
          format: int32
          nullable: true
        ManufacturerId:
          type: integer
          description: Internal manufacturer id.
          format: int32
          nullable: true
        FlagIdSeed:
          type: string
          description: 'A comma separated list of flag internal ids. MaxLength: max.'
        Price:
          type: number
          description: Best price excluding VAT.
          format: decimal
        VatRate:
          type: number
          description: >-
            A rate to multiply with price to get price inc VAT. 25% VAT equals a
            VatRate of 1.25.
          format: decimal
        OnHand:
          $ref: '#/components/schemas/OnHand'
        OnHandStore:
          $ref: '#/components/schemas/OnHand'
        OnHandSupplier:
          $ref: '#/components/schemas/OnHand'
        ParametricListSeed:
          type: string
          description: 'MaxLength: max.'
        ParametricMultipleSeed:
          type: string
          description: 'MaxLength: max.'
        ParametricValueSeed:
          type: string
          description: >-
            ParametricValueSeed contains a comma separated list of id-value
            pairs separated by colon. Ex: 4711:32,4712:5. Id is the ParametricId
            and Value is either a ListValueId, MultipleValueId or the actual
            value depending on the parametric type. Note that parametric values
            with string or html types are not included here since we cannot know
            if they contain any of the separators. Use ListParametricInfo to
            list all parametric info and ListParametricValues2 for all values as
            lookup when resolving parametric data. MaxLength: max.
      format: ProductItemFilterValues
    ProductItemPagedList:
      type: object
      properties:
        ItemCount:
          type: integer
          description: >-
            Counts the number of products in the list. If the list is fetched
            with AsVariants set to true ItemCount will still just count the
            number of products. Not items in the list. When fetched with a
            method that has filters, this value will be to total after the
            filters have been applied.
          format: int32
        Items:
          type: array
          items:
            $ref: '#/components/schemas/ProductItem'
      format: ProductItemPagedList
    ProductManufacturer:
      type: object
      properties:
        Id:
          type: integer
          description: Internal id of manufacturer.
          format: int32
        Name:
          type: string
          description: 'MaxLength: 255.'
        PartNo:
          type: string
          description: 'MaxLength: 50.'
        LogoPath:
          type: string
          description: 'MaxLength: 255. Obsolete! - Use ImageKey'
        LogoKey:
          type: string
          description: >-
            A unique id for the image at our image server. Url for images are
            formed like http://[client specific CDN]/{LogoKey}. Preset, height
            and width can be sent as parameters.
          format: guid
          nullable: true
        UniqueName:
          type: string
          description: >-
            A unique name that can be used in Urls and to get a Manufacturer.
            GetManufacturer and GetManufacturerByUniqueName gets the same
            Manufacturer. MaxLength: 255.
      format: ProductManufacturer
    ProductOnHand:
      type: object
      properties:
        ProductId:
          type: integer
          description: >-
            The product internal id for the current product/variant. If the
            entity is fetched by productId it will be that productId. If the
            product is fetched by partNo it will be the productId for that
            variant.
          format: int32
        Warehouses:
          type: array
          description: A list of warehouses with OnHand for the product.
          items:
            $ref: '#/components/schemas/Warehouse'
        Variants:
          type: array
          description: >-
            An optional list of ProductOnHand for all variants if fetched by
            productId. Null when fetched for a variant or a basket.
          items:
            $ref: '#/components/schemas/ProductOnHand'
      format: ProductOnHand
    ProductParametric:
      type: object
      properties:
        Name:
          type: string
          description: 'MaxLength: 50.'
        Value:
          type: string
          description: 'MaxLength: max. Obsolete! - Use Value2 with Uom'
        Id:
          type: integer
          description: Internal product parametric id.
          format: int32
        ValueId:
          type: integer
          description: >-
            Parametric value internal id if the parametric type is single list
            value.
          format: int32
          nullable: true
        Description:
          type: string
        ValueDescription:
          type: string
          description: 'MaxLength: max.'
        IsPrimary:
          type: boolean
        ValueIdSeed:
          type: string
          description: 'MaxLength: max.'
        Value2:
          type: string
          description: >-
            The parametric value, if not a ListValue or a MultiValue parametric.
            MaxLength: max.
        Uom:
          type: string
          description: 'The unit of measurement, if any. MaxLength: 50.'
        GroupId:
          type: integer
          description: Id of the parametric group.
          format: int32
        GroupName:
          type: string
          description: 'Name of the parametric group. MaxLength: 50.'
        SortOrder:
          type: integer
          description: >-
            Use this to sort the parametric. The value is fetched from the
            variant group type's sort order in the first place and then from the
            category's sort order for the parametric values.
          format: int32
        Code:
          type: string
          description: >-
            An external application specific code use to identify this
            Parametric. MaxLength: 50.
        IsHidden:
          type: boolean
          description: >-
            Indicates if the parametric is hidden or not. This can be used to
            hide parametrics that are only used in application logic. Only
            non-hidden parametrics should be displayed in the frontend.
      format: ProductParametric
    ProductPrice:
      type: object
      properties:
        Value:
          type: number
          description: >-
            The actual price value, excluding VAT. Multiply by VatRate to get
            the price inc VAT.
          format: decimal
        Recommended:
          type: number
          description: The rule based price from a priceList, excluding VAT, if specified.
          format: decimal
          nullable: true
        Catalog:
          type: number
          description: The original price, if specified.
          format: decimal
          nullable: true
        VatRate:
          type: number
          description: >-
            A rate to multiply with price to get price inc VAT. 25% VAT equals a
            VatRate of 1.25.
          format: decimal
        PriceListId:
          type: integer
          description: >-
            The priceList id for the price. If multiple priceLists are available
            then the best (lowest) price will be used.
          format: int32
        IsBuyable:
          type: boolean
          description: >-
            Indicates if the item is buyable or not. Will always be false if the
            status is closed. An exception will be thrown if IsBuyable is false
            and an attempt to buy the item is made. The property can be used to
            hide or show the buy-button.
        RecommendedQuantity:
          type: number
          description: >-
            Indicates the default value used as quantity when buying the
            product. If IsRecommendedQuantityFixed is true, only multiples of
            this quantity should be allowed.
          format: decimal
          nullable: true
        IsRecommendedQuantityFixed:
          type: boolean
          description: >-
            If this is set to true only multiples of RecommendedQuantity should
            be allowed.
        Standard:
          type: number
          description: The standard price, excluding VAT, if specified.
          format: decimal
          nullable: true
        ValueIncVat:
          type: number
          description: >-
            The actual price value including VAT calculated on the server side.
            Should be used to display prices including VAT.
          format: decimal
      format: ProductPrice
    ProductPriceQtyBreak:
      type: object
      properties:
        PartNo:
          type: string
          description: The part number for this product.
        QtyBreak:
          type: number
          description: The minimum quantity needed to purchase to receive the ProductPrice.
          format: decimal
        ProductPrice:
          $ref: '#/components/schemas/ProductPrice'
      format: ProductPriceQtyBreak
    ProductRelations:
      type: object
      properties:
        Id:
          type: integer
          description: This is the type internal id for the relation type
          format: int32
        Code:
          type: string
          description: This is the type external code for the relation type
        Name:
          type: string
          description: This is the name of the relation type
        Description:
          type: string
          description: This is the description of the relation type
        RelationsMetadata:
          type: array
          description: Indicates if the related items are product or variant specific
          items:
            $ref: '#/components/schemas/RelationMetadataItem'
        Relations:
          $ref: '#/components/schemas/ProductItemPagedList'
        VariantRelations:
          type: array
          description: This is a list of variant relations.
          items:
            $ref: '#/components/schemas/VariantRelations'
      format: ProductRelations
    PromotionProducts:
      type: object
      properties:
        PromotionId:
          type: integer
          description: This is the promotion internal id for which the Products are listed.
          format: int32
        EffectId:
          type: integer
          description: This is the effect internal id for which the Products are listed.
          format: int32
        Items:
          type: array
          description: >-
            This is the list of Products associated with the promotion and
            effect.
          items:
            $ref: '#/components/schemas/ProductItem'
      format: PromotionProducts
    RelationMetadataItem:
      type: object
      properties:
        Id:
          type: integer
          description: This is the Storm internal product id.
          format: int32
        PartNo:
          type: string
          description: This is the part number if variants are specified
        IsVariantSpecific:
          type: boolean
          description: True if relation is to specific variants.
      format: RelationMetadataItem
    Review:
      type: object
      properties:
        Id:
          type: integer
          description: >-
            The internal id of the review. Null or left out when creating new
            reviews.
          format: int32
          nullable: true
        ReferenceId:
          type: integer
          description: >-
            The internal product id of the review. Or if the review is for some
            other entity, then it is the entity Id.
          format: int32
        Name:
          type: string
          description: 'The name of the reviewer. MaxLength: 255.'
        Email:
          type: string
          description: 'The email address of the reviewer. MaxLength: 255.'
        Text:
          type: string
          description: 'The review text. MaxLength: max.'
        Url:
          type: string
          description: >-
            A Url to some external source referenced by the reviewer. MaxLength:
            255.
        ImagePath:
          type: string
          description: >-
            A Url to some external image uploaded by the reviewer. MaxLength:
            255.
        Score:
          type: number
          description: >-
            The review score, if scores are kept. It is up to the application to
            define the score range.
          format: decimal
        Date:
          type: string
          description: The date of the review.
          format: date-time
        Likes:
          type: integer
          description: >-
            Number of likes. See UpdateProductReviewLikes for information about
            how to update this.
          format: int32
        Dislikes:
          type: integer
          description: >-
            Number of dislikes. See UpdateProductReviewLikes for information
            about how to update this.
          format: int32
        IsPublished:
          type: boolean
          description: >-
            Shows if review is published. Applications can have new reviews to
            not be published and later after internal review on the content have
            it published.
          nullable: true
      format: Review
    SkuType:
      type: object
      properties:
        Id:
          type: integer
          description: The internal id of the sku type.
          format: int32
        Name:
          type: string
          description: 'The name of the sku type. MaxLength: 255.'
        Description:
          type: string
          description: 'The description of the sku type. MaxLength: max.'
        SortOrder:
          type: integer
          description: The sort order of the sku type.
          format: int32
        Group:
          $ref: '#/components/schemas/IdNameDescription'
      format: SkuType
    VariantAccessories:
      type: object
      properties:
        Id:
          type: integer
          description: This is the product id for the variant.
          format: int32
        Accessories:
          $ref: '#/components/schemas/ProductItemPagedList'
      format: VariantAccessories
    VariantItem:
      type: object
      properties:
        Id:
          type: integer
          description: The product internal id for this VariantItem.
          format: int32
        GroupByKey:
          type: string
          description: >-
            A key that group items on product. It is equal to the product id for
            non-variants and equals 'v'+variantId for variants. Should be used
            to correlate ProductItems with VariantItems. MaxLength: int.
        Name:
          type: string
          description: >-
            The Name of this VariantItem. Will be the same as the corresponding
            product if this is not a Variant. MaxLength: 255.
        StatusId:
          type: integer
          description: >-
            The status for this VariantItem. Valid values can be found in
            ListStatuses.
          format: int32
        TypeId:
          type: integer
          description: >-
            The sku type for this VariantItem. Valid values can be found in
            ListSkutypes.
          format: int32
        PartNo:
          type: string
          description: 'The partNo for this VariantItem. MaxLength: 50.'
        ManufacturerPartNo:
          type: string
          description: 'The manufacturer''s partNo for this VariantItem. MaxLength: 50.'
        ImageKey:
          type: string
          description: >-
            A unique id for the image at our image server. Url for images are
            formed like http://[client specific CDN]/{ImageKey}. Preset, height
            and width can be sent as parameters.
          format: guid
          nullable: true
        FlagIdSeed:
          type: string
          description: 'A comma separated list of flag internal ids. MaxLength: max.'
        Price:
          $ref: '#/components/schemas/ProductPrice'
        OnHand:
          $ref: '#/components/schemas/OnHand'
        OnHandStore:
          $ref: '#/components/schemas/OnHand'
        OnHandSupplier:
          $ref: '#/components/schemas/OnHand'
        Parametrics:
          $ref: '#/components/schemas/ParametricsSeed'
        AdditionalImageKeySeed:
          type: string
          description: >-
            Seed formatted as TypeId[1]:Guid[1], TypeId[2]:Guid[2],..,
            TypeId[n]:Guid[n]. MaxLength: max.
        EanCode:
          type: string
          description: 'The EAN code for this VariantItem. MaxLength: 50.'
        IsBuyable:
          type: boolean
          description: >-
            Indicates if the item is buyable or not. Will always be false if the
            status is closed. An exception will be thrown if IsBuyable is false
            and an attempt to buy the item is made. The property can be used to
            hide or show the buy-button.
        UnitOfMeasurement:
          type: string
          description: 'Short unit of measurement from Storm Admin. MaxLength: 50.'
        UnitOfMeasurementCount:
          type: number
          description: Unit of measurement count
          format: decimal
          nullable: true
        RecommendedQuantity:
          type: number
          description: >-
            Indicates the default value used as quantity when buying the
            product. If IsRecommendedQuantityFixed is true, only multiples of
            this quantity should be allowed.
          format: decimal
          nullable: true
        IsRecommendedQuantityFixed:
          type: boolean
          description: >-
            If this is set to true only multiples of RecommendedQuantity should
            be allowed.
        SubHeader:
          type: string
          description: >-
            Sub header from the Product in Storm. Only set if Product texts are
            variant unique. MaxLength: 255.
        SubDescription:
          type: string
          description: >-
            Sub description from the Product in Storm. Only set if Product texts
            are variant unique. MaxLength: max.
      format: VariantItem
    VariantRelations:
      type: object
      properties:
        Id:
          type: integer
          description: This is the product internal id for the variant
          format: int32
        RelationsMetadata:
          type: array
          description: Indicates if the related items are product or variant specific
          items:
            $ref: '#/components/schemas/RelationMetadataItem'
        Relations:
          $ref: '#/components/schemas/ProductItemPagedList'
      format: VariantRelations
    Warehouse:
      type: object
      properties:
        StoreId:
          type: integer
          description: >-
            The store internal id for the current store. Can be null if
            WarehouseId and LocationId are supplied.
          format: int32
          nullable: true
        WarehouseId:
          type: integer
          description: >-
            The internal id for the warehouse. Can be null if StoreId is
            supplied.
          format: int32
          nullable: true
        LocationId:
          type: integer
          description: >-
            The internal id for the warehouse location. Can be null if StoreId
            is supplied.
          format: int32
          nullable: true
        OnHand:
          $ref: '#/components/schemas/OnHand'
      format: Warehouse
    WarehouseInfo:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id for the warehouse.
          format: int32
        Type:
          type: integer
          description: >-
            The Type internal id for the warehouse. 1 for the standard
            warehouse, 2 if it is for a store.
          format: int32
        Code:
          type: string
          description: 'The external Code for the warehouse. MaxLength: 50.'
        Name:
          type: string
          description: 'The Name for the warehouse. MaxLength: 50.'
        IsStandard:
          type: boolean
          description: >-
            Indicates if the warehouse is standard or not. Obsolete! - Not used
            any more.
        Locations:
          type: array
          description: LocationInfos for the warehouse.
          items:
            $ref: '#/components/schemas/WarehouseInfoLocation'
      format: WarehouseInfo
    WarehouseInfoLocation:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id for the location.
          format: int32
        Code:
          type: string
          description: 'The external Code for the location. MaxLength: 50.'
        Name:
          type: string
          description: 'The Name for the location. MaxLength: 50.'
        IsStandard:
          type: boolean
          description: >-
            Indicates if the location is standard or not. Obsolete! - Not used
            any more.
        Stores:
          type: array
          description: A list of Stores for this location, if any.
          items:
            $ref: '#/components/schemas/WarehouseInfoStore'
      format: WarehouseInfoLocation
    WarehouseInfoStore:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id for the store.
          format: int32
        Code:
          type: string
          description: 'The external Code for the store. MaxLength: 50.'
        Name:
          type: string
          description: 'The Name for the store. MaxLength: 50.'
      format: WarehouseInfoStore
    ApplicationsCurrency:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Storm Id of the currency.
          format: int32
        Name:
          type: string
          description: 'The name of the currency. MaxLength: 50.'
        Code:
          type: string
          description: >-
            The Code of the currency. ISO 4217 is used. SEK for Swedish kronor.
            MaxLength: 3.
        Prefix:
          type: string
          description: 'The Prefix sign/code if available. MaxLength: 10.'
        Suffix:
          type: string
          description: 'The suffix sign/code if available. MaxLength: 10.'
      format: ApplicationsCurrency
    CustomersFlag:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id of the Flag.
          format: int32
        Name:
          type: string
          description: 'The Name of the Flag. MaxLength: 50.'
        Group:
          type: integer
          description: The GroupId of the Flag.
          format: int32
        IsSelected:
          type: boolean
          description: Indicates if the Flag is selected or not.
      format: CustomersFlag
    File:
      type: object
      properties:
        Id:
          type: integer
          description: The internal id of the File.
          format: int32
        Type:
          type: integer
          description: >-
            The type id of the File. Depending on context and Client. Can be
            used by Applications to differentiate files for different usages.
          format: int32
        Name:
          type: string
          description: 'The Name of the File. MaxLength: 50.'
        Description:
          type: string
          description: 'The Description of the File. MaxLength: max.'
        Key:
          type: string
          description: >-
            A unique id for the File at our image server. Url for images are
            formed like http://[client specific CDN]/{ImageKey}. Preset, height
            and width can be sent as parameters.
          format: guid
          nullable: true
      format: File
    IdNameDescription:
      type: object
      properties:
        Id:
          type: integer
          description: The internal Id of the Entity.
          format: int32
        Name:
          type: string
          description: 'The Name of the Entity. MaxLength: 50.'
        Description:
          type: string
          description: 'The Description of the Entity. MaxLength: 500.'
        ImageKey:
          type: string
          description: >-
            A unique id for the image at our image server. Url for images are
            formed like http://[client specific CDN]/{ImageKey}. Preset, height
            and width can be sent as parameters.
          format: guid
          nullable: true
        Code:
          type: string
          description: 'The Code of the Entity. MaxLength: 50.'
      format: IdNameDescription
    IdValue:
      type: object
      properties:
        Id:
          type: integer
          description: >-
            The internal Id of the Entity. This Id might be different in
            different tiers such as Stage and Production. Use Code if hard
            coding is required.
          format: int32
        Value:
          type: string
          description: 'The Value of the Entity. MaxLength: max.'
        Code:
          type: string
          description: >-
            The Code of the Entity, if existing. Use this value when hard coding
            is required. MaxLength: 255.
      format: IdValue
    ShoppingPromotion:
      type: object
      properties:
        Id:
          type: integer
          description: The internal id of the Promotion.
          format: int32
          nullable: true
        Name:
          type: string
          description: 'The Name of the Promotion. MaxLength: 255.'
        Header:
          type: string
          description: 'SubHeader from Storm. MaxLength: 255.'
        ShortDescription:
          type: string
          description: 'DescriptionHeader from Storm. MaxLength: 255.'
        Description1:
          type: string
          description: 'Description from Storm. MaxLength: max.'
        Description2:
          type: string
          description: 'SubDescription from Storm. MaxLength: max.'
        StartDate:
          type: string
          description: >-
            The StartDate of the Promotion, if any. Only valid promotions will
            be returned.
          format: date-time
          nullable: true
        EndDate:
          type: string
          description: >-
            The EndDate of the Promotion, if any. Only valid promotions will be
            returned.
          format: date-time
          nullable: true
        ImageKey:
          type: string
          description: >-
            A unique id for the image at our image server. Url for images are
            formed like http://[client specific CDN]/{ImageKey}. Preset, height
            and width can be sent as parameters.
          format: guid
          nullable: true
        RequirementSeed:
          type: string
          description: >-
            A comma separated list of fulfilled requirements for this promotion.
            MaxLength: max.
        DiscountCode:
          type: string
          description: >-
            Will contain the discountCode if the promotion has a discountCode
            requirement. MaxLength: max.
        IsExcludedFromPriceCalculation:
          type: boolean
          description: >-
            A value of true means the promotion was applied last an not included
            in any price calculations.
        AllowProductListing:
          type: boolean
          description: >-
            This flag can be checked to see whether the promotion allows listing
            of products from requirements. Use
            Products.ListProductsByPromotionRequirement to list products. Note
            that if this property is true and no product requirements exists, no
            products will be listed.
        Images:
          type: array
          description: >-
            A list of additional images files uploaded for the promotion. Images
            can be differentiated by using different types. See
            ListPromotionImageTypes for available types.
          items:
            $ref: '#/components/schemas/File'
        ProductFilters:
          type: array
          description: >-
            A list of productFilters for the promotion. Can be used to filter or
            fetch promotions matched by Products. match the products properties
            against the filter values Each ProductFilter must match all existing
            values and if any ProductFilter matches the promotion will be valid
            for that product.
          items:
            $ref: '#/components/schemas/ShoppingPromotionProductFilter'
        AppliedAmount:
          type: number
          description: >-
            Applied discount amount, excluding VAT, if fetched on
            AppliedPromotions property on the basket. In that case it will be
            the sum of all applied amounts on all Basket.Items. This value is
            rounded to two decimals.
          format: decimal
          nullable: true
        EffectSeed:
          type: string
          description: >-
            A comma separated list of applicable effects for this promotion.
            MaxLength: max.
        FreightDiscountPct:
          type: number
          description: >-
            FreightDiscountPct can be used to calculate external freight prices.
            The value is given as percentage as 100.00 for 100% discount. Only
            used for FreightDiscounts.
          format: decimal
          nullable: true
        IsStackable:
          type: boolean
          description: >-
            Promotion effect quantity or basket discount is multiplied with how
            many times requirement is fulfilled.
        AppliedAmountIncVat:
          type: number
          description: >-
            Applied discount amount, including VAT, for this Promotion on this
            BasketItem.
          format: decimal
          nullable: true
        ExclusivityType:
          type: integer
          description: >-
            ExclusivityType allows setting promotions as NotExclusive = 0,
            Exclusive = 1, or IgnoreExclusivity = 2.
          format: int32
      format: ShoppingPromotion
    ShoppingPromotionProductFilter:
      type: object
      properties:
        ManufacturerId:
          type: integer
          description: An optional Manufacturer internal id for filtered products.
          format: int32
          nullable: true
        CategorySeed:
          type: string
          description: 'An optional CategorySeed for filtered products. MaxLength: int.'
        TypeId:
          type: integer
          description: An optional SKU Type internal id for filtered products.
          format: int32
          nullable: true
        ProductId:
          type: integer
          description: An optional Product internal id for filtered products.
          format: int32
          nullable: true
        VariantProductId:
          type: integer
          description: >-
            An optional VariantProduct internal id for filtered products. Equal
            to use PartNo.
          format: int32
          nullable: true
        PartNo:
          type: string
          description: >-
            An optional PartNo for filtered products. Equal to use
            VariantProductId. MaxLength: 50.
        PricelistId:
          type: integer
          description: An optional pricelist internal id for filtered products.
          format: int32
          nullable: true
        FlagId:
          type: integer
          description: >-
            An optional Flag internal id for filtered products. Only set if
            flagId is inclusive.
          format: int32
          nullable: true
      format: ShoppingPromotionProductFilter
    IFilterItem:
      required:
        - __type
      type: object
      properties:
        __type:
          type: string
      format: IFilterItem
      discriminator:
        propertyName: __type
x-original-swagger-version: '2.0'
