# TikTok Shop Creator Insights Scraper (`fetch_cat/tiktok-shop-creator-insights-scraper`) Actor

Export public TikTok creator profiles, audience-size counters, and available Shop performance signals from creator handles or profile URLs.

- **URL**: https://apify.com/fetch\_cat/tiktok-shop-creator-insights-scraper.md
- **Developed by:** [Hanna Nosova](https://apify.com/fetch_cat) (community)
- **Categories:** Social media, Marketing, E-commerce
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $0.01 / 1,000 creator insight export pairs

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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 Creator Insights Scraper

Use this **TikTok Shop creator scraper** to export public creator profiles by handle or public profile URL. Each row keeps the requested source, canonical profile URL, public audience counters, and available Shop-related signals together so creator teams can evaluate known prospects without mixing data from unrelated accounts.

It is built for creator shortlisting, influencer research, outreach preparation, and repeatable TikTok creator profile export workflows. The Actor returns only values found on public creator surfaces; unavailable commerce and audience-detail fields remain `null` rather than being estimated.

### Input recipe

```json
{
  "handles": ["dealswithty", "@khaby.lame"],
  "region": "US",
  "maxItems": 2,
  "includeShopSignals": true
}
```

### Example output

```json
{
  "handle": "dealswithty",
  "profileUrl": "https://www.tiktok.com/@dealswithty",
  "displayName": "Deals With Ty",
  "verified": false,
  "followerCount": 12345,
  "likeCount": 67890,
  "commerceUser": true,
  "productCategories": ["Beauty & Personal Care"],
  "gmvRange": null,
  "averageViews": null,
  "sourceInput": "dealswithty",
  "scrapedAt": "2026-08-28T00:00:00.000Z"
}
```

### Who is it for?

- **Creator and affiliate teams** building a list of known TikTok creators.
- **Influencer marketers** who need portable public profile counters for planning and reporting.
- **Research and operations teams** that need a TikTok creator analytics scraper they can call from an API, schedule, or automation.
- **Agencies** preparing creator CRM records from public handles supplied by a client.

### What you get

| Field | Description |
| --- | --- |
| `handle`, `profileUrl`, `displayName` | Canonical public creator identity. |
| `avatarUrl`, `bio`, `verified` | Public profile presentation. |
| `followerCount`, `followingCount`, `likeCount`, `videoCount` | Public profile counters. |
| `commerceUser` | Public commerce-account flag when it is present in the profile payload. |
| `productCategories`, `gmvRange`, `averageCommissionRateRange` | Target-bound public creator-commerce signals when available. |
| `averageViews`, `engagementRate` | Public content-performance aggregates when available. |
| `analyticsSourceUrl`, `analyticsGeneratedAt` | Provenance and freshness for public analytics values. |
| `sourceUrl`, `sourceInput`, `scrapedAt` | Requested-input and collection provenance. |

### Input settings

| Input | Description |
| --- | --- |
| `handles` | Required list of TikTok handles (with or without `@`) or public `tiktok.com/@handle` URLs. |
| `region` | Optional Shop market hint. It is never treated as a creator attribute. |
| `maxItems` | Maximum unique profiles to export, from 1 to 100. |
| `includeShopSignals` | Opt in to available public Shop signals. Unsupported values are omitted or `null`. |

### TikTok creator profile export workflow

1. Start with handles or profile URLs your team already knows.
2. Keep `maxItems` low while validating an input list.
3. Export the dataset to CSV, JSON, Excel, or your downstream system.
4. Use `sourceInput` and `sourceUrl` to trace every row back to the requested creator.
5. Re-run when you need a refreshed public profile snapshot.

### Use cases

- Build a creator prospect list from known handles.
- Enrich a creator CRM with public bio text and audience counters.
- Compare public profile signals before outreach.
- Keep a research spreadsheet current with a scheduled Apify run.
- Feed public TikTok creator profiles into an internal matching or review workflow.

### Pricing

The Actor charges a small one-time **run start** fee and one **creator insight export pair** event for every two dataset rows produced. An odd final row is charged as one pair event. All subscription tiers use the current minimum pair-event price shown on the Actor’s [Pricing tab](https://apify.com/fetch_cat/tiktok-shop-creator-insights-scraper/pricing).

No creator-row event is charged for a profile that does not produce a dataset row. Your Apify account’s plan determines the applicable tier.

### Input recipes

#### One public profile

```json
{
  "handles": ["dealswithty"],
  "maxItems": 1,
  "includeShopSignals": false
}
```

#### Batch of known creators

```json
{
  "handles": ["dealswithty", "@khaby.lame", "https://www.tiktok.com/@addisonre"],
  "region": "US",
  "maxItems": 3,
  "includeShopSignals": true
}
```

### API usage

#### cURL

```bash
curl "https://api.apify.com/v2/acts/fetch_cat~tiktok-shop-creator-insights-scraper/runs?token=YOUR_API_TOKEN" \
  -H "content-type: application/json" \
  -d '{"handles":["dealswithty"],"maxItems":1}'
```

#### JavaScript

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

const client = new ApifyClient({ token: process.env.APIFY_TOKEN });
const run = await client.actor('fetch_cat/tiktok-shop-creator-insights-scraper').call({
  handles: ['dealswithty'], maxItems: 1,
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);
```

#### Python

```python
from apify_client import ApifyClient

client = ApifyClient("YOUR_API_TOKEN")
run = client.actor("fetch_cat/tiktok-shop-creator-insights-scraper").call(
    run_input={"handles": ["dealswithty"], "maxItems": 1}
)
items = client.dataset(run["defaultDatasetId"]).list_items().items
print(items)
```

### MCP and AI-agent use

Add this Actor to an Apify MCP client with:

```text
https://mcp.apify.com?tools=fetch_cat/tiktok-shop-creator-insights-scraper
```

An AI agent can then run the same validated handle-based lookup and receive structured creator rows for a research workflow.

#### Claude Desktop setup

```bash
claude mcp add apify --transport http "https://mcp.apify.com?tools=fetch_cat/tiktok-shop-creator-insights-scraper"
```

Or add an HTTP MCP server in your client configuration:

```json
{"mcpServers":{"apify":{"url":"https://mcp.apify.com?tools=fetch_cat/tiktok-shop-creator-insights-scraper"}}}
```

Example prompt: “Export public profile counters for these TikTok creator handles and preserve the source URL on every row.”

### Tips

- Use handles you already know for the most reliable results.
- Duplicated handles are processed once.
- Keep `region` as a market hint only; it does not establish a creator’s location or Shop eligibility.
- Preserve `sourceInput` when you join this dataset with another system.

### Limits and data availability

- Public profile changes and anti-automation controls can cause an individual profile to be skipped; already collected rows are preserved.
- Shop performance and audience-detail values are returned only when a public, target-bound source exposes them.
- The Actor does not estimate private sales, demographics, GMV, commission, or eligibility.
- A public profile URL is not proof of a creator’s business relationship, audience location, or Shop participation; use exported data consistently with applicable privacy and marketing rules.

### FAQ

#### Can I export public TikTok Shop creator profiles?

Yes. Provide public handles or public profile URLs and export the returned rows in your preferred Apify dataset format.

#### Does it return Shop GMV or commission estimates?

Only a verified public, target-bound range is returned when available. The Actor does not infer missing GMV or commission values.

#### Can I use this through an API, schedule, or MCP client?

Yes. Use the API examples above, create a scheduled Actor task in Apify, or add the MCP URL to a compatible agent client.

#### What is an alternative if I need TikTok sound data?

Use [TikTok Sound Scraper](https://apify.com/fetch_cat/tiktok-sound-scraper) for public videos associated with a specific sound rather than creator-profile research.

### Related scrapers

- [TikTok Sound Scraper](https://apify.com/fetch_cat/tiktok-sound-scraper) for public sound and video research.
- [TikTok Creator Email Finder](https://apify.com/fetch_cat/tiktok-creator-email-finder) for public contact discovery workflows.
- [TikTok Shop Product Data Scraper](https://apify.com/fetch_cat/tiktok-shop-product-data-scraper) for product-focused Shop research.
- [TikTok Profile Scraper](https://apify.com/fetch_cat/tiktok-profile-scraper) for expanded public profile research.
- [TikTok Video Scraper](https://apify.com/fetch_cat/tiktok-video-scraper) for public video metadata.

### Support

Open an issue on this Actor’s Apify page with all of the following so a public-route failure can be reproduced:

- **Run ID and run URL**
- **Input JSON** (remove credentials; this Actor does not require them)
- **Expected output** and **actual output**
- A **reproducible public profile URL** or handle

Do not include account credentials. See [CHANGELOG.md](CHANGELOG.md) for user-visible release notes.

# Actor input Schema

## `handles` (type: `array`):

TikTok handles (with or without @) or public profile URLs.

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

Optional ISO country hint for future public Shop enrichment; never used as a creator attribute.

## `maxItems` (type: `integer`):

Maximum unique creator profiles to export.

## `includeShopSignals` (type: `boolean`):

Opt in to proven public Shop enrichment; unsupported signals are omitted.

## Actor input object example

```json
{
  "handles": [
    "dealswithty"
  ],
  "region": "US",
  "maxItems": 2,
  "includeShopSignals": false
}
```

# Actor output Schema

## `overview` (type: `string`):

No description

# 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 = {
    "handles": [
        "dealswithty"
    ],
    "region": "US",
    "maxItems": 2,
    "includeShopSignals": false
};

// Run the Actor and wait for it to finish
const run = await client.actor("fetch_cat/tiktok-shop-creator-insights-scraper").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 = {
    "handles": ["dealswithty"],
    "region": "US",
    "maxItems": 2,
    "includeShopSignals": False,
}

# Run the Actor and wait for it to finish
run = client.actor("fetch_cat/tiktok-shop-creator-insights-scraper").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 '{
  "handles": [
    "dealswithty"
  ],
  "region": "US",
  "maxItems": 2,
  "includeShopSignals": false
}' |
apify call fetch_cat/tiktok-shop-creator-insights-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,fetch_cat/tiktok-shop-creator-insights-scraper"
        }
    }
}

```

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/qRNPjipokwYqVe0CV/builds/xvzs9cIZB7ePh0e1L/openapi.json
