๐ฅ TikTok Shop Data Scraper : Creator Video Details
Pricing
from $4.99 / 1,000 results
๐ฅ TikTok Shop Data Scraper : Creator Video Details
๐๏ธ TikTok Shop Data Scraper (tiktok-shop-data-scraper) extracts product, pricing, and seller details from TikTok Shop fast. ๐ Great for market research, competitor tracking, and lead generation. โก Automate insightsโno manual scraping!
Pricing
from $4.99 / 1,000 results
Rating
0.0
(0)
Developer
API Empire
Maintained by CommunityActor stats
0
Bookmarked
5
Total users
5
Monthly active users
2 days ago
Last modified
Categories
Share
TikTok Shop Scraper โ Extract Products, Creator Videos & Reviews
TikTok Shop Data Scraper : Creator Video Details extracts product listings, affiliate creator promo videos, and customer reviews from TikTok Shop's US storefront โ by keyword, category, seller store, or product URL. Every run returns typed, normalized JSON: price, rating, real per-SKU stock, every creator's playable promo-video URL, cover image and upload date, plus a computed total-reach ranking across every affiliate video โ no HTML, no selectors, no parsing required. Point it at a keyword or a link and get structured TikTok Shop product and creator-video data ready for a spreadsheet, database, or AI pipeline.
๐๏ธ What is TikTok Shop Data Scraper : Creator Video Details?
TikTok Shop Data Scraper : Creator Video Details is an Apify Actor that scrapes TikTok Shop's public storefront and returns three linked entity types in one run: products, the affiliate creator promo videos driving sales for each product, and customer reviews. No TikTok or TikTok Shop account, login, or cookie is required โ the Actor connects directly and only escalates to a proxy when TikTok Shop blocks the direct request.
- ๐ Scrape products by keyword, category link, seller-store link, or direct product URL
- ๐ฅ Scrape every affiliate creator's promo video for a product โ playable URL, cover image, duration, upload date, and reach ranking
- ๐ Scrape customer reviews with reviewer, rating, SKU, country, and images
- ๐ค Export results as JSON, CSV, or XLSX straight from the Apify dataset
- ๐ No proxy management required โ a proxy escalation ladder is built in
๐ฆ What data does TikTok Shop Data Scraper : Creator Video Details collect?
The Actor returns three distinct data types per run, all nested inside one product record and each exposed as its own dataset view.
| Data Type | Key Fields | JSON Field Names |
|---|---|---|
| Products | title, price, discount, rating, sold count, stock, seller | title, price, original_price, discount, rating, sold_count, stock_quantity, is_sold_out, seller_id, seller_name |
| Creator / affiliate videos | playable video URL, cover image, duration, upload date, reach | content_url, cover_image_url, duration_ms, upload_time, play_count, total_creator_reach |
| Reviews | reviewer, rating, text, verified purchase, SKU, country, images | reviewer_name, rating, text, is_verified_purchase, sku_specification, country, images |
Need more TikTok Shop data?
If you need TikTok creator and audience data outside the TikTok Shop storefront โ general TikTok video metadata, creator profiles, or audience/lead signals not tied to a shoppable product โ API-Empire's TikTok Data Scraper: Creator & Audience Leads and TikTok Trending Creator Insights Scraper With Market Hashtags cover that side of the platform. This Actor stays focused on TikTok Shop's commerce surface: products, their affiliate promo videos, and reviews.
๐ ๏ธ Why not build a TikTok Shop scraper yourself?
TikTok Shop does publish an official Partner/Seller API through its Partner Center, but it is seller-gated: it requires a Partner Center account, an approved OAuth app, and it only reads products, orders, and inventory for your own or an explicitly authorized shop (as documented on TikTok Shop's Partner Center, checked 2026-08-04). There is no endpoint for reading another seller's catalog, browsing a category, or fetching a creator's affiliate promo videos โ exactly the data this Actor returns.
Building that yourself instead means reverse-engineering TikTok Shop's internal web endpoints, handling its US-only exit-IP requirement, rotating and escalating proxies whenever a session gets blocked, and re-parsing the page's embedded JSON every time TikTok Shop ships a front-end change โ all before you get to your own business logic. This Actor already handles discovery, proxy escalation, and JSON extraction, and hands you structured product, creator-video, and review records directly.
๐ฏ Why do developers and teams scrape TikTok Shop?
For affiliate marketers and UGC scouts
Affiliate teams need to know which creators are actually moving a product, not just who posted about it. Pull creator_videos and all_creators for a product line and you get every affiliate's play_count, like_count, and is_affiliate flag, ranked by video_count and reach. Sort by total_creator_reach across a catalog to find the products with the most affiliate-video exposure right now, then use content_url to pull up the actual video before reaching out to a creator to partner with.
For AI engineers and agent builders
Because every response is typed JSON with stable field names โ price, stock_quantity, creator_videos[], reviews[] โ an agent can call this Actor as a tool, get back structured TikTok Shop product and creator data, and reason over it directly without a scraping or parsing step. A shopping-research agent can compare price, sold_count, and total_creator_reach across products returned from one searchKeywords run and cite specific fields in its answer.
For e-commerce researchers and dropshippers
price, original_price, discount, sold_count, stock_quantity, and seller_name let you evaluate whether a product category is worth sourcing before committing. Point urls at a seller's /store/ link to pull that seller's full catalog and compare sold_count and stock levels across their listings in one run.
For brand and marketing teams
urls pointed at a competitor's seller store or category surfaces their live pricing, discounting, and sold-count trends, while creator_videos and total_creator_reach show which affiliate creators are already promoting a competing product โ useful input for your own creator outreach or competitive positioning.
๐งญ How to scrape TikTok Shop (step by step)
- Open TikTok Shop Data Scraper : Creator Video Details on the Apify Store or in your Apify Console.
- Provide at least one search keyword or TikTok Shop URL (product, category, or seller-store link) โ no field is strictly required by the schema, but the run exits immediately with a warning if both are empty.
- Set
maxProducts, decide whether to fetch reviews (includeReviews) and full creator-video records (includeCreatorVideos), and pick a proxy tier if you want to skip the automatic escalation. - Click Start and watch the live log โ each product is pushed to the dataset the moment it finishes.
- Open the Output tab, pick a dataset view (Products, Creator Videos, Creator Reach Ranking, Top Creators, or Reviews), and download as JSON, CSV, or XLSX.
What to do when TikTok Shop changes its structure
This Actor is actively maintained. When TikTok Shop changes its page structure or internal API responses, the extraction logic is updated on the backend so the output schema and field names stay the same on your end โ no re-integration required.
โฌ๏ธ Input
No parameter is required. Provide searchKeywords and/or urls to give the Actor something to scrape.
| Parameter | Required | Type | Description | Example Value |
|---|---|---|---|---|
searchKeywords | No | array | Keywords to search TikTok Shop for. Each keyword runs its own search. | ["shoes"] |
urls | No | array | TikTok Shop URLs โ type is auto-detected: product (/pdp/), category (/c/), or seller/store (/store/). | ["https://shop.tiktok.com/us/pdp/123"] |
maxProducts | No | integer | Max products to fetch per keyword / category / seller. Min 10, max 100000, default 10. | 20 |
includeReviews | No | boolean | Fetch product reviews too. Not every product exposes accessible reviews. Default false. | false |
maxReviews | No | integer | Max reviews to fetch per product. Min 1, max 100, default 10. | 10 |
sortBySoldCount | No | string | none (no sorting), highest_first, or lowest_first. Only affects a snapshot saved to the key-value store โ the Output table still fills in live. Default none. | highest_first |
includeCreatorVideos | No | boolean | Output the full per-video creator/affiliate record for every promo video, not just the aggregated top-5 summary. Default true. | true |
maxCreatorVideosPerProduct | No | integer | Cap on full per-video creator records kept per product. Ranking and reach are computed from every video fetched regardless of this cap. Min 1, max 500, default 50. | 50 |
minCreatorVideoPlays | No | integer | Only include a creator video in the full record list if it has at least this many plays. Min 0, default 0. | 0 |
maxRetries | No | integer | Max retry attempts per request before giving up. Min 1, max 10, default 5. | 5 |
requestDelay | No | integer | Delay between requests, in milliseconds. Min 0, max 2000, default 0. | 0 |
maxConcurrency | No | integer | Max concurrent requests. Min 1, max 20, default 20. | 20 |
timeout | No | integer | Per-request timeout, in seconds. Min 10, max 300, default 60. | 60 |
proxyConfiguration | No | object | Apify Proxy configuration. Default connects directly and auto-escalates to Datacenter then Residential (US). | {"useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"]} |
Example JSON input
{"searchKeywords": ["shoes"],"urls": [],"maxProducts": 20,"includeReviews": false,"maxReviews": 10,"sortBySoldCount": "highest_first","includeCreatorVideos": true,"maxCreatorVideosPerProduct": 50,"minCreatorVideoPlays": 0,"maxRetries": 5,"requestDelay": 0,"maxConcurrency": 20,"timeout": 60,"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }}
Common pitfall: leaving both searchKeywords and urls empty. The Actor logs a warning and ends the run with zero rows rather than guessing what to scrape โ you need at least one keyword or URL.
โฌ๏ธ Output
Each scraped product is one dataset record, returned as typed JSON. The Actor is charged (via the row_result pay-per-event) once per pushed record โ including degraded fallback records described below, since they still carry real product data.
Scraped product (full detail, source: "product_page")
{"product_id": "1729496283565954438","title": "Women's Low-Top Sports Shoes","url": "https://shop.tiktok.com/us/pdp/1729496283565954438","price": 36.27,"price_formatted": "36.27","currency": "USD","original_price": 43.69,"discount": "17%","rating": 4.7,"review_count": 207,"seller_id": "8652615273335460303","seller_name": "Juyu Footwear","image_url": "https://p16-oec-va.ibyteimg.com/example.webp","sold_count": 2743,"is_sold_out": false,"stock_quantity": 374,"creator_count": 13,"has_creator_data": true,"total_creator_videos": 19,"top_creators": [{ "nickname": "amber", "video_count": 2, "total_plays": 336691, "total_likes": 1275, "is_affiliate": true }],"reviews_fetched": 0,"reviews_accessible": true,"scraped_at": "2026-08-02T00:00:00","source": "product_page","total_creator_reach": 788774,"all_creators": [{ "rank": 1, "creator_id": "6748631531088675845", "nickname": "amber", "video_count": 2, "total_plays": 336691, "total_likes": 1275, "is_affiliate": true }],"creator_videos": [{"item_id": "7635518361912216845","author_id": "6748631531088675845","author_name": "amber","author_avatar_url": "https://p16-oec-va.ibyteimg.com/avatar.webp","title": "#sneakers #gymwear #gymshoes","content_url": "https://v16m-default.tiktokcdn-us.com/example/video/tos/example.mp4","cover_image_url": "https://p16-oec-va.ibyteimg.com/cover.jpeg","duration_ms": 8367,"play_count": 172572,"like_count": 700,"upload_time": "2026-05-03T05:11:08+00:00","is_affiliate": true}]}
reviews (an array of objects shaped like the sample below) is only present when includeReviews is true and at least one review was fetched:
{"review_id": "7301...","rating": 5,"text": "True to size, great quality.","reviewer_name": "j***n","review_time": 1748812345,"is_verified_purchase": true,"sku_specification": "Size 8 / Black","country": "US","images": ["https://p16-oec-va.ibyteimg.com/review1.webp"]}
Degraded record when the detail page is blocked (source: "listing_card")
If TikTok Shop's product-detail page is temporarily unavailable for a given product, the row is never dropped โ it falls back to the real title, price, rating, seller, and sold-count data already captured during discovery. This variant's headline creator-video fields genuinely require the full detail page's video_list component, so a fallback row reports them honestly empty rather than fabricating them:
{"product_id": "1729496283565954999","title": "Men's Running Shoes","url": "https://shop.tiktok.com/us/pdp/1729496283565954999","price": 28.99,"price_formatted": "28.99","currency": "USD","rating": 4.5,"review_count": 42,"seller_id": "8652615273335460111","seller_name": "SwiftStep","image_url": "https://p16-oec-va.ibyteimg.com/example2.webp","sold_count": 1180,"is_sold_out": null,"stock_quantity": null,"creator_count": 0,"has_creator_data": false,"total_creator_videos": 0,"reviews_fetched": 0,"reviews_accessible": false,"scraped_at": "2026-08-02T00:00:00","source": "listing_card","total_creator_reach": 0,"all_creators": [],"creator_videos": []}
A listing_card row never carries original_price, discount, top_creators, or reviews keys โ those fields aren't derivable from a listing card and are omitted rather than faked. Filter on source == "product_page" if you only want rows with full creator-video detail.
Other notes on the shape:
is_sold_out/stock_quantityarenullwhen the payload has no per-SKU inventory data for that product โ never a faked value.original_priceanddiscountare only present on a record when the product actually has a discount.top_creatorsis only present whencreator_count > 0.- Creator follower counts and profile URLs are not returned: TikTok Shop's product-page payload only exposes a creator's display name and numeric id, never a follower count, and resolving one requires a separate login-gated mechanism this Actor does not use.
- Five dataset views are available in the Apify Console: Products, Creator Videos, Creator Reach Ranking, Top Creators, and Reviews โ each surfaces a different slice of the same underlying record.
๐ How does TikTok Shop Data Scraper : Creator Video Details compare to other TikTok Shop scrapers?
| Feature | TikTok Shop Data Scraper : Creator Video Details | Generic alternative |
|---|---|---|
| Output format | Typed, normalized JSON via an Apify dataset | Often raw HTML or ad-hoc scripts requiring manual parsing |
| Entity coverage | Products, full affiliate creator-video records, and reviews in one run | Typically products only, or creator data without commerce fields |
| Creator-video detail | Full per-video record โ playable URL, cover image, duration, upload date โ plus a full reach ranking | Usually a follower-count summary at best, no per-video record |
| Input flexibility | Keyword, category, seller-store, or product URL โ auto-detected and combinable in one run | Usually one input mode only |
| Proxy / anti-bot handling | Built-in escalation ladder (direct โ Datacenter โ sticky Residential) | Often requires you to supply and manage your own proxies |
If you're building an AI agent or RAG pipeline, the output-format row is the decision-maker โ parsing HTML inside an agent loop is a reliability failure mode, not a feature.
๐ข How many products can you scrape with TikTok Shop Data Scraper : Creator Video Details?
maxProducts is bounded by the input schema at 10 minimum and 100,000 maximum (default 10) โ that ceiling is this Actor's own configured limit, not a discovered TikTok Shop cap. Internally, discovery walks the listing endpoint in pages of 20 products, retrying on a fresh IP up to three times if the first page looks degraded, and keeps paging until it hits maxProducts or the listing runs out of pages. maxReviews (1โ100) and maxCreatorVideosPerProduct (1โ500) are separate per-product caps โ the reach and ranking figures (total_creator_reach, all_creators) are always computed from every promo video fetched, regardless of the maxCreatorVideosPerProduct cap on the stored per-video list. There is no documented platform-side result cap beyond what TikTok Shop's own listing pagination returns for a given keyword, category, or seller.
๐ Integrate TikTok Shop Data Scraper : Creator Video Details and automate your workflow
TikTok Shop Data Scraper : Creator Video Details works with any language or tool that can send an HTTP request or use the Apify SDK.
REST API integration
from apify_client import ApifyClientclient = ApifyClient("<APIFY_API_TOKEN>")run = client.actor("<ACTOR_ID>").call(run_input={"searchKeywords": ["shoes"],"maxProducts": 20,"includeCreatorVideos": True,})for item in client.dataset(run["defaultDatasetId"]).iterate_items():print(item["title"], item["total_creator_reach"])
Works in Python, Node.js, Go, Ruby, cURL.
Automation platforms (n8n, Make)
n8n โ Apify publishes an official community node (@apify/n8n-nodes-apify) with a "Run Actor" and "Get Dataset Items" operation; point it at this Actor's ID and stream creator_videos or all_creators straight into a downstream n8n step.
Make โ Apify's own Make integration lets you run an Actor and fetch its dataset items as a scenario module, so you can pipe scraped TikTok Shop rows into a Google Sheet, Airtable base, or Slack alert without writing a script.
โ๏ธ Is it legal to scrape TikTok Shop?
Yes โ TikTok Shop Data Scraper : Creator Video Details only collects data TikTok Shop already serves to any visitor's browser on its public storefront: product listings, prices, stock, reviews, and creators' public promo-video pages. No login, private account, or DM content is accessed.
The core dataset โ titles, prices, stock, sold counts, and seller records โ is commercial/product data, so your compliance obligation runs through TikTok's Terms of Service and database-rights law in your jurisdiction, not privacy law. Reviewer and creator display names (reviewer_name, author_name, nickname) are the public handles TikTok Shop already publishes on the review or promo video; storing or processing them in bulk can still fall under GDPR/CCPA depending on your jurisdiction, since a display name can identify a natural person. Consult legal counsel for commercial use cases involving bulk personal data.
โ Frequently asked questions
Does TikTok Shop Data Scraper : Creator Video Details work without a TikTok Shop account?
Yes. No TikTok or TikTok Shop login, cookie, or account is required โ the Actor connects directly to the public storefront and only needs your Apify account to run.
How often is the scraped data updated?
Every run fetches TikTok Shop's live product, review, and creator-video data fresh โ nothing is served from a cache between runs.
What happens if a product's detail page is temporarily blocked?
The row is never dropped. It falls back to the real title, price, rating, seller, and sold-count data already captured during discovery, with "source": "listing_card" instead of "product_page". Because full creator-video detail only exists on the detail page, that fallback row reports creator_videos, all_creators, and total_creator_reach as honestly empty rather than fabricated.
Can I scrape private or login-gated TikTok Shop content?
No. Only publicly accessible product listings, reviews, and promo videos already published on TikTok Shop's storefront are returned โ a seller's private dashboard, order data, or DM-gated content is out of scope.
Is there a free way to try it?
Apify's free plan gives new accounts starting usage credits, so you can test this Actor without a paid subscription beyond an Apify account. The per-row price for the row_result charged event is listed on the Actor's Store page.
Does TikTok Shop Data Scraper : Creator Video Details work for AI agent workflows and LLM pipelines?
Yes. It's callable as an HTTP endpoint via apify-client (or any HTTP client) from any agent framework. Every response is typed JSON with stable field names โ no HTML, no selectors, no parsing step before passing results to an LLM.
How does it handle TikTok Shop's anti-bot system?
With an escalation ladder โ direct connection first, then a Datacenter (US) proxy, then a sticky Residential (US) proxy that stays pinned for the rest of the run โ plus automatic retries with backoff and a soft-fail check on each response. When a product's detail page still can't be reached after that, the Actor falls back to listing-card data rather than failing the row.
Does it return data in a format LLMs can use directly?
Yes. Typed, normalized JSON with stable field names โ no HTML, no selectors, no parsing. Pass it directly into an LLM context window, index it into a vector store, or route it through an agent tool.
Can I use it without managing proxies?
Yes. The Actor starts with a direct connection and escalates to Datacenter then Residential proxies automatically; you can also select a proxy tier yourself in proxyConfiguration if you want to skip straight to Residential for maximum reliability.
Does it include creator follower counts or profile links?
No. TikTok Shop's product-page payload only exposes a creator's display name and numeric id for each promo video, never a follower count or profile URL โ this Actor never fabricates that data to fill the gap.
What happens when TikTok Shop changes its structure or blocks the scraper?
The Actor is maintained, and the output schema โ field names and types โ stays stable on your end even when TikTok Shop's internal pages change, so your existing integration keeps working.
๐ฌ Your feedback
Found a bug, or need a field this Actor doesn't return yet? We want to know. Reach API-Empire through the Actor's page on the Apify Store or via Apify Console's built-in support โ both are monitored and used to prioritize fixes and new fields.