# Query products of a contract This endpoint can be used for querying either all products or certain products by the 'customerProductId' or 'productId'. Endpoint: POST /api/v3.1/vendor/contracts/{contractId}/products/query Version: 0.0.7224 Security: BasicAuth, BearerAuth ## Path parameters: - `contractId` (string, required) Unique identifier of the contract Example: "qbcxvb" ## Request fields (application/json): - `pagination` (object, required) This model describes a step in a paginated endpoint. It consists of the start index, set to 0 for the first page. The next page starts at (previous start) + limit. Reasonable values for the limit parameter depend on the specific endpoint. - `pagination.start` (integer, required) - `pagination.limit` (integer, required) - `filter` (object) This class specifies a general query language, even though all fields are marked as optional, exactly one has to be specified. Please note that depending on the endpoint only a subset of the query language might be supported. Refer to the endpoint specific documentation to view the restrictions. - `filter.regex` (object) - `filter.regex.field` (string, required) - `filter.regex.pattern` (string, required) - `filter.in` (object) - `filter.in.query` (object, required) This class specifies a general query language, even though all fields are marked as optional, exactly one has to be specified. Please note that depending on the endpoint only a subset of the query language might be supported. Refer to the endpoint specific documentation to view the restrictions. - `filter.or` (array) - `filter.const` (boolean) - `filter.not` (object) This class specifies a general query language, even though all fields are marked as optional, exactly one has to be specified. Please note that depending on the endpoint only a subset of the query language might be supported. Refer to the endpoint specific documentation to view the restrictions. - `filter.oneOf` (object) - `filter.oneOf.values` (array, required) - `filter.lt` (object) - `filter.lt.value` (string, required) - `filter.gt` (object) - `filter.eq` (object) - `filter.and` (array) - `includeTags` (boolean) Whether to include tags in the response or not ## Response 200 fields (application/json): - `data` (array, required) - `data.name` (string, required) Name of the product. - `data.tags` (array, required) Additional information on this product. - `data.tags.doubleValue` (number) The double value depends on the decimal separator which has been provided during product import. - `data.tags.integerValue` (integer) The integer value of the tag. It's only defined when the consists solely of digits. - `data.tags.label` (string, required) The name of the tag. It can't be empty. - `data.tags.stringValue` (string, required) The text value of the tag. - `data.tags.booleanValue` (boolean) The boolean value of the tag. It's only set to true when the is "1" or "true". - `data.minPriceBoundary` (number) Maximum price which pricemonitor can recommend for the product. It won't recommend any price above this boundary. - `data.gtin` (number) GTIN of the product. Can be optionally. - `data.customerProductId` (string) The customer's id of the product. This field allows to link products in pricemonitor to products in the customer's system. - `data.id` (string, required) Id of the product in the pricemonitor. - `data.maxPriceBoundary` (number) Minimum price which pricemonitor can recommend for the product. It won't recommend any price below this boundary. - `data.referencePrice` (number, required) Some price that will be used as benchmark for certain components in pricemonitor.