# Parametric Search for Product Parts

Search for product parts within a specific product using parametric attributes.

Endpoint: POST /product-parts/search
Version: 1.2.0
Security: ApiKeyAuth

## Request fields (application/json):

  - `productId` (string, required)
    The product identifier to search within (required).
    Example: RA2A1

  - `limit` (integer)
    The number of results to return (default 10).

  - `offset` (integer)
    The page number for pagination (default 0). This is multiplied by limit to get the actual offset.

  - `filters` (array)
    Array of parametric attribute filters.

  - `filters.productPartAttributeId` (string, required)
    The attribute identifier to filter by.
    Example: field__segment_lcd_controller

  - `filters.values` (array)
    Values to match (OR operation within this array).
    Example: ["Yes","Available"]

  - `filters.operator` (string)
    Comparison operator for numeric values.
    Enum: "eq", "gt", "gte", "lt", "lte", "range"

  - `filters.min` (number)
    Minimum value for range operator.

  - `filters.max` (number)
    Maximum value for range operator.

## Response 200 fields (application/json):

  - `data` (array)

  - `data.orderableId` (string)
    Orderable product part identifier.

  - `data.genericId` (string)
    Generic product identifier.

  - `data.status` (string)
    Part status.

  - `data.parametricAttributes` (array)
    Array of parametric attribute objects.

  - `data.parametricAttributes.productPartAttributeId` (string)

  - `data.parametricAttributes.attributeValues` (array)

  - `data.parametricAttributes.attributeName` (string)

  - `data.parametricAttributes.href` (string)

  - `data.href` (string)
    URL to the full product part details.

  - `pagination` (object)

  - `pagination.offset` (integer)
    The actual offset used (page * limit)

  - `pagination.limit` (integer)
    The number of items per page

  - `pagination.total` (integer)
    Total number of items matching the search

  - `pagination.has_more` (boolean)
    Whether there are more items available

  - `filters` (object)
    The filters that were applied.

## Response 400 fields (application/json):

  - `error` (string)

## Response 404 fields (application/json):

  - `error` (string)

## Response 500 fields (application/json):

  - `error` (string)

