EveryData platform API

JD.com API

JD.com keeps product discovery, one-product details, public reviews, shop catalogs, and displayed product prices in 5 separate actions: `search`, `product_detail`, `reviews`, `shop`, and `product_price`.

Begin with `search` and carry its `item_id` into `product_detail`, `reviews`, or `product_price`. Use the separate `shop` selector only for a shop catalog; an item identifier and a shop identifier are not interchangeable. Displayed prices and availability are request-time observations, not personal checkout or settlement terms.

Endpoint
POST /api/v1/social
Capabilities
5
Per 1,000
$1.39 per 1,000 requests

Available capabilities

Compare the JD.com actions by required input, returned data, and price. Use the action identifier exactly as shown in your request.

ActionRequiredOptionalDeliveryLimitPer 1,000Response fields
search

Search

Search public results on JD.com. Accepts these parameters: keyword. Returns these fields: sell_point, good_rate, item_id, and price.

keywordSync deliveryCatalog values: defaultLimit=25, maxLimit=25. A limit can control pages or per-parent expansion for some actions, so it is not always a final row count.$1.39 per 1,000 requestsitem_id · url · title · short_title · price · currency · sold_count · review_count · good_rate · shop_id · shop_name · shop_url · is_jd_self · promotion · sell_point · category_ids · image_url · platform
product_detail

Product details

Retrieve product details from JD.com. Accepts these parameters: item_id. Returns these fields: image_url, size, price, and available.

item_idSync delivery$1.39 per 1,000 requestsitem_id · url · title · price · price_display · price_masked · currency · available · unavailable_reason · shop_id · shop_name · shop_url · category_id · category · stock · stock_state · color · size · weight · image_url · is_jd_self · platform
reviews

Reviews

Retrieve public reviews from JD.com. Accepts these parameters: item_id. Returns these fields: posted_at, rating, rating_scale, and size.

item_idSync deliveryCatalog values: defaultLimit=10, maxLimit=10. A limit can control pages or per-parent expansion for some actions, so it is not always a final row count.$1.39 per 1,000 requestsid · item_id · text · review_append · rating · rating_scale · posted_at · color · size · useful_count · images · platform
shop

Shop

Retrieve public shop details from JD.com. Accepts these parameters: shop_id. Returns these fields: price, available, currency, and shop_id.

shop_idSync deliveryCatalog values: defaultLimit=24, maxLimit=24. A limit can control pages or per-parent expansion for some actions, so it is not always a final row count.$1.39 per 1,000 requestsitem_id · url · title · price · currency · shop_id · shop_name · shop_url · image_url · available · platform
product_price

Product price

Use the product_price action on JD.com. Accepts these parameters: item_id. Returns these fields: available, unavailable_reason, price, and currency.

item_idSync delivery$1.39 per 1,000 requestsitem_id · url · price · currency · available · unavailable_reason · platform

What does each JD.com action accept?

Each answer below pairs one callable action with its real inputs. Parameter meanings and allowed values are action-specific; a familiar name does not carry the same meaning across every platform.

Official sources are linked only to clarify the platform term beside them. They do not imply platform authorization or endorsement, and they do not add official-site features to the EveryInfra API contract.

What do the JD.com search parameters mean?

Search public results on JD.com. Accepts these parameters: keyword. Returns these fields: sell_point, good_rate, item_id, and price.

keywordRequired
Specifies the search query for JD.com search. This must be a search phrase, not an item ID or shop selector, and matching results do not imply exhaustive catalog coverage.
JD.com JOS and JD Union: Product and SKU ObjectsJD.com's authorized open-platform and affiliate materials describe product and SKU objects such as names, primary images, categories, displayed prices, logistics, self-operated status, and order-volume signals. This terminology does not prove that every webpage or field is available, that a caller has access, or that EveryInfra implements the official interface. · Checked

What do the JD.com product_detail parameters mean?

Retrieve product details from JD.com. Accepts these parameters: item_id. Returns these fields: image_url, size, price, and available.

item_idRequired
Identifies one JD.com product for product_detail, reviews, or product_price. Pass the digit string returned by search or the canonical legacy URL https://item.jd.com/<digits>.html without a query or fragment; arbitrary, opaque, or cross-host URLs are not accepted as equivalent item identifiers.
JD.com: Displayed-price Labels and Conditional Purchase PricesJD.com distinguishes a real-time displayed label from final item prices and member, new-user, regional, or targeted benefits, while noting that some comparison information can be delayed or incomplete. Treat a returned price as the visible request-time snapshot, not a personal transaction price, settlement amount, or guarantee of absolute accuracy. · Checked

What do the JD.com reviews parameters mean?

Retrieve public reviews from JD.com. Accepts these parameters: item_id. Returns these fields: posted_at, rating, rating_scale, and size.

item_idRequired
Identifies one JD.com product for product_detail, reviews, or product_price. Pass the digit string returned by search or the canonical legacy URL https://item.jd.com/<digits>.html without a query or fragment; arbitrary, opaque, or cross-host URLs are not accepted as equivalent item identifiers.
JD.com: Review and Photo-posting RulesJD.com distinguishes reviews, follow-up reviews, images, replies, moderation, folded content, and masked nicknames. Public visibility can depend on review and privacy rules, so a returned set must not be described as the complete review history or as permission to redistribute reviewer content. · Checked
JD.com User Service Agreement (Effective January 20, 2026): Public Reviews and Access BoundariesThe current agreement says review information is public and JD.com may use it under the agreement. It also says personal information generally is not disclosed to third parties without permission and prohibits stealing personal information or infringing lawful rights. This source supports access and permission boundaries only; it does not grant EveryInfra or callers rights to redistribute, train on, or commercially reuse text, images, or user information. · Checked

What do the JD.com shop parameters mean?

Retrieve public shop details from JD.com. Accepts these parameters: shop_id. Returns these fields: price, available, currency, and shop_id.

shop_idRequired
Identifies the shop used by the shop action. Pass a digit string or the canonical legacy URL https://mall.jd.com/index-<digits>.html without a query or fragment; cross-host URLs are rejected, and this selector does not accept a product item_id.
JD.com JSSDK: Separate SKU and Shop TargetsJD.com's redirect documentation uses `skuId` for a product-detail target and `shopId` for a shop-detail target. This supports keeping product and shop identifiers separate; it does not establish webpage collection rights, supported URL parsing, complete shop catalogs, or EveryInfra request behavior. · Checked

What do the JD.com product_price parameters mean?

Use the product_price action on JD.com. Accepts these parameters: item_id. Returns these fields: available, unavailable_reason, price, and currency.

item_idRequired
Identifies one JD.com product for product_detail, reviews, or product_price. Pass the digit string returned by search or the canonical legacy URL https://item.jd.com/<digits>.html without a query or fragment; arbitrary, opaque, or cross-host URLs are not accepted as equivalent item identifiers.
JD.com: Displayed-price Labels and Conditional Purchase PricesJD.com distinguishes a real-time displayed label from final item prices and member, new-user, regional, or targeted benefits, while noting that some comparison information can be delayed or incomplete. Treat a returned price as the visible request-time snapshot, not a personal transaction price, settlement amount, or guarantee of absolute accuracy. · Checked

How to use the JD.com API

  1. 01Read the public catalog and choose a platform action.
  2. 02Send the platform, action, and required parameters to POST /api/v1/social.
  3. 03Handle a synchronous result or poll the returned job ID when the selected action is asynchronous.
  4. 04Store the structured response fields needed by your application.
jd_search.sh
curl -X POST https://api.everyinfra.com/api/v1/social \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"platform":"jd","action":"search","params":{"keyword":"<keyword>"}}'

JD.com API questions

What can I retrieve with the JD.com API?

Set platform to jd. The current catalog lists search, product details, reviews, shop, and product price. These action names identify different JD.com objects or views; they are not interchangeable search modes.

Which input starts a JD.com `search` request?

Specifies the search query for JD.com search. This must be a search phrase, not an item ID or shop selector, and matching results do not imply exhaustive catalog coverage. Send it as keyword inside params.

Which fields can JD.com `search` return?

Its declared schema includes item_id, title, short_title, and price. A declared field can still be absent from an individual source record, and every other action has its own field list.

Does every JD.com action return immediately?

No assumption is needed: this page labels each action's delivery mode. The current catalog contains sync delivery; poll a returned job ID only for an action labeled asynchronous.