> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cocartapi.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Products

> Gets a list of products with optional filtering and pagination.




## OpenAPI

````yaml api-reference/v2/openapi-v2-stable.yaml get /products
openapi: 3.0.3
info:
  title: CoCart - Cart API v2
  version: 4.6.0
  description: >
    CoCart REST API v2 for managing shopping carts, products, and store
    functionality.

    Compared to API v1, this version provides enhanced endpoints for cart
    operations, product management,

    and administrative functions with improved response structures and better
    error handling.
  termsOfService: http://cocartapi.com/terms-of-conditions-polar/
  contact:
    email: support@cocartapi.com
  license:
    name: GNU General Public License v3.0
    url: http://www.gnu.org/licenses/gpl-3.0.html
servers:
  - url: '{protocol}://{host}/wp-json/cocart/v2'
    description: API v2
    variables:
      protocol:
        enum:
          - http
          - https
        default: https
      host:
        default: example-store.com
        description: Your store domain
security: []
tags:
  - name: cart
    description: Operations for managing the shopping cart
  - name: cart-items
    description: Operations for managing cart items
  - name: cart-calculate
    description: Operations for calculating cart totals
  - name: products
    description: Operations for browsing and retrieving product information
  - name: product-attributes
    description: Operations for retrieving product attributes and attribute terms
  - name: product-categories
    description: Operations for browsing and filtering product categories
  - name: product-tags
    description: Operations for browsing and filtering product tags
  - name: product-reviews
    description: Operations for retrieving product reviews and ratings
  - name: product-variations
    description: Operations for retrieving variable product variations
  - name: admin-sessions
    description: Administrative operations for managing cart sessions
  - name: authentication
    description: Operations for user authentication
  - name: store
    description: Operations for retrieving store information and configuration
externalDocs:
  description: Find out more about CoCart API
  url: https://docs.cocartapi.com
paths:
  /products:
    get:
      tags:
        - products
      summary: Get products
      description: |
        Gets a list of products with optional filtering and pagination.
      parameters:
        - name: page
          in: query
          description: Current page of the collection.
          schema:
            type: integer
            default: 1
        - name: per_page
          in: query
          description: Maximum number of items to return per page.
          schema:
            type: integer
            default: 10
            maximum: 100
        - name: search
          in: query
          description: Limit results to those matching a search string.
          schema:
            type: string
        - name: category
          in: query
          description: Limit results to products in specific categories.
          schema:
            type: string
        - name: tag
          in: query
          description: Limit results to products with specific tags.
          schema:
            type: string
        - name: type
          in: query
          description: Limit results to products of specific type.
          schema:
            type: string
            enum:
              - simple
              - grouped
              - external
              - variable
        - name: featured
          in: query
          description: Limit results to featured products.
          schema:
            type: boolean
        - name: on_sale
          in: query
          description: Limit results to products on sale.
          schema:
            type: boolean
        - name: min_price
          in: query
          description: >-
            Limit results to products with price greater than or equal to this
            value.
          schema:
            type: string
        - name: max_price
          in: query
          description: >-
            Limit results to products with price less than or equal to this
            value.
          schema:
            type: string
        - name: stock_status
          in: query
          description: Limit results to products with specified stock status.
          schema:
            type: string
            enum:
              - instock
              - outofstock
              - onbackorder
        - name: orderby
          in: query
          description: Sort products by field.
          schema:
            type: string
            enum:
              - date
              - id
              - include
              - title
              - slug
              - price
              - popularity
              - rating
              - menu_order
              - alphabetical
              - reverse_alpha
              - relevance
              - rand
              - by_stock
              - review_count
              - on_sale_first
              - featured_first
              - price_asc
              - price_desc
              - sales
            default: date
        - name: order
          in: query
          description: Sort order.
          schema:
            type: string
            enum:
              - ASC
              - DESC
            default: DESC
        - name: slug
          in: query
          description: Limit result set to products with a specific slug.
          schema:
            type: string
        - name: after
          in: query
          description: >-
            Limit response to products created after a given ISO8601 compliant
            date.
          schema:
            type: string
            format: date-time
        - name: before
          in: query
          description: >-
            Limit response to products created before a given ISO8601 compliant
            date.
          schema:
            type: string
            format: date-time
        - name: sku
          in: query
          description: >-
            Limit result set to products with specific SKU(s). Use commas to
            separate.
          schema:
            type: string
        - name: hide_free
          in: query
          description: Limit result set to hide free products.
          schema:
            type: boolean
            default: false
        - name: category_operator
          in: query
          description: Operator to compare product category terms.
          schema:
            type: string
            enum:
              - in
              - not_in
              - and
            default: in
        - name: tag_operator
          in: query
          description: Operator to compare product tags.
          schema:
            type: string
            enum:
              - in
              - not_in
              - and
            default: in
        - name: brand
          in: query
          description: >-
            Limit result set to products assigned a set of brand IDs or slugs,
            separated by commas.
          schema:
            type: string
        - name: brand_operator
          in: query
          description: Operator to compare product brand terms.
          schema:
            type: string
            enum:
              - in
              - not_in
              - and
            default: in
        - name: show_reviews
          in: query
          description: Returns product reviews for all products or an individual product.
          schema:
            type: boolean
            default: false
        - name: return_variations
          in: query
          description: Returns all variations for variable products.
          schema:
            type: boolean
            default: false
        - name: attribute_relation
          in: query
          description: >-
            The logical relationship between attributes when filtering across
            multiple at once.
          schema:
            type: string
            enum:
              - in
              - and
            default: and
        - name: catalog_visibility
          in: query
          description: Determines if hidden or visible catalog products are shown.
          schema:
            type: string
            enum:
              - any
              - visible
              - catalog
              - search
              - hidden
            default: visible
        - name: rating
          in: query
          description: Limit result set to products with a certain average rating.
          schema:
            type: array
            items:
              type: integer
              enum:
                - 1
                - 2
                - 3
                - 4
                - 5
        - name: offset
          in: query
          description: Offset the result set by a specific number of items.
          schema:
            type: integer
        - name: include
          in: query
          description: Limit result set to specific IDs.
          schema:
            type: array
            items:
              type: integer
        - name: exclude
          in: query
          description: Ensure result set excludes specific IDs.
          schema:
            type: array
            items:
              type: integer
        - name: parent
          in: query
          description: Limit result set to those of particular parent IDs.
          schema:
            type: array
            items:
              type: integer
        - name: parent_exclude
          in: query
          description: Limit result set to exclude particular parent IDs.
          schema:
            type: array
            items:
              type: integer
      responses:
        '200':
          description: Products retrieved successfully.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ProductsResponse'
              example:
                products:
                  - id: 145
                    parent_id: 0
                    name: Wireless Bluetooth Headphones
                    type: simple
                    slug: wireless-bluetooth-headphones
                    permalink: >-
                      https://example-store.com/product/wireless-bluetooth-headphones/
                    sku: WBH-2024-BLU
                    description: >-
                      <p>Experience premium sound quality with our wireless
                      Bluetooth headphones.</p>
                    short_description: >-
                      <p>Premium wireless headphones with active noise
                      cancellation.</p>
                    dates:
                      created: '2024-03-15T10:30:00'
                      created_gmt: '2024-03-15T14:30:00'
                      modified: '2024-09-20T14:22:00'
                      modified_gmt: '2024-09-20T18:22:00'
                    featured: true
                    prices:
                      price: '18.00'
                      regular_price: '24.00'
                      sale_price: '18.00'
                      price_range: null
                      on_sale: true
                      date_on_sale:
                        from: '2024-09-01T00:00:00'
                        from_gmt: '2024-09-01T04:00:00'
                        to: '2024-12-31T23:59:59'
                        to_gmt: '2024-12-31T03:59:59'
                      currency:
                        currency_code: USD
                        currency_symbol: $
                        currency_minor_unit: 2
                        currency_decimal_separator: .
                        currency_thousand_separator: ','
                        currency_prefix: $
                        currency_suffix: ''
                    hidden_conditions:
                      virtual: false
                      downloadable: false
                      manage_stock: true
                      sold_individually: false
                      reviews_allowed: true
                      shipping_required: true
                    average_rating: '4.7'
                    review_count: 89
                    rating_count: 89
                    rated_out_of: '5'
                    images:
                      - id: 891
                        src:
                          thumbnail: >-
                            https://example-store.com/wp-content/uploads/2024/03/headphones-blue-150x150.jpg
                          medium: >-
                            https://example-store.com/wp-content/uploads/2024/03/headphones-blue-300x300.jpg
                          large: >-
                            https://example-store.com/wp-content/uploads/2024/03/headphones-blue-1024x1024.jpg
                          full: >-
                            https://example-store.com/wp-content/uploads/2024/03/headphones-blue.jpg
                        name: headphones-blue
                        alt: Wireless Bluetooth Headphones in Blue
                        position: 0
                        featured: true
                    categories:
                      - id: 15
                        name: Electronics
                        slug: electronics
                        rest_url: >-
                          https://example-store.com/wp-json/cocart/v2/products/categories/15
                    tags:
                      - id: 42
                        name: Wireless
                        slug: wireless
                        rest_url: >-
                          https://example-store.com/wp-json/cocart/v2/products/tags/42
                    attributes: []
                    default_attributes: []
                    variations: []
                    grouped_products: []
                    stock:
                      is_in_stock: true
                      stock_quantity: 87
                      stock_status: instock
                      backorders: 'no'
                      backorders_allowed: false
                      backordered: false
                      low_stock_amount: null
                    weight:
                      value: '0.75'
                      unit: kg
                    dimensions:
                      length: '8'
                      width: '7'
                      height: '3.5'
                      unit: cm
                    reviews: []
                    related:
                      - id: 156
                        name: Wireless Earbuds
                        permalink: https://example-store.com/product/wireless-earbuds/
                        price: '12.00'
                        add_to_cart:
                          text: Add to cart
                          description: Add to cart description
                          rest_url: >-
                            https://example-store.com/wp-json/cocart/v2/cart/add-item?id=156&quantity=1
                        rest_url: >-
                          https://example-store.com/wp-json/cocart/v2/products/156
                    upsells: []
                    cross_sells: []
                    total_sales: 342
                    external_url: ''
                    button_text: ''
                    add_to_cart:
                      text: Add to cart
                      description: Simple product
                      has_options: false
                      is_purchasable: true
                      purchase_quantity:
                        min_purchase: 1
                        max_purchase: 87
                      rest_url: >-
                        https://example-store.com/wp-json/cocart/v2/cart/add-item?id=145&quantity=1
                    meta_data: []
                page: 1
                total_pages: 5
                total_products: 42
        '400':
          description: Bad request - invalid parameters.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                code: cocart_invalid_parameter
                message: Invalid parameter provided.
                data:
                  status: 400
components:
  schemas:
    ProductsResponse:
      type: object
      description: CoCart v2 Products collection response with pagination
      properties:
        products:
          type: array
          description: Array of products
          items:
            $ref: '#/components/schemas/Product'
        page:
          type: integer
          description: Current page number
        total_pages:
          type: integer
          description: Total number of pages
        total_products:
          type: integer
          description: Total number of products
    ErrorResponse:
      type: object
      description: Standard error response structure.
      properties:
        code:
          type: string
          description: Machine-readable error code.
          example: cocart_invalid_parameter
        message:
          type: string
          description: Human-readable error message.
          example: Invalid parameter provided.
        data:
          type: object
          description: Additional error data.
          properties:
            status:
              type: integer
              description: HTTP status code.
              example: 400
            params:
              type: object
              description: Parameter-specific error details.
              additionalProperties: true
          additionalProperties: true
    Product:
      type: object
      description: CoCart v2 Product object with custom structure
      properties:
        id:
          type: integer
          description: Unique identifier for the product
        parent_id:
          type: integer
          description: Product parent ID
        name:
          type: string
          description: Product name
        type:
          type: string
          description: Product type
          enum:
            - simple
            - grouped
            - external
            - variable
        slug:
          type: string
          description: Product slug
        permalink:
          type: string
          description: Product URL
        sku:
          type: string
          description: Unique identifier (SKU)
        description:
          type: string
          description: Product description
        short_description:
          type: string
          description: Product short description
        dates:
          type: object
          description: Product dates
          properties:
            created:
              type: string
              format: date-time
              description: Date created in local time
            created_gmt:
              type: string
              format: date-time
              description: Date created in GMT
            modified:
              type: string
              format: date-time
              description: Date modified in local time
            modified_gmt:
              type: string
              format: date-time
              description: Date modified in GMT
        featured:
          type: boolean
          description: Whether the product is featured
        prices:
          type: object
          description: Product pricing information
          properties:
            price:
              type: string
              description: Current product price
            regular_price:
              type: string
              description: Product regular price
            sale_price:
              type: string
              description: Product sale price (empty string if not on sale)
            price_range:
              type: object
              description: >-
                Price range for variable products (null for non-variable
                products)
              nullable: true
            on_sale:
              type: boolean
              description: Whether the product is on sale
            date_on_sale:
              type: object
              description: Sale date information
              properties:
                from:
                  type: string
                  format: date-time
                  nullable: true
                  description: Sale start date in local time
                from_gmt:
                  type: string
                  format: date-time
                  nullable: true
                  description: Sale start date in GMT
                to:
                  type: string
                  format: date-time
                  nullable: true
                  description: Sale end date in local time
                to_gmt:
                  type: string
                  format: date-time
                  nullable: true
                  description: Sale end date in GMT
            currency:
              $ref: '#/components/schemas/Currency'
        hidden_conditions:
          type: object
          description: Product conditional flags
          properties:
            virtual:
              type: boolean
              description: Whether the product is virtual
            downloadable:
              type: boolean
              description: Whether the product is downloadable
            manage_stock:
              type: boolean
              description: Whether stock is managed at product level
            sold_individually:
              type: boolean
              description: Whether only one item can be bought in a single order
            reviews_allowed:
              type: boolean
              description: Whether reviews are allowed
            shipping_required:
              type: boolean
              description: Whether the product needs to be shipped
        average_rating:
          type: string
          description: Average rating
        review_count:
          type: integer
          description: Number of reviews
        rating_count:
          type: integer
          description: Number of ratings
        rated_out_of:
          type: string
          description: Maximum rating value (formatted)
        images:
          type: array
          description: Product images
          items:
            $ref: '#/components/schemas/ProductImage'
        categories:
          type: array
          description: Product categories
          items:
            $ref: '#/components/schemas/ProductCategory'
        tags:
          type: array
          description: Product tags
          items:
            $ref: '#/components/schemas/ProductTag'
        attributes:
          type: array
          description: Product attributes
          items:
            $ref: '#/components/schemas/ProductAttribute'
        default_attributes:
          type: array
          description: Default variation attributes
          items:
            $ref: '#/components/schemas/ProductDefaultAttribute'
        variations:
          type: array
          description: Full variation objects (not just IDs)
          items:
            $ref: '#/components/schemas/ProductVariation'
        grouped_products:
          type: array
          description: Grouped product IDs
          items:
            type: integer
        stock:
          type: object
          description: Stock information
          properties:
            is_in_stock:
              type: boolean
              description: Whether the product is in stock
            stock_quantity:
              type: integer
              nullable: true
              description: Stock quantity (null if not managing stock)
            stock_status:
              type: string
              description: Stock status
              enum:
                - instock
                - outofstock
                - onbackorder
            backorders:
              type: string
              description: If managing stock, this controls if backorders are allowed
              enum:
                - 'no'
                - notify
                - 'yes'
            backorders_allowed:
              type: boolean
              description: Whether backorders are allowed
            backordered:
              type: boolean
              description: Whether the product is on backorder
            low_stock_amount:
              type: integer
              nullable: true
              description: Low stock threshold amount
        weight:
          type: object
          description: Product weight
          properties:
            value:
              type: string
              nullable: true
              description: Weight value
            unit:
              type: string
              description: Weight unit (kg, g, lbs, oz, etc.)
        dimensions:
          type: object
          description: Product dimensions
          properties:
            length:
              type: string
              nullable: true
              description: Length value
            width:
              type: string
              nullable: true
              description: Width value
            height:
              type: string
              nullable: true
              description: Height value
            unit:
              type: string
              description: Dimension unit (cm, m, in, etc.)
        reviews:
          type: array
          description: Product reviews (populated when show_reviews parameter is true)
          items:
            $ref: '#/components/schemas/ProductReview'
        related:
          type: array
          description: Related products with basic information
          items:
            $ref: '#/components/schemas/ConnectedProduct'
        upsells:
          type: array
          description: Upsell products with basic information
          items:
            $ref: '#/components/schemas/ConnectedProduct'
        cross_sells:
          type: array
          description: Cross-sell products with basic information
          items:
            $ref: '#/components/schemas/ConnectedProduct'
        total_sales:
          type: integer
          description: Total number of sales
        external_url:
          type: string
          description: External product URL (for external product type)
        button_text:
          type: string
          description: External product button text (for external product type)
        add_to_cart:
          type: object
          description: Add to cart information (CoCart-specific)
          properties:
            text:
              type: string
              description: Add to cart button text
            description:
              type: string
              description: Add to cart description
            has_options:
              type: boolean
              description: Whether the product has options
            is_purchasable:
              type: boolean
              description: Whether the product is purchasable
            purchase_quantity:
              type: object
              description: Purchase quantity limits
              properties:
                min_purchase:
                  type: integer
                  description: Minimum purchase quantity
                max_purchase:
                  type: integer
                  description: Maximum purchase quantity allowed
            rest_url:
              type: string
              description: REST URL for adding this product to cart
        meta_data:
          type: array
          description: Meta data
          items:
            type: object
            properties:
              key:
                type: string
              value:
                type: string
    Currency:
      type: object
      properties:
        currency_code:
          type: string
          description: Currency code.
        currency_symbol:
          type: string
          description: Currency symbol.
        currency_symbol_pos:
          type: string
          description: Currency symbol position.
        currency_minor_unit:
          type: integer
          description: Currency minor unit.
        currency_decimal_separator:
          type: string
          description: Currency decimal separator.
        currency_thousand_separator:
          type: string
          description: Currency thousand separator.
        currency_prefix:
          type: string
          description: Currency prefix.
        currency_suffix:
          type: string
          description: Currency suffix.
    ProductImage:
      type: object
      description: CoCart v2 Product Image with multiple size URLs
      properties:
        id:
          type: integer
          description: Image ID
        src:
          type: object
          description: Image URLs in different sizes
          additionalProperties:
            type: string
            description: URL for specific image size (thumbnail, medium, large, full, etc.)
        name:
          type: string
          description: Image name
        alt:
          type: string
          description: Image alternative text
        position:
          type: integer
          description: Image position in gallery
        featured:
          type: boolean
          description: Whether this is the featured image
    ProductCategory:
      type: object
      description: CoCart v2 Product Category
      properties:
        id:
          type: integer
          description: Category ID
        name:
          type: string
          description: Category name
        slug:
          type: string
          description: Category slug
        rest_url:
          type: string
          description: REST URL for this category
    ProductTag:
      type: object
      description: CoCart v2 Product Tag
      properties:
        id:
          type: integer
          description: Tag ID
        name:
          type: string
          description: Tag name
        slug:
          type: string
          description: Tag slug
        rest_url:
          type: string
          description: REST URL for this tag
    ProductAttribute:
      type: object
      properties:
        id:
          type: integer
          description: Attribute ID.
        name:
          type: string
          description: Attribute name.
        position:
          type: integer
          description: Attribute position.
        visible:
          type: boolean
          description: >-
            Define if the attribute is visible on the "Additional information"
            tab in the product's page.
        variation:
          type: boolean
          description: Define if the attribute can be used as variation.
        options:
          type: array
          description: List of available term names of the attribute.
          items:
            type: string
    ProductDefaultAttribute:
      type: object
      properties:
        id:
          type: integer
          description: Attribute ID.
        name:
          type: string
          description: Attribute name.
        option:
          type: string
          description: Selected attribute term name.
    ProductVariation:
      type: object
      description: >
        CoCart v2 Product Variation object. Variations use the same structure as
        Product objects,

        but with the following fields removed: type, short_description,
        hidden_conditions.reviews_allowed,

        average_rating, review_count, rating_count, rated_out_of, reviews,
        default_attributes,

        variations, grouped_products, related, upsells, cross_sells,
        external_url, button_text,

        and add_to_cart.has_options.
      properties:
        id:
          type: integer
          description: Unique identifier for the variation
        parent_id:
          type: integer
          description: Product parent ID (the variable product this variation belongs to)
        name:
          type: string
          description: Variation name
        slug:
          type: string
          description: Variation slug
        permalink:
          type: string
          description: Variation URL
        sku:
          type: string
          description: Unique identifier (SKU)
        description:
          type: string
          description: Variation description
        dates:
          type: object
          description: Variation dates
          properties:
            created:
              type: string
              format: date-time
              description: Date created in local time
            created_gmt:
              type: string
              format: date-time
              description: Date created in GMT
            modified:
              type: string
              format: date-time
              description: Date modified in local time
            modified_gmt:
              type: string
              format: date-time
              description: Date modified in GMT
        featured:
          type: boolean
          description: Whether the variation is featured
        prices:
          type: object
          description: Variation pricing information
          properties:
            price:
              type: string
              description: Current variation price
            regular_price:
              type: string
              description: Variation regular price
            sale_price:
              type: string
              description: Variation sale price (empty string if not on sale)
            price_range:
              type: object
              description: Price range (null for variations)
              nullable: true
            on_sale:
              type: boolean
              description: Whether the variation is on sale
            date_on_sale:
              type: object
              description: Sale date information
              properties:
                from:
                  type: string
                  format: date-time
                  nullable: true
                  description: Sale start date in local time
                from_gmt:
                  type: string
                  format: date-time
                  nullable: true
                  description: Sale start date in GMT
                to:
                  type: string
                  format: date-time
                  nullable: true
                  description: Sale end date in local time
                to_gmt:
                  type: string
                  format: date-time
                  nullable: true
                  description: Sale end date in GMT
            currency:
              $ref: '#/components/schemas/Currency'
        hidden_conditions:
          type: object
          description: Variation conditional flags (note reviews_allowed is not present)
          properties:
            virtual:
              type: boolean
              description: Whether the variation is virtual
            downloadable:
              type: boolean
              description: Whether the variation is downloadable
            manage_stock:
              type: boolean
              description: Whether stock is managed at variation level
            sold_individually:
              type: boolean
              description: Whether only one item can be bought in a single order
            shipping_required:
              type: boolean
              description: Whether the variation needs to be shipped
        images:
          type: array
          description: Variation images
          items:
            $ref: '#/components/schemas/ProductImage'
        categories:
          type: array
          description: Product categories (inherited from parent)
          items:
            $ref: '#/components/schemas/ProductCategory'
        tags:
          type: array
          description: Product tags (inherited from parent)
          items:
            $ref: '#/components/schemas/ProductTag'
        attributes:
          type: array
          description: Variation attributes
          items:
            $ref: '#/components/schemas/ProductAttribute'
        stock:
          type: object
          description: Stock information
          properties:
            is_in_stock:
              type: boolean
              description: Whether the variation is in stock
            stock_quantity:
              type: integer
              nullable: true
              description: Stock quantity (null if not managing stock)
            stock_status:
              type: string
              description: Stock status
              enum:
                - instock
                - outofstock
                - onbackorder
            backorders:
              type: string
              description: If managing stock, this controls if backorders are allowed
              enum:
                - 'no'
                - notify
                - 'yes'
            backorders_allowed:
              type: boolean
              description: Whether backorders are allowed
            backordered:
              type: boolean
              description: Whether the variation is on backorder
            low_stock_amount:
              type: integer
              nullable: true
              description: Low stock threshold amount
        weight:
          type: object
          description: Variation weight
          properties:
            value:
              type: string
              nullable: true
              description: Weight value
            unit:
              type: string
              description: Weight unit (kg, g, lbs, oz, etc.)
        dimensions:
          type: object
          description: Variation dimensions
          properties:
            length:
              type: string
              nullable: true
              description: Length value
            width:
              type: string
              nullable: true
              description: Width value
            height:
              type: string
              nullable: true
              description: Height value
            unit:
              type: string
              description: Dimension unit (cm, m, in, etc.)
        total_sales:
          type: integer
          description: Total number of sales for this variation
        add_to_cart:
          type: object
          description: Add to cart information (note has_options is not present)
          properties:
            text:
              type: string
              description: Add to cart button text
            description:
              type: string
              description: Add to cart description
            is_purchasable:
              type: boolean
              description: Whether the variation is purchasable
            purchase_quantity:
              type: object
              description: Purchase quantity limits
              properties:
                min_purchase:
                  type: integer
                  description: Minimum purchase quantity
                max_purchase:
                  type: integer
                  description: Maximum purchase quantity allowed
            rest_url:
              type: string
              description: REST URL for adding this variation to cart
        meta_data:
          type: array
          description: Meta data
          items:
            type: object
            properties:
              key:
                type: string
              value:
                type: string
    ProductReview:
      type: object
      properties:
        id:
          type: integer
          description: Unique identifier for the resource.
        date_created:
          type: string
          format: date-time
          description: The date the review was created.
        date_created_gmt:
          type: string
          format: date-time
          description: The date the review was created, as GMT.
        product_id:
          type: integer
          description: Unique identifier for the product that the review belongs to.
        status:
          type: string
          description: Status of the review.
        reviewer:
          type: string
          description: Name of the reviewer.
        reviewer_email:
          type: string
          description: Email of the reviewer.
        review:
          type: string
          description: The content of the review.
        rating:
          type: integer
          description: Review rating (0 to 5).
        verified:
          type: boolean
          description: Shows if the reviewer bought the product or not.
    ConnectedProduct:
      type: object
      description: CoCart v2 Connected Product (used for related, upsells, cross-sells)
      properties:
        id:
          type: integer
          description: Product ID
        name:
          type: string
          description: Product name
        permalink:
          type: string
          description: Product URL
        price:
          type: string
          description: Product price
        add_to_cart:
          type: object
          description: Add to cart information
          properties:
            text:
              type: string
              description: Add to cart button text
            description:
              type: string
              description: Add to cart description
            rest_url:
              type: string
              description: REST URL for adding this product to cart
        rest_url:
          type: string
          description: REST URL for this product

````