/v1/call/xiaohongshu.product_reviewsPreviewXiaohongshu (RedNote) product reviews API
Only on Xiaohongshu.
The Xiaohongshu (RedNote) product reviews API returns the first page of buyers' reviews of a product of Xiaohongshu's shop by the product's ID: text, rating, variant bought, pictures, likes. One call costs 12 credits ($0.024 to $0.04 depending on the pack); failed calls are free. Call it over HTTP or from your AI client over MCP. Last tested 2026-10-17.
Last updated:
Request and response
curl https://api.socialtoai.com/v1/call/xiaohongshu.product_reviews \ -H "Authorization: Bearer $SOCIALTOAI_KEY" \ -H "Content-Type: application/json" \ -d '{ "id": "67bc0378a2e72600153d3ed1" }'import osimport requestsresponse = requests.post( "https://api.socialtoai.com/v1/call/xiaohongshu.product_reviews", headers={"Authorization": f"Bearer {os.environ['SOCIALTOAI_KEY']}"}, json={ "id": "67bc0378a2e72600153d3ed1", },)print(response.json())# Connected over MCP? Ask in plain words.Use the Xiaohongshu product reviews interface (xiaohongshu.product_reviews) with id: 67bc0378a2e72600153d3ed1.# Your AI calls the call tool with:{ "id": "67bc0378a2e72600153d3ed1"}{ "op": "xiaohongshu.product_reviews", "platform": "xiaohongshu", "status": "ok", "items": [ { "platform": "xiaohongshu", "id": "…", "ref": null, "approx": [], "type": "entry", "entry_type": "review", "title": null, "url": null, "rank": null, "heat": null, "fields": { "product_id": null, "text": "…", "rating": 5, "published_at": null, "author": { "label": "anonymous_1" }, "images": ["https://example.com/…", "https://example.com/…"], "variant": "…" } } ], "unavailable": ["fields.product_id", "fields.published_at"], "page": { "has_more": false }, "cost_credits": 12}- entry_type
- review
- product_id
null- text
- …
- rating
- 5
- published_at
null- variant
- …
Names and text were removed from the sample; the numbers are as recorded.
1 parameter.
All required.
Send them as a JSON body with POST. Your key goes in the Authorization header, never in the URL.
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
| id | string | Required | — | Product ID, 24 hexadecimal characters |
Where to get what you send.
idProduct ID, 24 hexadecimal characters (e.g. 67bc0378a2e72600153d3ed1)
Every item these return carries its ref; send it as it is:
product_searchProduct search
The fields of each item.
What Xiaohongshu cannot give is marked.
| Field | Type | Meaning |
|---|---|---|
| items[].title | string | The entry's title or name. |
| items[].url | string | A link that opens it; null where the platform's list has none. |
| items[].rank | integer | Position on a board, from 1. |
| items[].heat | integer | The platform's heat score. |
| items[].fields.product_id | stringalways null | The product the review is about. |
| items[].fields.text | string | The review itself. |
| items[].fields.rating | number | The rating given. |
| items[].fields.published_at | stringalways null | When it was posted, ISO 8601 in UTC. |
| items[].fields.author.label | string | An anonymous label, stable within one response. Whoever wrote it is never named. |
| items[].fields.images | string[] | Image addresses. |
| items[].fields.variant | string | The variant that was bought. |
nullFields Xiaohongshu cannot giveRead null as “Xiaohongshu did not give this”, not as zero. These are always null on this call:
fields.product_idThe product the review is about.fields.published_atWhen it was posted, ISO 8601 in UTC.
Every item also has platform, id, ref, approx and type; the response around the items is the same on every call. Response format
What to expect.
1 call per second per key, 5 after a purchase; going over is not charged. Rate limits
A failed call costs 0 credits and is never retried on its own. Error codes
Once connected over MCP, these questions use it.
Get the first page of buyers' reviews of a product of Xiaohongshu's shop by the product's ID: 67bc0378a2e72600153d3ed1.
12 creditscall {"op":"xiaohongshu.product_reviews","id":"67bc0378a2e72600153d3ed1"}Search the products of Xiaohongshu's shop by terms: 防晒霜, then for the first 3: get the first page of buyers' reviews of a product of Xiaohongshu's shop by the product's ID.
48 creditscall {"op":"xiaohongshu.product_search","query":"防晒霜"}call {"op":"xiaohongshu.product_reviews","id":"<ref>"} × 3
The interface of the same name on other platforms.
All platforms and prices/v1/call/xiaohongshu.product_reviews{ "id": "67bc0378a2e72600153d3ed1" }12 creditsper call