# How do I collect Xiaohongshu shop product prices and buyer reviews?

> Pull competing products' prices in yuan and buyer reviews from the Xiaohongshu shop (小红书商城) by keyword, what the shop does not show, and the cost.

Canonical page: https://okdata.online/answers/xiaohongshu-shop-products-reviews/

**Short answer: **Search the Xiaohongshu shop by keyword, 20 products with current and original prices in yuan for $0.02 a page, then fetch each product's first page of buyer reviews for $0.02. Prices plus reviews in two sort orders for 30 competing products cost $1.24.

A brand selling a portable coffee maker in China is deciding whether to list it in the Xiaohongshu shop. Before it commits, it wants two things about the 30 listings already there: the spread of prices, and what buyers write in their reviews. Scrolling the app for an afternoon gives an impression. A table gives numbers you can put in front of the team.

## Two endpoints

- [Xiaohongshu shop product search](/apis/xiaohongshu/shop/products/search/) takes a keyword, as a buyer would type it, and returns 20 products a page: title, current and original price in yuan, image and shop. The shop does not show units sold as a number, so `sold` is null.
- [Xiaohongshu shop product reviews](/apis/xiaohongshu/shop/products/reviews/list/) takes the 24-character product ID from the search and returns buyers' stars, text, the variant they bought, their photos and likes. The app only serves the first page, about 12 reviews, so there is no cursor to follow.

One trick doubles what you get: ask once with `sort=relevance` and once with `sort=latest`. The two first pages overlap only partly, and the latest reviews show whether a recent batch went wrong.

## What it costs

| Job | Calls | Cost |
|---|---|---|
| 2 search pages, keep the 30 closest products | 2 | $0.04 |
| Reviews by relevance for 30 products | 30 | $0.60 |
| Latest reviews for the same 30 | 30 | $0.60 |
| Total | 62 | $1.24 |

## Code

```python
import os, requests

API = "https://api.okdata.online"
H = {"Authorization": f"Bearer {os.environ['OKDATA_API_KEY']}"}

def get(path, **params):
    body = requests.get(API + path, headers=H, params=params, timeout=60).json()
    if body["code"] != "ok":
        raise RuntimeError(f"{body['code']}: {body['message']}")
    return body["data"]

products = get("/v1/xiaohongshu/shop/products/search", query="便携咖啡机")["items"]
for p in products[:30]:
    seen = {}
    for order in ("relevance", "latest"):
        for r in get("/v1/xiaohongshu/shop/products/reviews/list", id=p["id"], sort=order)["items"]:
            seen[r["id"]] = r
    low = [r["text"] for r in seen.values() if (r["rating"] or 5) <= 3]
    print(p["title"][:30], p["price"], p["original_price"], len(seen), "reviews,", len(low), "of 3 stars or less")
```

## What the shop does not give you

- **Depth per product.** Two short pages per product show the complaints that repeat across 30 products. They will not show everything said about one.
- **Sales.** No units sold. For a demand signal, count how many notes mention the product and how they are liked, with [Xiaohongshu note search](/apis/xiaohongshu/notes/search/).
- **Checkout prices.** The price is what the listing shows; coupons and store discounts at checkout may bring it lower.
- **Reviewer identity.** Names are masked by the shop, and that is all you get.

## Other ways

For your own store, the merchant backend (千帆) has far more: orders, traffic and every review. On Xiaohongshu most product talk happens in notes, so pair this with [note comments](/apis/xiaohongshu/notes/comments/list/) for the unfiltered version. Tmall and JD carry many more reviews per product if those are your channels; this catalog does not cover them. Doing it by hand is fine for five products. For the full workflow see [product research](/solutions/product-research/), and for brand sentiment, [word of mouth](/solutions/word-of-mouth/).

## Endpoints used

- [Xiaohongshu shop product search](https://okdata.online/apis/xiaohongshu/shop/products/search/) `xiaohongshu.shop.products.search`: $0.02 per call · about 20 products per page
- [Xiaohongshu shop product reviews](https://okdata.online/apis/xiaohongshu/shop/products/reviews/list/) `xiaohongshu.shop.products.reviews.list`: $0.02 per call · about 12 reviews per page

Updated 2026-11-12
