TikTok Shop Affiliate Finder - Discover Top Sellers by Product
Pricing
Pay per event
TikTok Shop Affiliate Finder - Discover Top Sellers by Product
Discover top-selling TikTok Shop affiliates and products. Find creators driving sales, track commissions, and identify winning products.
Pricing
Pay per event
Rating
0.0
(0)
Developer
George Kioko
Actor stats
0
Bookmarked
20
Total users
8
Monthly active users
4 days ago
Last modified
Categories
Share
TikTok Shop Affiliate Sales Scraper
Find affiliate creators with proven sales on any TikTok Shop product -- no paid CAPTCHA services required.
Paste a TikTok Shop product URL, and this actor scrapes the affiliate creator tab to return creators who have actually sold the product, complete with sales badges, profile links, and follower data. The built-in local CAPTCHA solver handles TikTok's slide puzzles automatically at zero extra cost.
How It Works
flowchart LRA["Product URL"] --> B["CAPTCHA Solving"]B --> C["Page Extraction"]C --> D["Creator Discovery"]D --> E["Sales Filtering"]E --> F["Structured Output"]style A fill:#ff6b6b,color:#fff,stroke:nonestyle B fill:#ffa726,color:#fff,stroke:nonestyle C fill:#42a5f5,color:#fff,stroke:nonestyle D fill:#ab47bc,color:#fff,stroke:nonestyle E fill:#66bb6a,color:#fff,stroke:nonestyle F fill:#26c6da,color:#fff,stroke:none
- Product URL -- You provide a TikTok Shop product page link
- CAPTCHA Solving -- The local solver (
solveSlidePuzzleLocally) handles slide puzzles using edge detection and darkness analysis -- no paid API needed - Page Extraction -- Playwright with stealth plugin loads the affiliate creators tab while evading detection
- Creator Discovery -- Scrolls and extracts all affiliate creators listed on the product
- Sales Filtering -- Filters creators by minimum sold badge threshold (default: 100+ sales)
- Structured Output -- Returns clean JSON with creator profiles, sales badges, and metadata
Architecture
graph TBsubgraph Actor["TikTok Shop Affiliate Sales Scraper"]PW["Playwright Browser"]ST["Stealth Plugin"]LC["Local CAPTCHA Solver"]PC["Paid CAPTCHA (Optional)"]endsubgraph LocalSolver["FREE Local CAPTCHA Engine"]FG["findGapByDarkness()"]FE["findGapByEdges()"]SP["solveSlidePuzzleLocally()"]endsubgraph OptionalPaid["Optional Paid Services"]SC["SadCaptcha"]CS["CapSolver"]endPW --> STST -->|"Anti-Detection"| TK["TikTok Shop"]TK -->|"Slide CAPTCHA"| LCLC --> FGLC --> FEFG --> SPFE --> SPSP -->|"Solved"| PWTK -.->|"Fallback"| PCPC -.-> SCPC -.-> CSstyle LC fill:#66bb6a,color:#fff,stroke:nonestyle LocalSolver fill:#e8f5e9,stroke:#66bb6astyle OptionalPaid fill:#fff3e0,stroke:#ffa726style Actor fill:#e3f2fd,stroke:#42a5f5
Key architectural decisions:
- Playwright + Stealth -- Bypasses TikTok's bot detection without being flagged
- Local CAPTCHA first --
findGapByDarkness()andfindGapByEdges()analyze the slide puzzle image locally using pixel-level analysis, saving you money - Paid CAPTCHA fallback -- SadCaptcha and CapSolver are supported if you prefer, but most users never need them
- Residential proxies recommended -- TikTok aggressively blocks datacenter IPs
FREE Local CAPTCHA Solving
This actor includes a built-in slide puzzle solver that works without any paid CAPTCHA service:
| Function | What It Does |
|---|---|
solveSlidePuzzleLocally() | Orchestrates the full solve: screenshot, analyze, slide |
findGapByDarkness() | Detects the puzzle gap by finding dark pixel clusters in the slide image |
findGapByEdges() | Uses edge detection algorithms to locate the gap position |
Result: Most TikTok slide CAPTCHAs are solved locally in under 2 seconds. You only pay for the actor run itself -- zero CAPTCHA API fees.
Input Schema
{"productUrl": "https://www.tiktok.com/@shop/product/1234567890","minSoldBadge": 100,"maxCreators": 50,"maxAttempts": 5,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]},"debug": false,"headless": true}
| Parameter | Type | Default | Description |
|---|---|---|---|
productUrl | string | required | TikTok Shop product page URL |
minSoldBadge | integer | 100 | Minimum number of sales a creator must have to be included |
maxCreators | integer | 50 | Maximum creators to return (max 500) |
maxAttempts | integer | 5 | Retry attempts for CAPTCHA solving (max 10) |
proxyConfiguration | object | Apify residential | Proxy settings. Residential proxies strongly recommended |
debug | boolean | false | Enable debug screenshots and verbose logging |
headless | boolean | true | Run browser in headless mode. Set false for debugging |
Output Schema
Each item in the dataset represents one affiliate creator:
{"creatorName": "sarah_beauty_tips","creatorUrl": "https://www.tiktok.com/@sarah_beauty_tips","profileImage": "https://p16-sign-sg.tiktokcdn.com/...","soldBadge": "1.2K sold","soldCount": 1200,"followerCount": "85.3K","productUrl": "https://www.tiktok.com/@shop/product/1234567890","scrapedAt": "2026-03-22T10:30:00.000Z"}
| Field | Type | Description |
|---|---|---|
creatorName | string | Creator's TikTok username |
creatorUrl | string | Direct link to the creator's TikTok profile |
profileImage | string | URL of the creator's avatar |
soldBadge | string | Raw sales badge text (e.g., "1.2K sold") |
soldCount | integer | Parsed numeric sales count |
followerCount | string | Creator's follower count |
productUrl | string | The product URL that was scraped |
scrapedAt | string | ISO timestamp of when the data was collected |
Use Cases
mindmaproot((TikTok Shop<br/>Affiliate Scraper))E-commerceFind top-selling affiliates for your productsRecruit proven creators for new launchesMonitor affiliate performance over timeAffiliate MarketingDiscover creators with real sales track recordsBuild outreach lists of high-converting affiliatesBenchmark affiliate sales across product categoriesCompetitor AnalysisSee which creators sell competitor productsTrack competitor affiliate recruitmentIdentify gaps in your affiliate networkProduct ResearchValidate product demand through affiliate salesFind trending products with active affiliatesAnalyze which niches have the most affiliate activity
Pricing
| Event | Cost |
|---|---|
| Actor start | $0.005 |
| Per creator found | $0.005 |
Example costs:
| Scenario | Creators | Total Cost |
|---|---|---|
| Quick check (10 creators) | 10 | $0.055 |
| Standard run (50 creators) | 50 | $0.255 |
| Deep scan (200 creators) | 200 | $1.005 |
| Maximum (500 creators) | 500 | $2.505 |
The local CAPTCHA solver means you pay $0 for CAPTCHA solving -- every other TikTok scraper charges extra for this.
AI Agent Integration
JavaScript (Apify Client)
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: 'YOUR_API_TOKEN' });const run = await client.actor('george.the.developer/tiktok-shop-affiliate-sales-scraper').call({productUrl: 'https://www.tiktok.com/@shop/product/1234567890',minSoldBadge: 100,maxCreators: 50,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(`Found ${items.length} affiliate creators with proven sales`);items.forEach(c => console.log(`${c.creatorName}: ${c.soldBadge}`));
Python (Apify Client)
from apify_client import ApifyClientclient = ApifyClient("YOUR_API_TOKEN")run = client.actor("george.the.developer/tiktok-shop-affiliate-sales-scraper").call(run_input={"productUrl": "https://www.tiktok.com/@shop/product/1234567890","minSoldBadge": 100,"maxCreators": 50,})items = client.dataset(run["defaultDatasetId"]).list_items().itemsprint(f"Found {len(items)} affiliate creators with proven sales")for creator in items:print(f"{creator['creatorName']}: {creator['soldBadge']}")
cURL
# Start the actorcurl -X POST "https://api.apify.com/v2/acts/george.the.developer~tiktok-shop-affiliate-sales-scraper/runs?token=YOUR_API_TOKEN" \-H "Content-Type: application/json" \-d '{"productUrl": "https://www.tiktok.com/@shop/product/1234567890","minSoldBadge": 100,"maxCreators": 50}'# Fetch results (replace DATASET_ID from the run response)curl "https://api.apify.com/v2/datasets/DATASET_ID/items?token=YOUR_API_TOKEN"
FAQ
Why does this actor exist?
TikTok Shop doesn't provide an API for affiliate creator data. This actor fills that gap by scraping the affiliate tab on product pages to give you structured data about which creators are actually generating sales.
Do I need to pay for CAPTCHA solving?
No. The built-in local solver handles TikTok's slide puzzles at zero cost. SadCaptcha and CapSolver are supported as optional fallbacks but most users never need them.
Which proxies should I use?
Residential proxies are strongly recommended. TikTok aggressively blocks datacenter IPs. Apify's residential proxy group works well -- just set useApifyProxy: true with apifyProxyGroups: ["RESIDENTIAL"].
What's the maximum number of creators I can scrape?
Up to 500 creators per run (maxCreators: 500). The default is 50, which covers most products.
How does the sales filtering work?
The minSoldBadge parameter sets the minimum sales threshold. Only creators whose badge shows at least that many sales are included in the output. Default is 100 -- set it lower to cast a wider net.
What if the CAPTCHA solver fails?
The actor retries up to maxAttempts times (default 5, max 10). The local solver uses two independent strategies (findGapByDarkness and findGapByEdges), so if one fails, the other often succeeds. Enable debug: true to see screenshots of failed attempts.
Can I use this with my AI agent or workflow?
Yes. The actor exposes a standard Apify API. Call it from any language, webhook, or orchestration tool (LangChain, AutoGPT, Make, Zapier, n8n). See the integration examples above.
Is this against TikTok's Terms of Service?
This actor scrapes publicly visible data from TikTok Shop product pages. Always review TikTok's ToS and ensure your use case complies with applicable laws and regulations.