logo
EN

JD Product Reviews

Collect public JD.com reviews for one product SKU and return the original review payload, publish times, and shop context

Developer
super_ig
Pricing
From $0.08 / 10 records
Last updated
2026-10-14

Overview

Public JD.com product reviews capture how buyers describe quality, delivery, and the SKU they actually purchased. This Data App turns the public review area of one JD product SKU into a consistent set of records covering the original review payload, publish times, shop context, and collection timestamps.

The result is built for repeatable reputation analysis instead of scrolling a product page. Each review keeps its source wording inside Comment data and stays linked to the Source SKU, SKU ID, and shop, so praise and complaints can be compared across collection runs with the same fields.

Data notes

The data covers publicly visible JD.com product reviews for the supplied JD product SKU at collection time, taking the newest public reviews. Returned records keep the order of Collected at from earliest to latest. Each normal record is identified by its Comment ID, which removes duplicate reviews in the same run. Private, deleted, and non-public reviews are outside the coverage.

Comment data keeps the original review payload as source text, including buyer nicknames, ratings, photos, videos, and body text when the source supplies them that way. Comment type, Parent ID, Shop type, and SKU ID are source codes, not rewritten labels. Comment time, Published at, and Collected at preserve the source timestamps without inferring a timezone. Source SKU 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 JD product.

Comment IDBusiness IDComment typePublished atCollected atShop name
10648261023489188010034208826812026-10-12T12:49:472026-10-13T18:37:16小米京东自营旗舰店
10618467021453271610034208826812026-10-12T12:17:422026-10-13T18:37:16小米京东自营旗舰店

Additional values include Comment data, Shop type, SKU ID, and No data.

Use cases

  • Read Comment data to locate quality complaints, then group by Comment type.
  • Compare Published at with Collected at to see how recently the review was captured.
  • Split records by Shop name and Shop type when comparing self-operated and marketplace listings.
  • Use No data with Source SKU to distinguish an empty listing from a failed collection.

Scope and boundaries

Each run accepts one JD product SKU and an expected review count of 1 to 2000. Results are returned in complete batches and may round up. Only publicly visible JD reviews are covered. Pull protection capacity is 150 pages / 3,000 records.

  • Good for
  • When you need public JD.com review payloads, publish times, and shop context for one product SKU
  • When you need original review text plus collection timestamps for JD reputation analysis
  • Do not use for
  • When you need reviews from a marketplace other than JD.com
  • When you need real-time monitoring of newly posted reviews instead of one collection snapshot
  • When you need private, deleted, or otherwise non-public reviews

Failure handling

Failure and retry behavior declared by the developer. We recommend including it in your system prompt when integrating.

  1. 1If no reviews are returned, verify the JD product SKU 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
  4. 4When the submission outcome is unknown, avoid immediate repeated submissions that could create duplicate tasks

Input

Parameters required to call this App, generated from the input.schema in manifest.json.

  • JD product SKUproduct_skuRequiredstring
    The JD.com product SKU whose public reviews will be collected. Enter one identifier, 1 to 512 characters.
    Example100342088268
  • Expected review countcomment_countRequiredinteger
    The expected number of public reviews to collect, from 1 to 2000. Results are returned in complete batches, so the actual count may round up. If the product has fewer public reviews, the result may still be lower.
    Range1–200

Output

Field structure of a single record, generated from the output.schema in manifest.json.

  • Business IDbiz_idstring
    The business identifier linking the review record to the collected product
    Example100342088268
  • Comment datacomment_datastring
    The original review payload retained as source text, including rating, body text, photos, and buyer nickname when supplied
    Example{"afterUserComment": {}, "avatar": "storage.360buyimg.com/i.imageUpload/6a645f3562616533316234626665623831373638333636333633333131_sma.jpg", "content": "好用好看", "creationTime": "2026-10-12 12:49:47", "guid": "T6NYPc91jp0tdhmCU6-ZyHeB", "id": "106482610234891880", "images": [{"imgUrl": "//img30.360buyimg.com/shaidan/s128x96_jfs/t1/536818/26/12014/1878056/6acc66eaF385886de/00a98dcfc0d5070d.jpg"}], "likeCount": "0", "nickname": "eatt94", "plusAvailable": "0", "productColor": "脂白", "productSize": "", "referenceName": "小米(MI)REDMI Buds 8 真无线蓝牙耳机主动降噪适用于安卓苹果手机 脂白", "score": "5", "videos": null}
  • Comment IDcomment_idstring
    The stable unique identifier of the JD review
    Example106482610234891880
  • Comment timecomment_timestring
    The source timestamp of the review without an inferred timezone
    Example2026-10-12T12:49:47

Sample data

Generated from output.schema. Fields without a sample value use structural placeholders.

output.example
{
  "biz_id": "100342088268",
  "comment_data": "{\"afterUserComment\": {}, \"avatar\": \"storage.360buyimg.com/i.imageUpload/6a645f3562616533316234626665623831373638333636333633333131_sma.jpg\", \"content\": \"好用好看\", \"creationTime\": \"2026-10-12 12:49:47\", \"guid\": \"T6NYPc91jp0tdhmCU6-ZyHeB\", \"id\": \"106482610234891880\", \"images\": [{\"imgUrl\": \"//img30.360buyimg.com/shaidan/s128x96_jfs/t1/536818/26/12014/1878056/6acc66eaF385886de/00a98dcfc0d5070d.jpg\"}], \"likeCount\": \"0\", \"nickname\": \"eatt94\", \"plusAvailable\": \"0\", \"productColor\": \"脂白\", \"productSize\": \"\", \"referenceName\": \"小米(MI)REDMI Buds 8 真无线蓝牙耳机主动降噪适用于安卓苹果手机 脂白\", \"score\": \"5\", \"videos\": null}",
  "comment_id": "106482610234891880",
  "comment_time": "2026-10-12T12:49:47",
  "comment_type": "1",
  "crawl_time": "2026-10-13T18:37:16",
  "customer": "yunfan",
  "no_data": false,
  "origin_comment_id": "106482610234891880",
  "pid": "0",
  "publish_time": "2026-10-12T12:49:47",
  "shop_id": "1000004123",
  "shop_name": "小米京东自营旗舰店",
  "shop_type": "京东自营店",
  "sku_id": "100342088268",
  "source_sku": "100342088268"
}

Integration

This App can be integrated via MCP, API, SDK, or file export. All channels share the same capabilities and pricing. Every request authenticates with the Authorization: Bearer header using an API key (long-lived, created in the Data Hub Console); MCP clients can also sign in with OAuth, no key required. More options such as CLI and Skill are on the way. This App runs asynchronously and can be canceled midway: After you cancel, the run stops. Records already delivered are kept and billed.

With the MCP (Model Context Protocol), you can call this App directly from AI clients like Claude and Cursor. Pick your client and auth mode, then copy the config below.

Client config

Replace the value after Bearer with your long-lived API key. Works in any client, CI, or headless environment.

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

Let AI set it up for you

Don't want to edit configs by hand? Copy the install prompt and paste it into any AI client. It will complete the setup its own way. (The prompt asks the AI to request your API key from you, so credentials never end up in chat history or shared configs.)

detail.access.mcp.composeHint

Pricing

Submit one review collection

Charged once per submitted run, regardless of how many records are returned.

$0.0001/ run
10 returned reviews

Charged by the number of records successfully returned. Failed runs are not charged. Billed in units of 10 records; any partial unit is rounded up to 10 records.

$0.08/ 10 records

Multiple billing events accumulate independently. See each item for details. Failed runs are not charged.

View credits

Try it now

Fill in the parameters and run. Results come from a real call.

Example
Parameters are validated against input.schema before submission
From $0.08 / 10 records