logo
EN

JD Shop Product List

Give one JD shop ID and an expected product count to collect that shop's listed products with titles, prices, sales signals, and images.

Developer
super_ig
Pricing
From $0.01 / 60 records
Last updated
2026-10-16

Overview

A JD shop page is a useful window into what a merchant currently offers, but the listings are hard to keep as a comparable dataset: titles, prices, images, and sales signals sit together on the page and shift as the assortment changes. This app turns one shop ID into a structured product-level catalog so merchandising, sourcing, and research teams can review that shop's listed mix without copying rows by hand.

Unlike opening a product you already know, a shop list shows the assortment as it appears in the store itself. Keeping SKU identity, listing commercial signals, and shop context in the same row makes it possible to map price bands, watch which items stay listed, or assemble a candidate set from one merchant.

Data notes

Each record is a public product listing from the supplied JD shop. SKU IDs are de-duplicated within the returned dataset. Source item preserves the shop context and may repeat across many products from the same task. Listings are returned in a stable ascending collection-time order.

JD price and original price are listing amounts as raw strings, with no separate currency field. Sales count and rating count are displayed text, so they should not be treated as audited totals. Collection time has no timezone. Product image addresses may start with // rather than a full http prefix. Some rows still return SKU, shop, and image when title, price, or sales text is empty. A No-data marker distinguishes a shop item that produced no matching products from ordinary listing rows.

The collection covers public listings for the supplied shop only. It does not include other shops, product-detail specifications, comments, or order data.

What a result looks like

Each row is one JD shop product listing associated with the submitted shop, or a no-data marker for that shop.

SKU IDProduct titleShop nameShop IDCollection timeNo-data marker
100300235664绘威耗材京东自营旗舰店10000011402026-10-13T18:41:21No
4154542绘威耗材京东自营旗舰店10000011402026-10-13T18:41:21No

Product image, JD price, original price, brand name, sales count, and rating count are also available when supplied with the record. Product titles and shop names may remain in the original language.

Use cases

  • For assortment mapping, group rows by Shop ID and compare Product title with Shop name to see the shop's visible mix.
  • For catalog monitoring, compare SKU ID and Shop ID across later collections to see which products reappear or drop out of the shop list.
  • For collection review, use Collection time with No-data marker to tell ordinary listing rows from a shop item that produced no matching products.

Scope and boundaries

One JD shop ID per task with an expected product count from 1 to 1,200; the count is a collection target, not a hard result cap. Retrieval is protected at 1,000 pages of up to 1,000 records each. Coverage is limited to public JD shop listings.

  • Good for
  • When you need a product-level catalog snapshot for one JD shop.
  • When you want to compare listed titles, displayed prices, and public sales signals within a shop.
  • Do not use for
  • When you need product-detail specifications or customer reviews rather than shop-listing data.
  • When you need an immediate single-record lookup rather than a background collection task.

Failure handling

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

  1. 1If no products are returned, check the shop ID and resubmit.
  2. 2Keep completed records after a partial success; resubmit the same shop after a failed or expired task.
  3. 3Retry later after rate limiting, temporary unavailability, or a timeout.
  4. 4Results may exceed the requested target count; the count is a collection target, not a strict output limit.

Input

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

  • JD shop IDshop_idRequiredstring
    The ID of the JD shop whose product listings you want to collect. Enter one shop ID per task, from 1 to 512 characters.
    Example1000001140
  • Expected product countcrawl_countRequiredinteger
    Expected number of products to collect, from 1 to 1,200. This is a collection target, not a hard result cap, so the actual count may be higher.
    Range1–1200Example25
  • Collection sort ordersort_orderRequiredstring(enum)
    Choose how products are collected: Default, Sales, Review count, Newest, Price: low to high, or Price: high to low. Returned rows are still ordered by collection time.
    Allowed valuesDefault0Sales2Review count3Newest4Price: low to high51Price: high to low52Example0

Output

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

  • Collection timecrawl_timestring
    Collection time for the listing; the source does not specify a timezone.
    Example2026-10-13T18:41:21
  • Product imageimage_urlstring
    Main product image address from the listing; it may start with //; empty when none is returned.
    Example//img13.360buyimg.com/n7/jfs/t1/514425/6/8520/200460/6a9e9d91Fc5d50a38/00835dc5dc07cc0e.jpg
  • Product titleproduct_titlestring
    Product title shown on the JD shop listing; empty when none is returned.
  • Shop IDshop_idstring
    Identifier of the shop containing this product.
    Example1000001140

Sample data

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

output.example
{
  "crawl_time": "2026-10-13T18:41:21",
  "image_url": "//img13.360buyimg.com/n7/jfs/t1/514425/6/8520/200460/6a9e9d91Fc5d50a38/00835dc5dc07cc0e.jpg",
  "product_title": "<product_title>",
  "shop_id": "1000001140",
  "shop_name": "绘威耗材京东自营旗舰店",
  "sku_id": "100300235664",
  "source_item": "1000001140",
  "no_data": false
}

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-shop-product-list",
      "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

Per submitted shop task

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

$0.0001/ run
Per returned 60 record

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

$0.01/ 60 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.01 / 60 records