# TikTok Shop Market Intelligence Suite (`nexascout/tiktok-shop-market-intelligence-suite`) Actor

Research TikTok Shop markets in one run. Rank products, compare sellers, discover creators and shoppable videos, analyze reviews and sentiment, and return evidence-backed opportunities.

- **URL**: https://apify.com/nexascout/tiktok-shop-market-intelligence-suite.md
- **Developed by:** [Scout](https://apify.com/nexascout) (community)
- **Categories:**
- **Stats:** 2 total users, 1 monthly users, 0.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $2,000.00 / 1,000 market intelligence reports

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

Actors are web data automations that power AI and operations. They run on the Apify platform to scrape websites, process data, connect APIs, and automate workflows.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.
Actors are written with capital "A".

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.
The best way to integrate Actors is as follows.

- **AI agents and MCP clients** — the [Apify MCP server](https://docs.apify.com/integrations/mcp.md) at `https://mcp.apify.com` (remote, streamable HTTP, OAuth on first use).
- **Agentic workflows and local Actor development** — [Agent Skills](https://apify.com/.well-known/agent-skills/index.json) with the [Apify CLI](https://docs.apify.com/cli/docs.md): `npm install -g apify-cli`, then `apify login`.
- **JavaScript/TypeScript projects** — the official [JS/TS client](https://docs.apify.com/api/client/js/docs.md): `npm install apify-client`.
- **Python projects** — the official [Python client](https://docs.apify.com/api/client/python/docs.md): `pip install apify-client`.
- **Any other language** — the [REST API](https://docs.apify.com/api/v2.md).

For usage examples, see the [API](#api) section below.

For more details, see Apify documentation as [Markdown index](https://docs.apify.com/llms.txt) and [Markdown full-text](https://docs.apify.com/llms-full.txt).

# README

## TikTok Shop Market Intelligence Suite

Create one evidence-backed TikTok Shop market report covering products, sampled sellers, public creators, video creatives, and review sentiment.

The Actor uses its own bounded HTTP and browser pipeline. It does not call external data APIs or other paid Actors, so one Suite run does not create hidden double billing.

### What the report answers

- Which captured products have the strongest public demand, rating, price, and evidence signals?
- Which sampled sellers lead within the captured product set?
- Which public creator and video leads are worth reviewing?
- Which hooks, calls to action, formats, and creative angles appear in public captions?
- What do captured public text reviews say, and how large is the sample?
- Where is coverage incomplete or evidence too weak for a confident conclusion?

### Analysis modes

- FULL: products, sampled sellers, creators, creatives, and public review sentiment.
- MARKET: products, sampled sellers, creators, and creatives without review-page extraction.
- PRODUCTS: the lightest product and sampled-seller report.

### Input fields

Provide known TikTok Shop product URLs, specific product niches, or both. FULL mode defaults to five products per niche, ten reviews per product, ten creatives per product, and a hard browser-page budget.

### Output contract

One dataset row represents one market intelligence report. It contains:

- top-level counts and top opportunities for fast table review;
- rankedProducts;
- sellers based only on the products captured in this report;
- creators and creatives with explicit association states;
- sentimentAnalyses with review sample sizes and topics;
- quality, coverage, and evidenceNotes;
- a pipeline declaration showing zero external data APIs and zero external Actors.

Missing public metrics remain null. Search-context videos are leads, not confirmed affiliate relationships. Public sold counts are cumulative signals unless TikTok explicitly exposes a fixed-period value.

### MCP and agent usage

Use this Actor when a user requests a combined TikTok Shop market study rather than one narrow extraction. For a single outcome, prefer the specialized NexaScout Actor. This keeps agent selection predictable and avoids unnecessarily expensive FULL reports.

### Local verification

Run npm ci, npm test, apify validate-schema, and apify push. Node.js 22 or newer is recommended and used by the Apify image.

# Actor input Schema

## `productUrls` (type: `array`):

Optional known products to include in the market study.

## `searchQueries` (type: `array`):

Specific product niches used to discover and compare TikTok Shop products.

## `region` (type: `string`):

TikTok Shop market code. This release supports the United States.

## `analysisMode` (type: `string`):

FULL includes products, sellers, creators, creatives, and public review sentiment. MARKET skips review-page extraction. PRODUCTS performs the lightest product-only study.

## `maxProductsPerQuery` (type: `integer`):

Maximum verified products included for each niche.

## `maxReviewsPerProduct` (type: `integer`):

Maximum public text reviews analyzed for each product in FULL mode.

## `minimumReviewTextLength` (type: `integer`):

Ignore public review text shorter than this many characters.

## `maxCreativesPerProduct` (type: `integer`):

Maximum public video/product associations retained per product in MARKET and FULL modes.

## `minVideoViews` (type: `integer`):

Exclude creatives below this public view count. Keep 0 when view count may be unavailable.

## `searchPublicTikTokVideos` (type: `boolean`):

Search indexed public TikTok video pages when product pages expose no videos. Search-context matches remain explicitly unverified.

## `maxBrowserRequests` (type: `integer`):

Hard cap across product, search, creative, and review pages.

## `proxyConfiguration` (type: `object`):

US residential proxy is recommended because TikTok Shop is geo-sensitive.

## `maxConcurrency` (type: `integer`):

Keep at 1–2 to reduce TikTok security challenges and proxy traffic.

## `navigationTimeoutSecs` (type: `integer`):

Maximum time allowed for each HTTP or browser navigation.

## `includeRawData` (type: `boolean`):

Include captured raw objects when available. This can greatly increase export size.

## `includeSearchFallbacks` (type: `boolean`):

Allow indexed product leads when live TikTok Shop validation fails.

## Actor input object example

```json
{
  "productUrls": [
    {
      "url": "https://shop.tiktok.com/us/pdp/hpbs-24000mah-power-bank-6000a-jump-starter-150psi-inflate/1731973421800919262"
    }
  ],
  "searchQueries": [
    "portable car jump starter"
  ],
  "region": "US",
  "analysisMode": "FULL",
  "maxProductsPerQuery": 5,
  "maxReviewsPerProduct": 10,
  "minimumReviewTextLength": 3,
  "maxCreativesPerProduct": 10,
  "minVideoViews": 0,
  "searchPublicTikTokVideos": true,
  "maxBrowserRequests": 50,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "US"
  },
  "maxConcurrency": 2,
  "navigationTimeoutSecs": 45,
  "includeRawData": false,
  "includeSearchFallbacks": false
}
```

# Actor output Schema

## `reports` (type: `string`):

One unified report per run with products, sellers, creators, creatives, sentiment, opportunities, and evidence notes.

## `runSummary` (type: `string`):

Report coverage, analysis mode, browser-budget diagnostics, and failures.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "searchQueries": [
        "portable car jump starter"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("nexascout/tiktok-shop-market-intelligence-suite").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = { "searchQueries": ["portable car jump starter"] }

# Run the Actor and wait for it to finish
run = client.actor("nexascout/tiktok-shop-market-intelligence-suite").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "searchQueries": [
    "portable car jump starter"
  ]
}' |
apify call nexascout/tiktok-shop-market-intelligence-suite --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,nexascout/tiktok-shop-market-intelligence-suite"
        }
    }
}

```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/ixWgKD4P6TeYg6km0/builds/xtRHfjtG2IUz3nhe4/openapi.json
