Use this skill to research public TikTok Shop stores: discover and filter stores, inspect one store, trace its creators/products/videos, or browse most-promoted and top-selling store rankings.
Core Concepts
- Normal endpoints require one lowercase marketplace code:
br,de,es,fr,gb,id,it,jp,mx,my,ph,sg,th,us,vn. - Search and relationship endpoints return at most 10 records per page; ranking endpoints accept 1–20.
- Store detail may return
data.items,data.core.items, anddata.channel.items. Wheninclude=core,channel, read all three branches. - Monetary fields are usually
{ "unit": "US", "value": 31 }. Preserve the returned unit and inspect the runtime type before formatting. - Each endpoint call is billed independently. Call only the endpoint needed for the current question; successful calls use a 24-hour local cache keyed by endpoint, gateway, API Key fingerprint, and parameters.
Data Fields
| Field | Meaning |
|---|---|
data.total_count |
Total matching records |
data.items |
Store, creator, product, video, or ranking rows |
data.core.items |
Optional store scale and 30-day core metrics |
data.channel.items |
Optional 30-day video/live/product-card/creator channel metrics |
id / seller_id |
Store or related-entity identifier |
shop_name / region |
Store identity and marketplace |
shop_rating |
Store rating |
shop_product_count |
Current product count when supplied |
shop_total_sold_count / shop_total_gmv |
Lifetime sales and GMV when supplied |
shop_sold_count_for_last_7_days / shop_gmv_for_last_7_days |
Recent store performance |
interval_* |
Metrics for the requested ranking window |
Relationship rows use endpoint-specific tiktok_seller_* fields. Read references/api.md for the exact request definitions, production-validated response paths, and observed field catalog. Do not assume one shared row schema.
Endpoints
| Intent | Endpoint | Script | Points/call |
|---|---|---|---|
| Filter and discover stores | /chuhaijiang/sellers/search |
chuhaijiang_seller_search.py |
18 |
| Inspect one store | /chuhaijiang/sellers/detail |
chuhaijiang_seller_detail.py |
9 |
| Find associated creators | /chuhaijiang/sellers/related-creators |
chuhaijiang_seller_related_creators.py |
18 |
| List store products | /chuhaijiang/sellers/related-products |
chuhaijiang_seller_related_products.py |
18 |
| Find associated videos | /chuhaijiang/sellers/related-videos |
chuhaijiang_seller_related_videos.py |
18 |
| Browse most-promoted stores | /chuhaijiang/sellers/rankings/most-promoted |
chuhaijiang_seller_rank_most_promoted.py |
18 |
| Browse top-selling stores | /chuhaijiang/sellers/rankings/top-selling |
chuhaijiang_seller_rank_top_selling.py |
18 |
Route one intent to one endpoint. Use a store id from search or ranking results for detail and relationship calls. Ask before making additional paid drill-down calls the user did not request.
Parameter Guide
country: required lowercase marketplace code.id: required for detail and relationship endpoints; send it as a string to preserve precision.page: starts at 1.pageSizeis optional and must not exceed the endpoint limit.- Search accepts
keyword,category,sellerType, rating/7-day sales/7-day GMV ranges, andsort(field:ascorfield:desc). - Detail accepts
include=core,include=channel, or both values in either comma-separated order (core,channel/channel,core). - Both rankings require
date(YYYYMMDD) andgranularity(daily,weekly,monthly,0,1, or2); optionalshopTypeis one of1,2,3,4. - Use the camelCase request names in
references/api.md; do not send the upstream snake_case aliases.
How to Call
- API Endpoints:
POST /chuhaijiang/sellers/search、POST /chuhaijiang/sellers/detail、POST /chuhaijiang/sellers/related-creators、POST /chuhaijiang/sellers/related-products、POST /chuhaijiang/sellers/related-videos、POST /chuhaijiang/sellers/rankings/most-promoted、POST /chuhaijiang/sellers/rankings/top-selling(for full parameters/responses/error codes, seereferences/api.md) - Python Script: use respectively
python scripts/chuhaijiang_seller_search.py '<JSON 参数>' [--inline]、chuhaijiang_seller_detail.py、chuhaijiang_seller_related_creators.py、chuhaijiang_seller_related_products.py、chuhaijiang_seller_related_videos.py、chuhaijiang_seller_rank_most_promoted.py、chuhaijiang_seller_rank_top_selling.py - Cost Constraints: store details cost 9 compute units per call; the other six endpoints cost 18 compute units per call. By default, the business entry script caches only successful responses for 24 hours; business-successful empty results can also be cached; the cache is isolated by the current working directory, calling identity, gateway, endpoint, and complete request parameters. When the same combination hits, it outputs
Cache hit, and no new paid request will be made. HTTP or business failures are not cached;--inlinedoes not bypass the cache;--no-cacheforces a real request and may consume compute units again, so use it only when the user explicitly agrees to additional consumption or when debugging.
Output Strategy (Default Script Behavior):
- Alwayswrite the complete response to
<cwd>/linkfox/<YYYY-MM-DD>/<session>/data/linkfox-chuhaijiang-tiktok-shop-<timestamp>.json(<cwd>is the working directory when the script is executed, which in Claude Code is the current project directory;<session>is taken from the environment variableSESSION_ID, automatically aggregated by user task;writing to /tmp is prohibited, and an error is reported if the current directory is not writable) - Response body ≤ 8 KB: after writing to disk, print the complete JSON to stdout
- Response body > 8 KB: after writing to disk, stdout outputs only a summary (top-level fields, business total count, length of the largest list field + first 3 samples)
- Add
--inlineto force full printing to stdout (also written to disk)
Data Reading Suggestions: first look at the summary to judge whether it is sufficient; when specific fields are needed, prefer using jqorConvertFrom-Json to extract on demand from the saved json file, avoiding bringing the entire JSON into context.
On Windows hosts whose Python stdout still uses GBK, set PYTHONIOENCODING=utf-8 before printing rows that may contain emoji. This affects console rendering only; the UTF-8 JSON file is already saved first.
Resolving Authentication and Compute Unit Issues
When the following abnormal situations occur, use references/onboarding.md to guide resolution:
Abnormal Situation
- API Key not configured: the environment variable is not configured
LINKFOX_AGENT_API_KEY, andLINKFOXAGENT_API_KEY。 - Response 401 or 402 status code
- Response indicates insufficient compute units or balance: the message contains "insufficient compute unit balance/insufficient billing/insufficient balance/quota exceeded/insufficient balance/package expired/recharge required/please recharge", or similar meaning.
Usage Examples
python scripts/chuhaijiang_seller_search.py '{"country":"us","keyword":"beauty","minRating":4,"page":1,"pageSize":3,"sort":"gmv_7d:desc"}'
python scripts/chuhaijiang_seller_detail.py '{"country":"us","id":"7495205878591949358","include":"core,channel"}'
python scripts/chuhaijiang_seller_related_creators.py '{"country":"us","id":"7495205878591949358","page":1,"pageSize":10}'
python scripts/chuhaijiang_seller_related_products.py '{"country":"us","id":"7495205878591949358","page":1,"pageSize":10}'
python scripts/chuhaijiang_seller_related_videos.py '{"country":"us","id":"7495205878591949358","page":1,"pageSize":10}'
python scripts/chuhaijiang_seller_rank_most_promoted.py '{"country":"us","date":"20260824","granularity":"daily","pageSize":10}'
python scripts/chuhaijiang_seller_rank_top_selling.py '{"country":"us","date":"20260824","granularity":"daily","pageSize":10}'
Display Rules
- State the marketplace, filters, current page, total count, and ranking date/granularity used.
- For store lists, show store name, rating, product count, recent or interval sales/GMV, creator reach, region, and store ID when available.
- For detail, group base profile, core metrics, and channel metrics; do not ignore
data.core.itemsordata.channel.items. - For creators, products, and videos, show the related entity ID plus its returned performance metrics; retain the store ID for context.
- Preserve currency units and field time windows. Do not relabel
unit: USor mix lifetime, 7-day, 30-day, and ranking-window values. - Never expose API keys. Treat URLs as expiring when the response contains signed query parameters.
Important Limitations
- This is public market intelligence, not private seller-center data.
- It does not manage orders, inventory, listings, fulfillment, affiliates, advertising, or store authorization.
- Some fields may be absent or
null; preserve unknown fields and inspect runtime types before rendering. - Search and rankings change over time. Report the request date and ranking window with results.
sellerTypebelongs to search, whileshopTypebelongs to rankings. Do not interchange them.- Do not invent unsupported filters or compensate by repeatedly calling other paid endpoints.
User Expression & Scenario Quick Reference
Applicable:
- Store Discovery and Details: "Use Chuhaijiang to filter US TikTok beauty stores", "Use Chuhaijiang to view this store's details".
- Relationship Drilling: "Check the creators this TikTok store collaborates with", "View in-store products", "Find this store's sales videos".
- Store Rankings: "Use Chuhaijiang to view the US TikTok store trending ranking", "Use Chuhaijiang to check the TikTok store sales ranking".
- Combined Analysis: "First filter stores with high 7-day GMV, then analyze their creators, products, and videos".
Adjacent: General TikTok store ranking or detail requests without a source should use linkfox-kalodata-tiktok-shop. Use the EchoTik seller skills when the user asks for EchoTik fields or multi-period seller profiles. Use official TikTok Shop skills for the user's authorized seller-center operations.
Not applicable: order handling, stock or listing changes, fulfillment, store authorization, ad campaign changes, non-TikTok marketplaces, or a request naming another data provider.
Compute Unit Consumption Rules
Billing is per endpoint: shop details 9 compute units per call; shop search, associated creators, associated products, associated videos, and the two types of rankings 18 compute units per call.
Users will be charged for compute unit consumption. Before high-frequency calls or multi-endpoint drill-downs, first explain the estimated number of calls and compute unit consumption.
Feedback: Use the Feedback API in references/api.md only when the user explicitly asks to submit feedback or explicitly authorizes submission after an issue is identified. Summarize and sanitize the content; never include API keys, phone numbers, raw user messages, or unrelated task context.
For more high-quality, professional cross-border e-commerce skills, visit LinkFox Skills.