TikTok Shop Product Reviews API
Read a US TikTok Shop product's public reviews: rating, date, verified purchase and text.
- 1 credit per call
- Failed calls are free
- Updated
- tiktok.shop.reviews
{ "product_id": "1729587769570529799", "result_count": 5, "reviews": [ { "is_incentivized_review": false, "is_verified_purchase": true, "review_id": "7661003044570531597", "review_rating": 5, "review_text": "Son muy buenas las recomiendo demasiado 👌", "review_time": "1783716291705", "sku_id": "1729587788239049223" }, { "is_incentivized_review": false, "is_verified_purchase": true, "review_id": "7609775675609335565", "review_rating": 1, "review_text": "Estás goli no son iguales alas ke eh comprado estás están feas secas y más pequeñas kisas por eso dieron 6 botes x la compra de tres no me …", "review_time": "1771789010197", "sku_id": "1729587788239049223" } ]}
| # | Is incentivized review | Is verified purchase | Review rating | Review text | Review time | Review id | Sku id |
|---|---|---|---|---|---|---|---|
| 1 | false | true | 5 | Son muy buenas las recomiendo demasiado 👌 | 1783716291705 | 7661003044570531597 | 1729587788239049223 |
| 2 | false | true | 1 | Estás goli no son iguales alas ke eh comprado estás están feas … | 1771789010197 | 7609775675609335565 | 1729587788239049223 |
| 3 | false | true | 5 | Llevo unos tres meses utilizando este producto y la verdad de l… | 1742602611642 | 7484421114057049902 | 1729587788239049223 |
| 4 | false | true | 5 | Me acaban de llegar y apenas hoy voy aprobar y después de unas … | 1742245073373 | 7482885529681151787 | 1729587788239049223 |
| 5 | false | true | 5 | Here are the pictures! Thank you! I’ve been taking these for ye… | 1781796259662 | 7652756482226177805 | 1729587788239049223 |
What you send
The input
object of the request, with every field the endpoint accepts.
| Field | Type | Required | What it does | Example |
|---|---|---|---|---|
| url | string | yes | Public URL of the page to fetch. | https://www.tiktok.com/shop/pdp/172958776957052… |
| limit | integer | no | Maximum reviews to return from the product page's public review data. From 1 to 100. Default: 20. |
20 |
| region | string | no | Allowed values: US. Default: US. |
US |
Fields it returns
What each record in the response holds, with the values from the sample above.
| Field | Type | What it is | Example |
|---|---|---|---|
| reviews[].is_incentivized_review | boolean | Whether the reviewer was given something for the review. | false |
| reviews[].is_verified_purchase | boolean | Whether TikTok Shop marks it as a verified purchase. | true |
| reviews[].review_id | string | TikTok Shop's ID for the review. | 7661003044570531597 |
| reviews[].review_rating | integer | The star rating the reviewer gave. | 5 |
| reviews[].review_text | string | What the reviewer wrote. | Son muy buenas las recomiendo demasiado 👌 |
| reviews[].review_time | string | When the review was written, as a Unix time in milliseconds. | 1783716291705 |
| reviews[].sku_id | string | The product variant that was reviewed. | 1729587788239049223 |
| reviews | array | The product's reviews. | 5 records |
| product_id | string | TikTok Shop's ID for the product. | 1729587769570529799 |
| result_count | integer | How many reviews this answer holds. | 5 |
Call it from your code, or ask your agent
Set UPSCRAPE_API_KEY to your key and copy a working request.
curl --request POST \ --url https://data.upscrape.com/execute \ --header "Authorization: Bearer $UPSCRAPE_API_KEY" \ --header "Content-Type: application/json" \ --header "Prefer: wait=30" \ --data '{ "capability": "tiktok.shop.reviews", "input": { "limit": 20, "url": "https://www.tiktok.com/shop/pdp/1729587769570529799" }}'
import jsonimport osimport requestspayload = json.loads(r'''{ "capability": "tiktok.shop.reviews", "input": { "limit": 20, "url": "https://www.tiktok.com/shop/pdp/1729587769570529799" }}''')response = requests.post( "https://data.upscrape.com/execute", headers={ "Authorization": f"Bearer {os.environ['UPSCRAPE_API_KEY']}", "Content-Type": "application/json", "Prefer": "wait=30", }, json=payload,)response.raise_for_status()print(json.dumps(response.json(), indent=2))
const response = await fetch("https://data.upscrape.com/execute", { method: "POST", headers: { "Authorization": `Bearer ${process.env.UPSCRAPE_API_KEY}`, "Content-Type": "application/json", "Prefer": "wait=30", }, body: JSON.stringify({ "capability": "tiktok.shop.reviews", "input": { "limit": 20, "url": "https://www.tiktok.com/shop/pdp/1729587769570529799" }}),});if (!response.ok) { throw new Error(`Upscrape request failed: ${response.status}`);}console.log(JSON.stringify(await response.json(), null, 2));
https://data.upscrape.com/mcp
With Upscrape, get the TikTok shop product reviews for https://www.tiktok.com/shop/pdp/1729587769570529799. Tell me what it costs before you run it, then show the results as a table.
More from the TikTok API
- TikTok User Profile Detail API1 credit
- TikTok User Videos API1 credit
- TikTok Video Detail API1 credit
- TikTok Video Comments API1 credit
- TikTok Comment Replies API1 credit
- TikTok Keyword Video Search API1 credit
- TikTok Top Search Results API1 credit
- TikTok Hashtag Videos API1 credit
- TikTok Video Transcript API1 credit
- TikTok Shop Product Detail API1 credit
- TikTok Shop Product Search API1 credit
- TikTok Shop Store Products API1 credit
- TikTok Song Detail API1 credit
- TikTok Song Videos API1 credit
- TikTok Collection Videos API1 credit
- TikTok Trending Feed API1 credit
- TikTok Suggestions Search API1 credit
- TikTok User Live Status API1 credit
- TikTok Live Room Detail API1 credit
- TikTok User Followers API1 credit
- TikTok User Following API1 credit
The same data from other platforms
TikTok Shop Product Reviews API FAQ
The short answers. The docs have the long ones.
How much does the TikTok Shop Product Reviews API cost?
1 credit per successful call, shown before it runs. You buy credits once, and paid credits never expire.
What do I send?
Send url. The input fields below list every option with its type and limits.
Do I need a TikTok login?
No. It reads public TikTok data; nothing runs on your account.
Can my AI agent call it?
Yes, over MCP: the agent finds tiktok.shop.reviews, checks its price and runs it with the same credits as the REST API.
Your first TikTok call is free.
Up to 100 free credits to start, no card needed.