# Shopify product reviews: `POST /v1/retail/shopify/products/reviews`

Cost: from 9 credits (9 for the product page, plus 2 for each further page of 20 reviews read (the default `max_reviews` of 50 holds at most 13). No reviews, an unknown product and failed requests are free). Docs: https://scrapercompany.com/docs/reference/shopify-reviews

Reviews from Judge.me or the store's own product-review markup on
the product page, or from schema.org Review markup when neither is
present. Reviewer emails are removed. Names are not returned. No
widget and no reviews is an empty list and is not billed. A widget
this route cannot read is 422 and is not billed. An unknown product
is 404.

Request body (JSON):

- `store` (string; required; min length 1, max length 300): Public store address, a domain or an https URL (allbirds.com).
- `market` (string | null; optional): Market code echoed on the answer. It does not change the currency the store publishes.
- `locale` (string | null; optional): Locale path prefix the store publishes, such as en or en-ca.
- `product` (string; required; min length 1, max length 400): Product handle or a product URL on this store.
- `max_reviews` (integer; optional; default 50; min 1, max 500): How many reviews to return. The first page costs 9 credits and each further page of 20 costs 2. Default 50 holds 13.
- `min_rating` (number | null; optional; min 1, max 5): Keep reviews at or above this rating.
- `max_rating` (number | null; optional; min 1, max 5): Keep reviews at or below this rating.
- `cursor` (string | null; optional; max length 2000): Opaque cursor from a previous page.

Base URL: `https://api.scrapercompany.com`. Auth: send your key in the `x-api-key` header. A failed request (4xx or 5xx) or an empty result costs 0 credits.

- [Full API reference as one Markdown file](https://scrapercompany.com/llms-full.txt)
- [OpenAPI spec](https://scrapercompany.com/openapi.json)
