Douyin Shop 抖音商城 Product Scraper - Sales, Commission & Shops
Pricing
from $8.00 / 1,000 products
Douyin Shop 抖音商城 Product Scraper - Sales, Commission & Shops
Search Douyin Shop (抖音商城 / 抖店) products by keyword or list a shop's catalogue. Get price, 30-day sales and daily sales trend, creator commission rate, promoting creators, shop name and score, for product research and affiliate selection. No login or cookies needed. Export to JSON, CSV or Excel.
Pricing
from $8.00 / 1,000 products
Rating
0.0
(0)
Developer
Silkline
Maintained by CommunityActor stats
0
Bookmarked
8
Total users
2
Monthly active users
4 hours ago
Last modified
Categories
Share
Douyin Shop 抖音商城 Scraper collects product data from Douyin Shop (抖音商城, called 抖店 on the merchant side) and returns clean, flat JSON. You can search products by keyword, or list every product of a shop. Search results include price, 30-day sales and the daily sales trend, the commission offered to creators, how many creators already promote the product, shop name and score, categories and tags. It is made for sellers, creators, agencies and analysts who do product research and affiliate selection, and it needs no Douyin account, API keys, proxies or cookies.
What is Douyin Shop?
Douyin Shop (抖音商城) is the online marketplace inside Douyin (抖音), the Chinese short-video app. Shops sell products there, and many products are listed in a creator alliance pool, where creators pick them up and promote them in short videos and live streams in exchange for a commission. Product pages are hosted on jinritemai.com.
What data can you get?
The Actor has two modes. search returns the full field set. shop fills a shorter set: productId, promotionId, url, title, imageUrl, price, monthlySales, shopId and tags. The other fields are present but empty (null) in shop mode.
| Field | What it contains | Modes |
|---|---|---|
monthlySales | Units sold in the last 30 days | search, shop |
dailySales | Units sold per day over the last 30 days, as a list of {date, sales} | search |
price | Price in CNY shown to buyers (the after-coupon price in search mode) | search, shop |
regularPrice | Price in CNY before discounts; empty when the product has no discount | search |
commissionRate | Commission offered to creators who sell the product, in percent | search |
commissionAmount | Commission in CNY per sold unit at the current price | search |
cooperatingCreators | Number of creators currently promoting the product | search |
positiveRate | Share of positive reviews in percent; empty for new products | search |
shopId | Shop ID (use it as input for shop mode) | search, shop |
shopName | Shop name | search |
shopScore | Shop experience score | search |
shopLogoUrl | Shop logo URL | search |
productId | Douyin Shop product ID | search, shop |
promotionId | Promotion ID of the product in the creator alliance pool | search, shop |
title | Product title (Chinese) | search, shop |
url | Link to the product page | search, shop |
imageUrl | Main image URL | search, shop |
whiteImageUrl | Image on a white background; empty for about half of the products | search |
categoryLevel1 | Top-level category name | search |
categoryLevel2 | Second-level category name | search |
categoryLevel3 | Third-level (leaf) category name | search |
tags | Selling-point labels such as 现货, 包邮, 运费险, 24小时发货 | search, shop |
recommendReason | Why the platform recommends the product, for example a leaderboard entry; empty for many products | search |
searchKeyword | The search keyword this product was found with | search |
type | Record type: product | search, shop |
This is product-selection data, not just a product list: monthly sales, a 30-day daily sales series, positive-review rate, shop score, commission rate and amount, and the number of creators promoting each product.
How to use Douyin Shop 抖音商城 Scraper
- Open the Actor in Apify Console.
- Choose a Mode: "Search products by keyword" (
search) or "Products of shops" (shop). - Enter Chinese Keywords for
search, or shop IDs or shop links in Shops forshop. - Set Max results, the total number of products for the whole run.
- Click Start. An empty input
{}searches 手机壳 (phone cases) and finishes in seconds, so you can test it first. - When the run ends, open the dataset and export it as JSON, CSV, Excel or another format.
A common workflow is to search a keyword first, pick interesting shops from the shopId field, and then run shop mode to list those shops' full catalogues.
Input
| Field | Type | Required | What it does | Default |
|---|---|---|---|---|
mode | string | Optional | search (search products by keyword) or shop (list all products of shops) | search |
keywords | array of strings | Optional | Search keywords in Chinese, for example 手机壳. They are searched one after the other until Max results is reached. Falls back to 手机壳 when empty. Used in search mode. | prefilled with 手机壳 |
shops | array of strings | Optional (needed for shop mode) | Shop IDs (the shopId field of search results) or shop links containing id=<digits> or shop_id=<digits>. Products are listed shop by shop until Max results is reached. | none |
maxResults | integer | Optional | Maximum number of products to return in total for this run, from 1 to 5000. The run stops as soon as it is reached. You are charged per item returned. | 20 |
Search products by keyword:
{"mode": "search","keywords": ["手机壳", "蓝牙耳机"],"maxResults": 100}
Keywords are searched one after the other. With maxResults 100, 蓝牙耳机 is only searched if 手机壳 returns fewer than 100 products.
List all products of a shop:
{"mode": "shop","shops": ["89304496"],"maxResults": 100}
Output example
A product from search mode (illustrative values):
{"type": "product","productId": "3737990489048220104","promotionId": "3738199207278936409","url": "https://haohuo.jinritemai.com/ecommerce/trade/detail/index.html?id=3737990489048220104&origin_type=2631","searchKeyword": "手机壳","title": "磁吸手机壳 肤感 镜头全包 防摔","imageUrl": "https://p9-aio.ecombdimg.com/obj/ecom-shop-material/example-main-image","whiteImageUrl": "https://p9-aio.ecombdimg.com/obj/ecom-shop-material/example-white-image","categoryLevel1": "3C数码及配件","categoryLevel2": "手机及配件","categoryLevel3": "手机保护套/壳","price": 58.0,"regularPrice": 359.0,"monthlySales": 3331,"positiveRate": 92.34,"shopId": "89304496","shopName": "示例数码配件旗舰店","shopLogoUrl": "https://p3-ecom-qualification-sign.ecombdimg.com/example-logo","shopScore": 81.0,"commissionRate": 10.0,"commissionAmount": 5.8,"cooperatingCreators": 647,"tags": ["流量扶持", "券", "运费险", "现货"],"recommendReason": "入选磁吸手机保护套/壳昨日视频带货热推榜","dailySales": [{"date": "2026-09-14", "sales": 44}, {"date": "2026-09-15", "sales": 50}]}
dailySales holds 30 days; the example shows the first two.
A product from shop mode (illustrative values; every field is present, the search-only ones are null):
{"type": "product","productId": "3737990489048220104","promotionId": "3738199207278936409","url": "https://haohuo.jinritemai.com/ecommerce/trade/detail/index.html?id=3737990489048220104","searchKeyword": null,"title": "磁吸手机壳 肤感 镜头全包 防摔","imageUrl": "https://p9-aio.ecombdimg.com/obj/ecom-shop-material/example-main-image","whiteImageUrl": null,"categoryLevel1": null,"categoryLevel2": null,"categoryLevel3": null,"price": 58.0,"regularPrice": null,"monthlySales": 3331,"positiveRate": null,"shopId": "89304496","shopName": null,"shopLogoUrl": null,"shopScore": null,"commissionRate": null,"commissionAmount": null,"cooperatingCreators": null,"tags": ["运费险", "现货"],"recommendReason": null,"dailySales": null}
How much does it cost?
The Actor uses pay-per-event pricing. You pay for two events:
| Event | Price (USD) | When it is charged |
|---|---|---|
run-start | $0.03 | Once per run, when the first request to the data source succeeds, even if that request returns nothing. Each extra keyword or shop that the run actually reaches adds one more start fee, charged before that keyword's or shop's first request. |
result | $0.008 | For each product returned |
Worked examples:
- 100 products from one keyword: $0.03 + 100 × $0.008 = $0.83.
- 100 products where the first keyword only has 60 products and the second keyword supplies the other 40: 2 × $0.03 + 100 × $0.008 = $0.86. If the first keyword already has 100 products, the second keyword is never searched and the run costs $0.83.
- The default of 20 products from one keyword: $0.03 + 20 × $0.008 = $0.19.
On the free Apify plan, a run returns at most 10 results in total; any paid Apify plan removes the limit. A free-plan run also makes only one request to the data source, so extra keywords or shops are not reached, and in shop mode a first shop with fewer than 10 products ends the run there. On the free Apify plan each account can run this Actor up to 3 times per 24 hours and 10 times per 7 days, within a small lifetime free allowance shared across all our Actors, and all free accounts share a daily free budget. When any of these limits is reached, the run stops before fetching anything and nothing is charged.
The start fee is not charged when the data source fails from the start or rejects the IDs, or when your spending limit cannot cover it, so a run that cannot reach the data costs nothing. Each start fee after the first is kept even if that keyword or shop then fails or returns nothing. You never pay for more than maxResults items, you are never charged for items that were not delivered, and the run stops by itself if your spending limit is reached.
Use cases
- Product selection for live-stream and short-video sellers: see what sells this month, at what price and with which commission, using
monthlySales,dailySales,priceandcommissionRate. - Affiliate selection for creators and agencies: find products that pay a good commission (
commissionRate,commissionAmount) and check how crowded they already are (cooperatingCreators). - Competitor and shop research: list a competitor's catalogue in
shopmode and see which products carry its sales. - Category and trend analysis: group products by
categoryLevel1tocategoryLevel3and follow the 30-daydailySalesseries. - China e-commerce market research: compare prices, discounts (
pricevsregularPrice), review rates and shop scores across keywords. - AI and data projects: clean product records for catalogues, price models and trend analysis.
Integrations and API
If you need a Douyin Shop product API for your own code, you can start this Actor through the Apify API and read the results from its dataset. You can also schedule runs (for example daily, to build your own sales history) and connect the Actor to Apify integrations such as webhooks, Make, Zapier or Google Sheets.
Example with the Python apify-client:
from apify_client import ApifyClientclient = ApifyClient("<YOUR_APIFY_TOKEN>")# 蓝牙耳机 is only searched if 手机壳 returns fewer than 100 productsrun = client.actor("clover_folktale/douyin-shop-scraper").call(run_input={"mode": "search","keywords": ["手机壳", "蓝牙耳机"],"maxResults": 100})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item)
Tips and limits
- A search request returns up to 30 products and a shop request up to 10, so large runs make many requests; expect a few seconds per request.
- Different pages of one search do not overlap. A single search can reach about 500 products. Add more keywords if you need more products.
- Keywords and shops are processed one after the other, and the next one is only reached when the previous one cannot fill
maxResults. maxResultscan be set up to 5000 per run.- Prices are in Chinese yuan (CNY).
priceis the price buyers pay after the shop's coupon;regularPriceis the price before it. commissionRateis the percentage creators earn on each sale;commissionAmountis the same in yuan at the current price.- A search that finds nothing, or a shop without products, is skipped, but its start fee is still charged once its request has succeeded. If too many inputs return nothing, the run stops to protect your budget.
- The Douyin Shop data source is sometimes unavailable for a few hours at a time, mostly for keyword search; shop mode is affected less often. The Actor keeps retrying for about a minute on its own. If the source is still down, the run fails without charging you and its status message says so. Try again later, or schedule the run to repeat every hour.
- Often empty fields:
regularPricewhen the product has no discount;positiveRatefor products without reviews yet;whiteImageUrl(about half of the products) andrecommendReasonfor many products;commissionRate,commissionAmountandcooperatingCreatorsfor products outside the creator alliance pool. Inshopmode all search-only fields are empty. - On the free Apify plan a run returns at most 10 results in total and makes only one request to the data source.
FAQ
Do I need a Douyin account or cookies?
No. You do not need a Douyin account, API keys, proxies or cookies.
Is it legal to scrape Douyin Shop?
The Actor returns only public data: what anyone sees on a Douyin Shop product page and in the creator alliance product pool (price, sales, shop name and score, the commission offered to creators). It returns no buyer data, no private shop data, and nothing like phone numbers or messages. You are responsible for how you use the data and for following the laws that apply to you.
How fresh is the data?
The data is collected when you start a run. monthlySales covers the last 30 days and dailySales gives one value per day for those 30 days. Schedule regular runs if you want to track changes over time.
Why are some fields empty?
Some fields only exist for some products, for example regularPrice only when there is a discount, and commission fields only for products in the creator alliance pool. shop mode fills a shorter field set. See Tips and limits for the full list.
How many products can I get?
Up to 5000 per run with maxResults. One search keyword reaches about 500 products, so use several keywords for larger runs. The free Apify plan is limited to 10 results per run and one request to the data source.
Can I schedule runs and export the data?
Yes. You can schedule runs in Apify Console or start them through the API, and export every dataset as JSON, CSV, Excel and other formats.
Can I search in English?
The keywords are expected in Chinese, for example 手机壳 or 蓝牙耳机. Product titles and categories are returned in Chinese.
Why did my run fail with "The data source is unavailable right now"?
The upstream source could not reach Douyin Shop during your run. You were not charged. These outages usually clear within a few hours; running again later, or on an hourly schedule, normally works.
A field or filter is missing. What can I do?
Open an issue from the Actor page and it will be looked at.
More tools from the same developer
- Douyin 抖音 Scraper - Videos, Comments, User IDs & IP Location
- Douyin Xingtu 巨量星图 Scraper - KOL Search & Rankings
- Taobao 淘宝 Scraper - Products, Prices, Sales & Shop Ratings
- 1688 阿里巴巴 Scraper - Wholesale Prices & Suppliers
- TikTok Shop Scraper - Products, SKUs, Reviews & Reviewer IDs
- Xiaohongshu 小红书 RedNote Scraper - Notes, Comments & User IP