WooCommerce Product Reviews API

Retrieve customer reviews on products

Documentation

Specifications

Schemas & Data

OpenAPI Specification

woocommerce-product-reviews-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: WooCommerce REST Cart Product Reviews API
  description: The WooCommerce REST API is the primary server-side interface for reading and writing WooCommerce store data programmatically. It follows REST conventions, uses JSON for all requests and responses, and is fully integrated with the WordPress REST API under the /wp-json/wc/v3/ namespace. The API covers products, product variations, product categories, product attributes, orders, order notes, order refunds, customers, coupons, tax rates, shipping zones, payment gateways, settings, webhooks, reports, and system status. Authentication uses Consumer Key and Consumer Secret pairs generated in the WooCommerce admin, transmitted over HTTPS via HTTP Basic Auth or OAuth 1.0a over plain HTTP.
  version: v3
  contact:
    name: WooCommerce Developer Support
    url: https://developer.woocommerce.com/docs/apis/rest-api/
  termsOfService: https://woocommerce.com/terms-conditions/
servers:
- url: https://example.com/wp-json/wc/v3
  description: Production Server (replace example.com with your store domain)
security:
- basicAuth: []
tags:
- name: Product Reviews
  description: Retrieve customer reviews on products
paths:
  /products/reviews:
    get:
      operationId: listStoreProductReviews
      summary: WooCommerce List Product Reviews
      description: Returns published product reviews. Can be filtered by product ID and star rating. Public endpoint requiring no authentication.
      tags:
      - Product Reviews
      parameters:
      - $ref: '#/components/parameters/page'
      - $ref: '#/components/parameters/per_page'
      - name: product_id
        in: query
        description: Filter reviews by product ID.
        required: false
        schema:
          type: integer
        example: 1
      - name: rating
        in: query
        description: Filter reviews by star rating (1-5).
        required: false
        schema:
          type: integer
          minimum: 1
          maximum: 5
        example: 1
      responses:
        '200':
          description: List of product reviews
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/StoreReview'
              examples:
                listStoreProductReviews200Example:
                  summary: Default listStoreProductReviews 200 response
                  x-microcks-default: true
                  value:
                  - id: 1
                    date_created: '2026-05-03T14:30:00Z'
                    product_id: 1
                    reviewer: string-value
                    review: string-value
                    rating: 1
                    verified: true
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  schemas:
    StoreReview:
      type: object
      description: A customer review on a product.
      properties:
        id:
          type: integer
          description: Review unique identifier.
          example: 1
        date_created:
          type: string
          format: date-time
          description: Date the review was submitted.
          example: '2026-05-03T14:30:00Z'
        product_id:
          type: integer
          description: ID of the reviewed product.
          example: 1
        reviewer:
          type: string
          description: Reviewer display name.
          example: string-value
        review:
          type: string
          description: Review text content.
          example: string-value
        rating:
          type: integer
          description: Star rating from 1 to 5.
          minimum: 1
          maximum: 5
          example: 1
        verified:
          type: boolean
          description: Whether the reviewer purchased the product.
          example: true
  parameters:
    page:
      name: page
      in: query
      description: Current page of the collection.
      required: false
      schema:
        type: integer
        minimum: 1
        default: 1
    per_page:
      name: per_page
      in: query
      description: Maximum number of items per page (maximum 100).
      required: false
      schema:
        type: integer
        minimum: 1
        maximum: 100
        default: 10
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
      description: HTTP Basic Auth using the WooCommerce Consumer Key as the username and Consumer Secret as the password over HTTPS. Over plain HTTP use OAuth 1.0a one-legged authentication instead.
externalDocs:
  description: WooCommerce REST API Documentation
  url: https://woocommerce.github.io/woocommerce-rest-api-docs/