Product reviews API
2 endpoints on 2 platforms return the same Review object. The buyer reviews of a product. A call costs from $0.0020 to $0.0200, each endpoint at its own price; a failed call is free.
Product reviews on each platform
One row per endpoint: what it is called, how much comes back in a call, and what a call costs.
The Review object
Every endpoint above returns these fields, with the same names and types.
idtextIDproduct_idtextID of the product it reviewstexttextText of the review; null when the buyer gave a rating and wrote nothingratingnumberThe buyer's rating of the product, out of 5published_attimeWhen it was writtenauthor.idtextReviewer's account IDauthor.nametextReviewer's display name, as the platform shows it (it may be masked)author.avatar_urllinkReviewer's avatarimageslist of linkAddresses of the pictures the buyer attachedvarianttextWhich variant was bought, as the platform words itWhich platform fills which field
A field an endpoint cannot give is listed in meta.unavailable on every answer, so a gap is never a surprise.
The same call on two platforms
Same parameter names, same paging, same answer. Only the path changes.
# TikTok curl -G "https://api.dataxapi.com/v1/tiktok/shop/products/reviews/list" \ --data-urlencode "id=1732488007561286228" \ -H "Authorization: Bearer $DATAXAPI_API_KEY" # Xiaohongshu (RedNote): one word changes curl -G "https://api.dataxapi.com/v1/xiaohongshu/shop/products/reviews/list" \ --data-urlencode "id=67bc0378a2e72600153d3ed1" \ -H "Authorization: Bearer $DATAXAPI_API_KEY"
// TikTok import { DataXAPI } from "@dataxapi/sdk"; const dx = new DataXAPI(); // reads DATAXAPI_API_KEY const result = await dx.tiktok.shop.products.reviews.list({ id: "1732488007561286228" }); console.log(result.data.items); // Xiaohongshu (RedNote): one word changes const other = await dx.xiaohongshu.shop.products.reviews.list({ id: "67bc0378a2e72600153d3ed1" }); console.log(other.data.items);
# TikTok from dataxapi import DataXAPI dx = DataXAPI() # reads DATAXAPI_API_KEY result = dx.tiktok.shop.products.reviews.list(id="1732488007561286228") print(result["data"]["items"]) # Xiaohongshu (RedNote): one word changes other = dx.xiaohongshu.shop.products.reviews.list(id="67bc0378a2e72600153d3ed1") print(other["data"]["items"])
# TikTok dataxapi call tiktok.shop.products.reviews.list id=1732488007561286228 # Xiaohongshu (RedNote): one word changes dataxapi call xiaohongshu.shop.products.reviews.list id=67bc0378a2e72600153d3ed1
{
"code": "ok",
"request_id": "bd6a422d-6eae-4338-9039-dc195ae09455",
"data": {
"items": [
{
"id": "7241346721132232026",
"product_id": "1711666895973198690",
"text": "Better quality than I expected, well packed.",
"rating": 5,
"published_at": "2025-11-08T18:07:48.019Z",
"author": {
"id": "6532506578034157649",
"name": "Hannah Weiss",
"avatar_url": "https://p16-sign-va.tiktokcdn.com/tos-maliva-avt-0068/2d964118424ccf033c18~c5_100x100.jpeg"
},
"images": [
"https://p16-sign-va.tiktokcdn.com/tos-maliva-p-0068/3cca00c14d044f99de43~c5_720x720.jpeg"
],
"variant": "Colour: Forest green"
},
// … 9 more
]
},
"page": {
"next_cursor": null,
"cursor_expires_at": null,
"has_more": false,
"returned": 10
},
"warnings": [],
"meta": {
"capability": "tiktok.shop.products.reviews.list",
"result_status": "complete",
"fetched_at": "2026-10-12T21:49:35.000Z",
"cached": false,
"replayed": false,
"unavailable": {},
"billing": {
"amount": "0.002",
"currency": "USD",
"balance_after": "9.998"
}
}
}TikTok Shop product reviews: From a response recorded 2026-10-12 21:49 UTC. Names, text and IDs are examples, and so are the links: none is the recorded one (the page shows no one's personal data); the figures are as recorded. Long lists are cut. The request ID, cursor and balance are made up.
Ready to use
Skills your AI can run on these endpoints, with what one run costs, and the objects every answer comes back as.
Products and reviews
“What is selling, and what do buyers say?”
The Review object
What every field means, which number each platform puts in it, and where it is missing.
Questions about the Product reviews API
Short answers. Each endpoint's page has its own limits and examples.
TikTok Shop product reviews API →How much does it cost?
$0.0020 a call on TikTok; $0.0200 a call on Xiaohongshu (RedNote). You are charged when data comes back; a failed call costs nothing. No subscription, no monthly minimum.
Does every platform fill every field?
No. 2 of the 10 fields are missing on at least one platform; the table on this page says which. A field an endpoint cannot give is named in meta.unavailable on every answer, never filled with a guess.
Do I need an account on the platform?
No. One DataXAPI key reads all 2 platforms. No platform account and no cookie.
Other data types
The same idea everywhere: one action, every platform that has it.
Start with one key.
207 endpoints on 21 platforms, from $0.0003 a call. Errors and timeouts are not charged.