logo
FR

TikTok Shop Product Reviews

Submit a TikTok Shop US product ID or SPU and a review cap, then receive public reviews with ratings, SKU details, and reviewer info

Source · en-USRevenir à la traduction

Aperçu

Public TikTok Shop US reviews capture how buyers describe fit, quality, and the SKU they actually purchased. This Data App turns the public review area of one US listing into a consistent set of records covering review text, ratings, SKU details, reviewer identity, and collection timestamps.

The result is built for repeatable reputation analysis instead of scrolling a product page. Each review keeps its original wording and stays linked to the Product ID, SPU ID, and SKU spec, so praise and complaints can be compared across sizes and collection runs with the same fields.

Data notes

The data covers publicly visible TikTok Shop US reviews for one Product ID / SPU at collection time. Results arrive in collection-time order, and each normal record is identified by its Comment ID. Non-US marketplaces, private feedback, order records, and buyer contact details are outside the coverage.

Rating, Product rating, SKU spec, User name, and flags such as Anonymous or Edited are snapshots and may change after collection. Avatar list, Image list, and Like count are retained as source text where the source supplies them that way. Published at, Collected at, Created at, and Updated at keep the source timestamps without inferring a timezone. Query product and No data retain the collection outcome when a product has no public review result.

What the results look like

Each normal record represents one publicly visible review of the selected TikTok Shop US product.

Comment IDReview textRatingUser nameSKU specPublished at
7634602945472333582So I bought the zoom regular shoes last year, but they are too soft too spongy when you’re just walking around these are just right! Wide toe box Support you need support soft where you need it soft! I owned just about every air max and this is the best I’ve felt on my feet! Can’t say enough5Os HsUS M 132026-05-01T01:18:51
7646028688848471821Best Nike out5b**dUS M 112026-05-31T20:16:30
7661519510674917133Great shoe great quality. I love it.5S**4US M 102026-07-12T14:08:54

Additional values include Product ID, SPU ID, SKU ID, Avatar list, Image list, and No data.

Use cases

  • Split reviews by Rating, then read Review text to locate low-score issues.
  • Group Review text by SKU spec to separate size-specific experience.
  • Compare User name with Anonymous and Review text when judging how much weight to give a review.
  • Count Comment ID by Published at to see how the mix of feedback changed over time.

Périmètre et limites

Each job accepts 1 TikTok Shop product ID or SPU and collects at most 4500 public reviews. Coverage is limited to the US marketplace. Fetch protection covers 225 pages / 4500 records.

  • Adapté pour
  • When you need public review text, ratings, and publish times for one TikTok Shop US product
  • When you need SKU details, reviewer names, and collection timestamps for reputation analysis
  • À ne pas utiliser pour
  • When you need TikTok Shop reviews from a marketplace other than the US
  • When you need real-time monitoring of newly posted reviews instead of one collection snapshot
  • When you need orders, buyer contact details, or other non-public shop data

Gestion des échecs

Comportement en cas d'échec et de nouvelle tentative déclaré par l'auteur. Nous vous recommandons de l'inclure dans votre prompt système lors de l'intégration.

  1. 1If no reviews are returned, verify the product ID or SPU and use No data to distinguish an empty listing from a failed job
  2. 2A partial success still returns the reviews that were completed; submit a new collection after failure or expiry
  3. 3If authentication fails, a task context does not match, or the job times out, check the credential in the execution environment and submit a new collection instead of reusing the old job

Entrée

Paramètres requis pour appeler cette App, générés à partir de l'input.schema du manifest.json.

ChampNom métierTypeRequisDéfautÉnum / ContraintesExempleDescription
product_itemProduct ID / SPUstringOui——1732075599219691674The TikTok Shop product ID or SPU whose public US reviews will be collected. Enter one identifier, 1 to 512 characters.
crawl_countMaximum reviews to collectstringOui——10The maximum number of public reviews to collect, from 1 to 4500. The result will not exceed this number and may be lower if the product has fewer reviews.

Sortie

Structure des champs d'un enregistrement, générée à partir de l'output.schema du manifest.json.

ChampNom métierTypeExempleDescription
avatar_url_listAvatar liststring["https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/7b7cc85e68a43794946269620078f2ac~tplv-tiktokx-cropcenter:100:100.jpg?dr=9640&refresh_token=b3f5fbe0&x-expires=1789545600&x-signature=jtdzYiVEWHbBH%2FlrOMkcxiRjLfU%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=5f8d3399&idc=useast5"]Reviewer avatar URLs retained as source text, often a JSON list string.
biz_idBusiness IDstring1732075599219691674Business identifier associated with this review.
comment_idComment IDstring7634602945472333582Unique identifier of this product review.
comment_source_nameSource namestring—Name of the review source when the source supplies it.
comment_source_typeSource typestring—Type of the review source when the source supplies it.
comment_textReview textstringSo I bought the zoom regular shoes last year, but they are too soft too spongy when you’re just walking around these are just right! Wide toe box Support you need support soft where you need it soft! I owned just about every air max and this is the best I’ve felt on my feet! Can’t say enoughPublic review body written by the buyer.
comment_time_textReview time textstring—Review time as display text when the source supplies it.
comment_typeReview typestring1Review type code returned as source text.
comment_urlReview URLstring—Link to this review when the source supplies it.
crawl_timeCollected atstring2026-09-14T16:19:49Collection timestamp returned by the source, without an inferred timezone.
created_atCreated atstring1789373989528Record created timestamp retained as source text.
image_url_listImage liststring[]Review image URLs retained as source text, often a JSON list string.
is_anonymousAnonymousbooleanfalseWhether the reviewer is marked anonymous.
is_diggedLikedbooleanfalseWhether this review is marked as liked.
is_ownerSeller reviewbooleanfalseWhether this review is marked as posted by the seller.
is_updatedEditedbooleanfalseWhether this review is marked as edited.
item_idItem IDstring1732075599219691674Item identifier associated with this review.
like_countLike countstring—Like count for this review, retained as source text.
parent_comment_idParent comment IDstring—Parent review identifier when this row is a reply.
product_idProduct IDstring1732075599219691674Product identifier associated with this review.
product_ratingProduct ratingstring5Product rating value returned with this review, as source text.
publish_timePublished atstring2026-05-01T01:18:51Review publish timestamp returned by the source, without an inferred timezone.
rating_scoreRatingstring5Star rating attached to this review, as source text.
ratings_urlRatings URLstring—Link to the ratings page when the source supplies it.
sku_idSKU IDstring1732075635013226650SKU identifier the reviewer purchased.
sku_specificationSKU specstringUS M 13SKU specification text such as size.
spu_idSPU IDstring1732075599219691674SPU identifier associated with this review.
task_itemQuery productstring1732075599219691674Product ID or SPU this collection row is associated with.
no_dataNo databooleanfalseWhether this row is a no-result marker instead of a normal review.
updated_atUpdated atstring1789373989851Record updated timestamp retained as source text.
user_idUser IDstring7435352589535626286Reviewer user identifier.
user_nameUser namestringO**s H**sReviewer display name, which may be masked.
user_profile_urlProfile URLstring—Reviewer profile link when the source supplies it.

Schema de l'enregistrement

La sortie est renvoyée enregistrement par enregistrement. detail.output.idFieldHint

output.schema
{
  "type": "object",
  "properties": {
    "avatar_url_list": {
      "type": "string",
      "title": "Avatar list",
      "description": "Reviewer avatar URLs retained as source text, often a JSON list string.",
      "prefill": "[\"https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/7b7cc85e68a43794946269620078f2ac~tplv-tiktokx-cropcenter:100:100.jpg?dr=9640&refresh_token=b3f5fbe0&x-expires=1789545600&x-signature=jtdzYiVEWHbBH%2FlrOMkcxiRjLfU%3D&t=4d5b0474&ps=13740610&shp=a5d48078&shcp=5f8d3399&idc=useast5\"]"
    },
    "biz_id": {
      "type": "string",
      "title": "Business ID",
      "description": "Business identifier associated with this review.",
      "prefill": "1732075599219691674"
    },
    "comment_id": {
      "type": "string",
      "title": "Comment ID",
      "description": "Unique identifier of this product review.",
      "prefill": "7634602945472333582"
    },
    "comment_source_name": {
      "type": "string",
      "title": "Source name",
      "description": "Name of the review source when the source supplies it."
    },
    "comment_source_type": {
      "type": "string",
      "title": "Source type",
      "description": "Type of the review source when the source supplies it."
    },
    "comment_text": {
      "type": "string",
      "title": "Review text",
      "description": "Public review body written by the buyer.",
      "prefill": "So I bought the zoom regular shoes last year, but they are too soft too spongy when you’re just walking around these are just right! Wide toe box Support you need support soft where you need it soft! I owned just about every air max and this is the best I’ve felt on my feet! Can’t say enough"
    },
    "comment_time_text": {
      "type": "string",
      "title": "Review time text",
      "description": "Review time as display text when the source supplies it."
    },
    "comment_type": {
      "type": "string",
      "title": "Review type",
      "description": "Review type code returned as source text.",
      "prefill": "1"
    },
    "comment_url": {
      "type": "string",
      "title": "Review URL",
      "description": "Link to this review when the source supplies it."
    },
    "crawl_time": {
      "type": "string",
      "title": "Collected at",
      "description": "Collection timestamp returned by the source, without an inferred timezone.",
      "prefill": "2026-09-14T16:19:49"
    },
    "created_at": {
      "type": "string",
      "title": "Created at",
      "description": "Record created timestamp retained as source text.",
      "prefill": "1789373989528"
    },
    "image_url_list": {
      "type": "string",
      "title": "Image list",
      "description": "Review image URLs retained as source text, often a JSON list string.",
      "prefill": "[]"
    },
    "is_anonymous": {
      "type": "boolean",
      "title": "Anonymous",
      "description": "Whether the reviewer is marked anonymous.",
      "prefill": false
    },
    "is_digged": {
      "type": "boolean",
      "title": "Liked",
      "description": "Whether this review is marked as liked.",
      "prefill": false
    },
    "is_owner": {
      "type": "boolean",
      "title": "Seller review",
      "description": "Whether this review is marked as posted by the seller.",
      "prefill": false
    },
    "is_updated": {
      "type": "boolean",
      "title": "Edited",
      "description": "Whether this review is marked as edited.",
      "prefill": false
    },
    "item_id": {
      "type": "string",
      "title": "Item ID",
      "description": "Item identifier associated with this review.",
      "prefill": "1732075599219691674"
    },
    "like_count": {
      "type": "string",
      "title": "Like count",
      "description": "Like count for this review, retained as source text."
    },
    "parent_comment_id": {
      "type": "string",
      "title": "Parent comment ID",
      "description": "Parent review identifier when this row is a reply."
    },
    "product_id": {
      "type": "string",
      "title": "Product ID",
      "description": "Product identifier associated with this review.",
      "prefill": "1732075599219691674"
    },
    "product_rating": {
      "type": "string",
      "title": "Product rating",
      "description": "Product rating value returned with this review, as source text.",
      "prefill": "5"
    },
    "publish_time": {
      "type": "string",
      "title": "Published at",
      "description": "Review publish timestamp returned by the source, without an inferred timezone.",
      "prefill": "2026-05-01T01:18:51"
    },
    "rating_score": {
      "type": "string",
      "title": "Rating",
      "description": "Star rating attached to this review, as source text.",
      "prefill": "5"
    },
    "ratings_url": {
      "type": "string",
      "title": "Ratings URL",
      "description": "Link to the ratings page when the source supplies it."
    },
    "sku_id": {
      "type": "string",
      "title": "SKU ID",
      "description": "SKU identifier the reviewer purchased.",
      "prefill": "1732075635013226650"
    },
    "sku_specification": {
      "type": "string",
      "title": "SKU spec",
      "description": "SKU specification text such as size.",
      "prefill": "US M 13"
    },
    "spu_id": {
      "type": "string",
      "title": "SPU ID",
      "description": "SPU identifier associated with this review.",
      "prefill": "1732075599219691674"
    },
    "task_item": {
      "type": "string",
      "title": "Query product",
      "description": "Product ID or SPU this collection row is associated with.",
      "prefill": "1732075599219691674"
    },
    "no_data": {
      "type": "boolean",
      "title": "No data",
      "description": "Whether this row is a no-result marker instead of a normal review.",
      "prefill": false
    },
    "updated_at": {
      "type": "string",
      "title": "Updated at",
      "description": "Record updated timestamp retained as source text.",
      "prefill": "1789373989851"
    },
    "user_id": {
      "type": "string",
      "title": "User ID",
      "description": "Reviewer user identifier.",
      "prefill": "7435352589535626286"
    },
    "user_name": {
      "type": "string",
      "title": "User name",
      "description": "Reviewer display name, which may be masked.",
      "prefill": "O**s H**s"
    },
    "user_profile_url": {
      "type": "string",
      "title": "Profile URL",
      "description": "Reviewer profile link when the source supplies it."
    }
  },
  "required": [],
  "additionalProperties": false
}

Intégration

Cette App peut être intégrée via MCP, API, SDK ou export de fichiers — tous les canaux partagent les mêmes capacités et la même tarification. Chaque requête s'authentifie avec l'en-tête Authorization: Bearer à l'aide d'une API Key (longue durée, créée dans la console Data Hub) ; les clients MCP peuvent aussi se connecter via OAuth, sans clé. D'autres options comme la CLI et Skill arrivent bientôt.

Avec MCP (Model Context Protocol), vous pouvez appeler cette App directement depuis des clients IA comme Claude et Cursor. Choisissez votre client et votre mode d'authentification, puis copiez la config ci-dessous.

Config du client

Remplacez la valeur après Bearer par votre API Key longue durée. Fonctionne dans n'importe quel client, en CI ou en environnement sans navigateur.

mcpServers config
{
  "mcpServers": {
    "super_ig__tiktok-shop-comment": {
      "type": "http",
      "url": "https://mcp-v2.octoparse.com?pin=super_ig/tiktok-shop-comment",
      "headers": { "Authorization": "Bearer <YOUR_API_KEY>" }
    }
  }
}

Laissez l'IA tout configurer pour vous

Vous ne voulez pas modifier les configs à la main ? Copiez le prompt d'installation et collez-le dans n'importe quel client IA — il effectuera la configuration à sa manière. (Le prompt demande à l'IA de vous réclamer votre API Key, afin que les identifiants ne finissent jamais dans l'historique de conversation ni dans des configs partagées.)

detail.access.mcp.composeHint

Tarifs

per 30 reviews

Facturé selon le nombre d'enregistrements renvoyés avec succès. Les exécutions échouées ne sont pas facturées. Facturé par unités de 30 enregistrement ; toute unité incomplète est arrondie à 30 enregistrement.

0,005 $US/ 30 enregistrement
Per task submitted

Facturé une fois par exécution soumise, quel que soit le nombre d'enregistrements renvoyés.

0,0001 $US/ exécution

Plusieurs événements de facturation se cumulent indépendamment. Voir chaque élément pour les détails. Les exécutions échouées ne sont pas facturées.

Voir les crédits

Essayer maintenant

Renseignez les paramètres et lancez l'exécution — les résultats proviennent d'un appel réel.

Exemple
Les paramètres sont validés par rapport à l'input.schema avant la soumission
Veuillez d'abord renseigner les paramètres requis
À partir de 0,005 $US / 30 enregistrement