Discover/JD API
live

JD APIjd.com

Search JD.com products, get recommendations, related keywords, and corporate news via 4 endpoints. Returns SKU, price, ratings, and shop data.

Endpoint health
verified 4d ago
get_related_keywords
get_product_recommendations
search_products
get_corporate_news
4/4 passing latest checkself-healing
Endpoints
4
Updated
26d ago

What is the JD API?

The JD.com API exposes 4 endpoints covering product search, recommendations, related keyword discovery, and corporate newsroom content from one of China's largest e-commerce platforms. The search_products endpoint returns paginated product listings with fields like sku_id, price, comment_count, good_rate, and shop_id — giving developers structured access to live catalog data without building a custom crawler.

Try it
Page number for pagination (1-based).
Search keyword (e.g. '手机', '笔记本电脑').
api.parse.bot/scraper/1ee95c11-c5ec-44b3-a893-7f64c6f4e6c0/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/1ee95c11-c5ec-44b3-a893-7f64c6f4e6c0/search_products?page=1&query=%E6%89%8B%E6%9C%BA' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace jd-com-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: JD.com SDK — search products, explore recommendations, discover keywords, read news."""
from parse_apis.jd_com_api import JD, Product, Recommendation, NewsArticle, ProductSearchFailed

client = JD()

# Search for smartphones — limit caps total items fetched across all pages.
for product in client.products.search(query="手机", limit=5):
    print(product.title, product.price, product.comment_count)

# Drill into one product from search results.
product = client.products.search(query="笔记本电脑", limit=1).first()
if product:
    print(product.sku_id, product.title, product.good_rate)

# Discover related keywords for a search term.
for kw in client.products.related_keywords(query="手机", limit=5):
    print(kw)

# Browse product recommendations for a keyword.
rec = client.recommendations.list(query="耳机", limit=1).first()
if rec:
    print(rec.sku_id, rec.title, rec.price)

# Fetch latest corporate news articles.
try:
    for article in client.newsarticles.list(max_articles=3, limit=3):
        print(article.title, article.created, article.categories)
except ProductSearchFailed as exc:
    print(f"Search failed: {exc}")

print("exercised: products.search / products.related_keywords / recommendations.list / newsarticles.list")
All endpoints · 4 totalmissing one? ·

Full-text product search on JD.com. Matches the query keyword against product titles. Returns products with pricing, ratings, and comment counts. Paginates via integer page number; stops on first empty page.

Input
ParamTypeDescription
pageintegerPage number for pagination (1-based).
queryrequiredstringSearch keyword (e.g. '手机', '笔记本电脑').
Response
{
  "type": "object",
  "fields": {
    "page": "integer, the requested page number",
    "query": "string, the search keyword used",
    "products": "array of product objects with sku_id, title, price, image_url, click_url, comment_count, good_rate, and shop_id"
  },
  "sample": {
    "data": {
      "page": 1,
      "query": "手机",
      "products": [
        {
          "price": "4299.00",
          "title": "蔡司陆地8x32手机望远镜高清镀膜大视野大口径双筒林业户外观鸟演唱会",
          "sku_id": "100050973863",
          "shop_id": 1000451565,
          "click_url": "https://ccc-x.jd.com/dsp/nc?ext=abc",
          "good_rate": 97,
          "image_url": "https://img10.360buyimg.com/n1/jfs/t1/422944/9/18516/99691/69ef0cc7F8e3b668f/0083320320f59272.jpg",
          "comment_count": "1000+"
        }
      ]
    },
    "status": "success"
  }
}

About the JD API

Product Search and Recommendations

The search_products endpoint accepts a required query string (e.g. 手机 or 笔记本电脑) and an optional page integer for pagination. Each product object in the products array includes sku_id, title, price, image_url, click_url, comment_count, good_rate, and shop_id. The get_product_recommendations endpoint takes the same parameters but returns a recommendations array — note that results are not strictly filtered to the query keyword, so the response may include loosely related items.

Related Keywords and Search Intelligence

The get_related_keywords endpoint takes a single query string and returns a keywords array of related search terms as strings. This is useful for expanding keyword sets for price monitoring tools, SEO research targeting the Chinese market, or building autocomplete features that align with JD.com's own search behavior.

Corporate News

The get_corporate_news endpoint (POST) pulls articles from JD.com's corporate newsroom. Each article object in the news array includes id, title, excerpt, categories, banner, alt_banner, and a created Unix timestamp. An optional limit integer caps the number of returned articles. This endpoint covers investor relations content, product announcements, and company updates.

Reliability & maintenanceVerified

The JD API is a managed, monitored endpoint for jd.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when jd.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official jd.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
4d ago
Latest check
4/4 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Monitor price changes on specific JD.com SKUs by polling search_products with targeted queries
  • Build a product comparison tool using sku_id, price, and good_rate fields from search results
  • Expand Chinese-language keyword lists for SEO or ad campaigns using get_related_keywords
  • Track JD.com corporate announcements and press releases via get_corporate_news with created timestamps
  • Aggregate seller data by collecting shop_id values across paginated search results
  • Surface similar product suggestions in a shopping app using get_product_recommendations
  • Research consumer sentiment signals using comment_count and good_rate across product categories
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does JD.com have an official developer API?+
JD.com operates the JD Open Platform (open.jd.com), which offers official APIs primarily for registered merchants and partners. Access requires business verification and approval, limiting availability for general developers.
What does `search_products` return that `get_product_recommendations` does not?+
search_products returns comment_count and good_rate fields per product, which indicate review volume and positive rating percentage. The get_product_recommendations response omits those fields, returning only sku_id, title, price, image_url, click_url, and shop_id.
Are product reviews or individual review text available through this API?+
Not currently. The API exposes comment_count and good_rate as aggregate signals but does not return individual review text, reviewer profiles, or star breakdowns. You can fork it on Parse and revise to add a review-detail endpoint.
Does the API cover product inventory or stock status?+
Not currently. The API returns price, rating, and comment data but does not include stock level, fulfillment type, or availability flags. You can fork it on Parse and revise to add inventory status fields.
How does pagination work across the search endpoints?+
Both search_products and get_product_recommendations accept an optional page integer. The response echoes the requested page value alongside the results array. There is no total_pages or total_results field returned, so you would need to increment the page parameter and detect an empty results array to determine the last page.
Page content last updated . Spec covers 4 endpoints from jd.com.
Related APIs in EcommerceSee all →
nike.com.cn API
Search Nike China's catalog to find products, check availability, browse specific categories like men's, women's, and kids' shoes, and discover trending items and new arrivals. Get detailed product information including sizes, pricing, and specifications to help with shopping decisions and market research.
jumia.com.gh API
Browse and search thousands of products from Jumia Ghana's catalog, view detailed product information, and explore items across different categories. Get real-time search suggestions and instantly access pricing, descriptions, and availability for any item on Ghana's leading e-commerce platform.
banggood.com API
Search Banggood products and retrieve detailed information including prices, specifications, and customer reviews to help you discover items and make informed purchasing decisions. Perfect for monitoring inventory, comparing products, and staying updated on what's available across Banggood's catalog.
jumia.co.ke API
Search and browse thousands of products on Jumia Kenya, view detailed product information and reviews, and discover flash sales and homepage deals all in one place. Filter by category, check product SKUs, and stay updated on the latest offers to find exactly what you're looking for.
juno.co.uk API
Search and browse Juno Records' catalog to find music across genres, discover new releases and bestsellers, and get detailed product information with autocomplete suggestions. Perfect for exploring vinyl, CDs, and digital music with real-time access to charts and recommendations.
mobile.yangkeduo.com API
Browse Pinduoduo's homepage feed, explore product categories, and discover trending search terms to stay updated on popular items. Search for specific products, get detailed product information, and receive search suggestions to find exactly what you're looking for on the platform.
dhgate.com API
Search DHgate's vast marketplace to find products across all categories, view detailed information including pricing tiers, shipping options, and seller ratings, and discover flash deals. Retrieve full product details and customer reviews in one place.
juejin.cn API
Browse Juejin’s recommended article feed, search articles by keyword, and fetch full article details (including markdown/HTML content) by article ID.