One Unified Call to Aggregate E-commerce Data: Practical Guide to Multi-Platform Product Search (Taobao, JD, Pinduoduo)

1. Background: Why Build Aggregated Search?

In price comparison apps, content-based e-commerce platforms, or affiliate marketing services, users typically have the following core needs:

  • Enter a keyword and see relevant products from all major platforms

  • Compare prices, sales volume, discounts, and platform reputation

  • One-stop interface for faster decision-making

However, integrating each platform individually brings challenges:

  • Different API structures (inconsistent fields, pagination rules)

  • Varying response times across platforms

  • Complex concurrency and resource management (threads, async logic, caching)

Hence, there is a need for a unified API to simplify integration, enhance performance, and improve user experience.

2. Design Goals

We aim to build a unified API like:

GET /api/search?keyword=Lenovo Laptop&platforms=jd,taobao,pdd

Which returns:

{

"code": 0,

"data": {

"items": [

{

"sku_id": "J1234",

"title": "Lenovo Legion R7000",

"price": 6599,

"source": "jingdong"

},

{

"sku_id": "T4321",

"title": "Lenovo Xiaoxin Pro",

"price": 6299,

"source": "taobao"

}

]

}

}

✅ Supports querying multiple platforms simultaneously
✅ Unified response format (based on UnifiedGoodsModel)
✅ Specify platforms or use all by default
✅ Supports sorting, pagination, filtering

This approach ensures a better experience for both users and developers.

3. Aggregation Strategy Design

Option 1: Aggregation via Official APIs (High Control, High Effort)

You can access:

  • JD Union Open Platform API

  • Taobao Open Platform Search API

  • Pinduoduo Open Platform Product Query API

Then convert and merge results into a unified structure.

Pros:

  • Data comes directly from official sources, ensuring accuracy

  • Enables affiliate integration for monetization

Cons:

  • Complicated approval and access procedures

  • Field and pagination formats differ, increasing processing complexity

  • High resource usage for concurrency management

Option 2: Aggregation via LuckData (Quick & Reliable Integration)

LuckData offers a unified product search API for:

  • JD, Taobao, and Pinduoduo

  • Unified response format—no need for manual field conversion

  • Code samples in multiple languages (Python, Java, Go, Shell)

  • Fast responses, reliable uptime

Example usage:

GET https://luckdata.io/api/search?query=Lenovo Laptop&platforms=jd,taobao,pdd

Response:

{

"code": 200,

"data": {

"items": [

{

"sku_id": "1001",

"title": "Lenovo Legion Y9000P",

"price": 7599,

"source": "jd"

},

{

"sku_id": "3002",

"title": "Lenovo Xiaoxin Air14",

"price": 5899,

"source": "taobao"

}

]

}

}

Using LuckData, you avoid dealing with API differences and can launch aggregated search functions rapidly.

4. Backend Implementation with Asynchronous Aggregation

If you prefer to retain full control by using official APIs, you can implement your own aggregation logic using async concurrency.

Example with Python aiohttp:

import asyncio

import aiohttp

async def fetch_jd(keyword):

async with aiohttp.ClientSession() as session:

async with session.get(f"https://api.jd.com/search?q={keyword}") as resp:

return await resp.json()

async def fetch_taobao(keyword):

async with aiohttp.ClientSession() as session:

async with session.get(f"https://api.taobao.com/search?q={keyword}") as resp:

return await resp.json()

async def aggregate_search(keyword):

jd_task = fetch_jd(keyword)

tb_task = fetch_taobao(keyword)

results = await asyncio.gather(jd_task, tb_task)

return standardize(results)

@app.get("/api/search")

async def search(keyword: str):

data = await aggregate_search(keyword)

return {"code": 0, "data": {"items": data}}

A function like standardize should be implemented to normalize field structures.

5. Frontend Display Recommendations

To optimize UI/UX, consider:

  • Grouping results by platform (e.g., tabs for JD, Taobao, Pinduoduo)

  • Or blending results with sorting (e.g., by price or sales volume)

  • Clearly displaying product source (e.g., “from JD”)

  • Click-to-jump: either to the platform's product detail page or an internal one

Good design can greatly improve user engagement and conversion rates.

6. Advantages of LuckData

LuckData’s multi-platform search API is ideal for:

  • Rapid development of price comparison, affiliate, or content-based commerce platforms

  • Eliminating the need to manually integrate and standardize APIs from multiple platforms

  • Saving time on credential reviews and interface approvals

  • Built-in field standardization logic

  • Developer-friendly with language support for Python, Java, Go, Shell, and more

Especially for small teams or MVP stages, LuckData is a time-saving and scalable solution.

7. Conclusion

  • Aggregated search is a foundational capability for comparison and recommendation services

  • Official API integration offers flexibility but comes with high complexity

  • LuckData provides a simplified and efficient solution to build feature-rich services quickly

  • Start with LuckData to build your MVP, and expand to official APIs if needed later

With a single request, you can aggregate data from major e-commerce platforms and deliver a true one-stop search experience to your users.

Articles related to APIs :

For seamless and efficient access to the Jingdong API, please contact our team : support@luckdata.com