Tmall Keyword Search
Give a Tmall search keyword and an expected count to get matching product listings with prices, sales counts, and shop details.
Overview
Keyword searches on Tmall mix flagship stores, authorized sellers and accessory listings behind the same buying intent. Seeing those search-result cards together makes it easier to judge which products, shops and price points actually appear for a query, without opening every listing one by one.
This collection keeps the original product titles, displayed prices and sales text from Tmall search results. It is useful when assortment, ranking and list-page pricing are the input to a sourcing or competitive review, rather than replacing a product-detail check or a purchase decision.
Data notes
The data describes product cards collected from public Tmall keyword search results. Results are delivered in ascending collection-time order, which is separate from the sorting used to select products during collection. Repeated SPU IDs are consolidated across the delivered pages.
Product title, Price and Sales count retain their source text. Price is not converted into another currency, and no assumptions are made about taxes, promotions or purchasing conditions. Business ID, Keyword and Submitted keyword can carry the same search phrase; none of them is a unique product identifier. Collect time and Creation timestamp are preserved as returned text, including machine-formatted timestamp strings. The time zone of Collection time is not specified.
Missing brand, platform, review-count and listing-status values remain missing rather than being inferred. A blank preview does not assert that the corresponding source value is an empty string. The collection should not be treated as a complete Tmall catalog, a stock snapshot, or a verified offer for a particular order.
What the results look like
Each row represents one Tmall search-result listing. Quoted Price and Sales count values are text, not converted numbers.
| SPU ID | Product title | Price | Sales count | Shop name |
|---|---|---|---|---|
| 627049150327 | 闪魔适用iPhone17钢化膜苹果18promax手机膜13/15防摔16pro新款duo折叠14全屏X/XR保护11屏幕12pm官ip贴膜Air | "48.39" | "10万+" | 闪魔旗舰店 |
| 654826062393 | 倍思新无界膜适用苹果iPhone18钢化膜AR抗反射17ProMax保护膜16Pro无尘仓15手机贴膜14全屏13覆盖12防指纹11 | "91.96" | "10万+" | baseus倍思旗舰店 |
Additional columns include Image URL, Source page, List position and Collection time.
Use cases
- Compare search assortment: group Product title by recurring product or accessory terms, then use SPU ID and Shop name to separate distinct listings behind the same keyword.
- Review displayed pricing: compare Price and Sales count for listings with similar Product title wording, keeping the original text before drawing conclusions about competitiveness.
- Prepare a shortlist: combine Keyword, Product title, Image URL and Shop name to identify relevant candidates, and retain Collection time so later reviews can distinguish collection snapshots.
Scope and boundaries
One Tmall search keyword per task with an expected result count from 1 to 2000; results are collected in source pages of about 10 products and may return fewer or more than requested; fetch protection is 110 pages / 2,200 records; reaching this capacity does not establish completeness; coverage is limited to public Tmall search listings.
- Good for
- When you need Tmall search-result products for a brand, product, or category keyword.
- When you need a structured list that connects each matched listing with its shop, price, rank, and public sales signals.
- Do not use for
- When you need a full product page, variants, reviews, or price history — this App only returns search-result listing information.
- When you need a strictly capped result count or an immediate single-record lookup.
Failure handling
Failure and retry behavior declared by the developer. We recommend including it in your system prompt when integrating.
- 1If submission times out or its outcome is unknown, check the existing run before submitting again: repeated submissions can create separate jobs.
- 2If no matching records are returned, try a shorter or broader search phrase and resubmit.
- 3Keep completed records after a partial success; resubmit the same input after a failed or expired task.
- 4Retry later after rate limiting, temporary service unavailability, or a timeout.
- 5If authentication fails, verify the API Key configured for the execution environment.
Input
Parameters required to call this App, generated from the input.schema in manifest.json.
- Search keyword
keywordRequiredstringEnter one Tmall product search keyword, from 1 to 512 characters.Exampleiphone 18 pro max - Expected product count
target_countRequiredstringEnter a whole number from 1 to 2000 as digits only. This is a collection target, not a strict cap; source pages of about 10 products can return fewer or more listings, and returned listings are billed in batches of 10.Example25 - Collection sort order
sortRequiredstring(enum)Choose how products are ordered during collection. Default is the Tmall default ranking. Delivered results remain in ascending collection-time order.Allowed valuesDefault0Sales2Price: low to high51Price: high to low52Default0Example0 - Starting collection page
startPageOptionalstringEnter a positive integer to start collection from that page; if omitted, the upstream service decides the starting page, so explicit entry is recommended. This parameter does not change the expected product count.
Output
Field structure of a single record, generated from the output.schema in manifest.json.
- SPU ID
spu_idstringTmall product identifier used to distinguish listings.Example627049150327 - Business ID
biz_idstringSearch keyword retained on the listing; not a unique product identifier.Exampleiphone 18 pro max - Product title
product_titlestringProduct title as collected, without translation.Example闪魔适用iPhone17钢化膜苹果18promax手机膜13/15防摔16pro新款duo折叠14全屏X/XR保护11屏幕12pm官ip贴膜Air - Price
pricestringPrice text as collected; no currency or numeric conversion is applied.Example48.39
Sample data
Generated from output.schema. Fields without a sample value use structural placeholders.
{
"spu_id": "627049150327",
"biz_id": "iphone 18 pro max",
"product_title": "闪魔适用iPhone17钢化膜苹果18promax手机膜13/15防摔16pro新款duo折叠14全屏X/XR保护11屏幕12pm官ip贴膜Air",
"price": "48.39",
"sale_count": "10万+",
"rate_count": "<rate_count>",
"brand_name": "<brand_name>",
"image_url": "https://g.search.alicdn.com/img/bao/uploaded/i4/i2/793375733/O1CN01VFo3XC93RRC2vH2e_!!4611686018427384821-0-item_pic.jpg",
"shop_id": "793375733",
"shop_name": "闪魔旗舰店",
"keyword": "iphone 18 pro max",
"list_index": "0",
"now_page": "1",
"platform": "<platform>",
"status": "<status>",
"crawl_time": "2026-10-13T16:47:55",
"task_item": "iphone 18 pro max",
"task_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": {
"octoparse_datahub": {
"type": "http",
"url": "https://mcp-v2.octoparse.com?pin=super_ig/tmall-keyword-search",
"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
Charged once per submitted run, regardless of how many records are returned.
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.
Multiple billing events accumulate independently. See each item for details. Failed runs are not charged.
View creditsTry it now
Fill in the parameters and run. Results come from a real call.