get:
  tags:
    - All Resources
    - Products
  summary: 'Search for ProductVersions'
  operationId: product_versions.search
  description: >-
    Resource route for getting a list of `ProductVersion`
    with filtering based on provided parameters.

    A Product Version is a group of Products that contain the same contents on different Configurations.
    Configurations include formats like cassette, vinyl, CD, digital audio, etc.
    A Product Version typically contains between 1 and <10 Products.

    A Product Version is mostly synonymous with a Product Family. When users are discussing a Product Family,
    they typically are referring to a Product Version that is the head of the Product Family.

    At least one identifying parameter must be provided when querying this endpoint
    (e.g.: `product_family_no`, `product_id, `project_id`, or `rep_owner_key_array`).
  security:
    - bearerAuth: []
  parameters:
    - $ref: '../parameters/is_product_family_head.yaml'
    - $ref: '../parameters/product_family_no.yaml'
    - $ref: '../parameters/product_id.yaml'
    - $ref: '../parameters/project_id.yaml'
    - $ref: '../parameters/rep_owner_key_array.yaml'
    - $ref: '../parameters/config_cat_key.yaml'
    - $ref: '../parameters/config_key.yaml'
    - $ref: '../parameters/limit.yaml'
    - $ref: '../parameters/offset.yaml'
    - $ref: '../parameters/sort_by_product_versions.yaml'
    - $ref: '../parameters/sort_order.yaml'
  responses:
    200:
      $ref: '../responses/ProductVersionsResponse.yaml'
    400:
      $ref: '../responses/InvalidInput.yaml'
    401:
      $ref: '../responses/Unauthorized.yaml'
    500:
      $ref: '../responses/InternalError.yaml'