Call /v1/tiktok-shop/top-products for your category, keep the records whose trend.stage is emerging or rising, check stock and creators, then add the winners to a watchlist so a webhook tells you when they move.
Most product research starts from a best-seller list. The problem is that a best-seller list shows what already sold. By the time a product is on it, every other seller in the category has seen it too.
What you want is the product that is gaining units fastest this week, while it is still small. That is what the trend block on every SignalCart record is for.
01Start from the top-products endpoint
Pick a category and a window. window=7d compares this week with the last one; origin=local keeps it to shops that ship from the US.
$ curl -G api.signalcart.io/v1/tiktok-shop/top-products \ -H "Authorization: Bearer $SIGNALCART_KEY" \ -d category=mens-tops \ -d origin=local \ -d window=7d
Each record comes back with the product, its shop, units sold and how much that changed over the window: sold_count, sold_delta and rank_change.
02Read the trend block
Every record carries a trend object, calculated from our own history of that item. It answers four questions: how much it grew against the last window, how fast, whether it is speeding up, and which stage it is in.
"trend": {
"window": "7d",
"metric": "units",
"growth": [value],
"acceleration": [value],
"stage": "emerging",
"confidence": "medium"
}03Filter to emerging and rising
You do not need to post-process anything. Filter by stage, set a minimum score and sort by trend score in the same call:
$ curl -G api.signalcart.io/v1/tiktok-shop/top-products \ -d category=mens-tops \ -d stage=emerging,rising \ -d min_score=80 \ -d sort=trend_score
04Check stock and creators before you commit
A product that is rising but out of stock, or carried by a single creator, is a weaker bet. Two follow-up calls tell you which one you are looking at:
- SKUs with live stock: whether the variants that sell are actually available, and how stock is moving.
- Affiliate creators: how many creators are selling it and how the units split between them.
If most units come from one creator, the trend may end when that creator stops posting. If units are spread across many small creators, the format is spreading on its own.
05Put the winners on a watchlist
Instead of re-running the query every morning, add the products you shortlisted to a watchlist. When an item changes stage, SignalCart sends a webhook to your endpoint.
$ curl -X POST api.signalcart.io/v1/watchlists \ -d name=mens-tops-rising \ -d items=[product_id],[product_id] \ -d webhook_url=https://your-app.com/hooks/signalcart
Webhooks and watchlists are on the Pro plan and above. See pricing for limits per plan.
FAQCommon questions
Does the trend block cost extra?
No. It is included in every record.
Can I do the same for Amazon?
Yes. Every source uses the same schema, so the same stage and min_score filters work on Amazon records.
Is this data public?
Yes. We only collect publicly visible product, storefront and social content, and never buyer data.
REFSources and method
Example requests use the public SignalCart API. Response values marked illustrative are examples, not measurements.