# TikTok Trend Monitor (`primeselectai/tiktok-trend-news-monitor`) Actor

Track TikTok trends, creator-economy news, controversies, and brand coverage from global web and news sources. Get ranked, deduplicated stories with momentum, geography, tone, and trend status for recurring research.

- **URL**: https://apify.com/primeselectai/tiktok-trend-news-monitor.md
- **Developed by:** [Simon Jessen](https://apify.com/primeselectai) (community)
- **Categories:**
- **Stats:** 2 total users, 1 monthly users, 75.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $3.00 / 1,000 results

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 Trend Monitor

TikTok Trend Monitor helps you find emerging TikTok-related topics before they become obvious. The Actor returns normalized stories, canonical URLs, source domains, dates, snippets, geography, tone, duplicate clusters, momentum scores, and trend-status changes; configure queries and lookback windows afterward.

### Outcome

Track emerging TikTok topics, creators, hashtags, and platform developments through a legally reusable global news and web-coverage signal instead of scraping TikTok itself.

### Use cases

- Use the Actor when you need track emerging TikTok topics, creators, hashtags, and platform developments through a legally reusable global news and web-coverage signal instead of scraping TikTok itself.
- Build workflows around transforms GDELT's open news and web-coverage feed into a repeatable TikTok trend-intelligence workflow with query normalization, duplicate-story clustering, source quality scoring, geographic aggregation, momentum comparisons, historical snapshots, and alert-ready change detection.
- Designed for Social media agencies, creator-economy researchers, brand strategists, PR teams, and trend analysts.
- Schedule repeat runs: Run daily or weekly monitoring jobs to detect new coverage, rising topics, geographic expansion, competitor mentions, and changes from the previous period.
- Feed normalized dataset records into APIs, spreadsheets, databases, automations, or AI/agent workflows.

### Quick start

1. Open the Actor input form.
2. Set the filters or query relevant to your workflow.
3. Start with a small `maxResults` value.
4. Run the Actor and inspect the default dataset before scheduling larger or recurring jobs.

Example input:

```json
{
  "query": "TikTok creator economy",
  "maxResults": 10
}
```

### Inputs

- **query** (string, required) — Topic, phrase, hashtag, creator name, brand, product category, or TikTok-related development to monitor.
- **country** (string, optional) — Optional country or region phrase used to narrow coverage. This field is retained for workflow compatibility; country filtering may require query terms.
- **days** (integer, optional) — Lookback window for recent coverage, recommended range 1-90. Historical comparison is performed by downstream monitoring workflows.
- **maxResults** (integer, required) — Maximum number of GDELT articles requested and normalized per page.
- **sort** (string, optional) — Preferred ranking such as relevance or date. GDELT ranking behavior is controlled by the source endpoint.
- **includeRelated** (boolean, optional) — Whether related TikTok, creator-economy, short-video, and social-commerce terms should be included by a downstream query-normalization workflow.

### Output example

The example below is taken from the latest validated local live-source sample when available; otherwise it is derived from the bundled dataset schema.

```json
{
  "id": "https://portal.sina.com.hk/finance/finance-mediaoutreachnewswire/media-outreach/2026/06/25/1834287/ogilvy-launches-first-of-its-kind-live-commerce-competition-in-singapore-to-champion-the-future-of-creator-commerce/",
  "title": "Ogilvy launches first - of - its - kind live Commerce Competition in Singapore to Champion the Future of Creator Commerce",
  "url": "https://portal.sina.com.hk/finance/finance-mediaoutreachnewswire/media-outreach/2026/06/25/1834287/ogilvy-launches-first-of-its-kind-live-commerce-competition-in-singapore-to-champion-the-future-of-creator-commerce/",
  "source_domain": "portal.sina.com.hk",
  "published_at": "20260625T103000Z",
  "seendate": "20260625T103000Z",
  "language": "English",
  "country": "Hong Kong",
  "snippet": "Ogilvy launches first - of - its - kind live Commerce Competition in Singapore to Champion the Future of Creator Commerce",
  "domain_rank": null,
  "tone": null,
  "query_match": "Ogilvy launches first - of - its - kind live Commerce Competition in Singapore to Champion the Future of Creator Commerce",
  "cluster_id": "https://portal.sina.com.hk/finance/finance-mediaoutreachnewswire/media-outreach/2026/06/25/1834287/ogilvy-launches-first-of-its-kind-live-commerce-competition-in-singapore-to-champion-the-future-of-creator-commerce/",
  "momentum_score": null,
  "trend_status": "insufficient-history",
  "attribution": "Data provided by the GDELT Project: https://www.gdeltproject.org/"
}
```

### Pricing

Store pricing is configured in Apify. The intended primary paid unit is **normalized trend-intelligence result**. Start with a small result limit while validating your workflow, then scale only when the output and economics fit your use case. The README never hard-codes a price that could drift from the live Store configuration.

### Source and limitations

- Source: GDELT DOC 2.0 API.
- Licence/terms: GDELT Project unlimited and unrestricted commercial-use terms.
- Reuse condition: GDELT datasets may be used, redistributed, rehosted, republished, and mirrored for commercial purposes, but every use or redistribution must cite the GDELT Project and link to https://www.gdeltproject.org/. Article text, publisher copyrights, images, logos, trademarks, and linked-page content remain subject to their respective owners' rights. The Actor should return metadata, snippets, URLs, and derived scores rather than republishing full articles or media. This is not a TikTok-authorized product and must not imply TikTok endorsement. GDELT Cloud is not used because its current terms prohibit third-party redistribution without a separate written license.
- Automation condition: Use the documented HTTP API, respect API availability and reasonable request rates, use bounded date windows and pagination, categorize HTTP and malformed-response errors, and avoid high-volume parallelization. The endpoint supports JSON output and does not require an account key.
- This is an indirect TikTok intelligence product: it measures public news and web coverage, not TikTok-native post, profile, comment, view, or hashtag data.
- Coverage is biased toward publishers indexed by GDELT and may miss fast-moving TikTok-native trends before journalists or websites mention them.
- Article titles, snippets, images, full text, trademarks, and publisher metadata may have separate copyright or database-right restrictions; the Actor should minimize returned copyrighted material and avoid media redistribution.
- GDELT attribution is required in every redistribution or commercial output.
- GDELT API availability, rate limits, response fields, and rolling coverage windows may change.

This Actor does not bypass authentication, rate limits, robots/API policies, licensing conditions, or upstream access controls. Missing upstream values are not invented.

### FAQ

**Does this use the approved source contract?**\
Yes. Runtime requests are restricted to the source contract validated by Market Hunter before build.

**Can I schedule repeat runs?**\
Yes, when the source permits automated access. Use conservative schedules and result limits that respect upstream conditions.

**Why can some fields be empty or null?**\
The upstream source may omit fields for particular records. The Actor preserves missing values rather than fabricating data.

### Troubleshooting

- If a narrow query returns no rows, loosen filters and retry with a small result limit.
- If the upstream source returns a rate-limit or temporary server error, retry later instead of increasing request pressure.
- If authentication or source identity is required, verify the protected credential/identity configured for the Actor.
- If the upstream response schema changes, report the failed run so the deterministic mapping can be updated.

### Related Actors

- creator-economy-news-monitor
- social-commerce-trend-monitor
- brand-mention-change-detector
- short-video-market-intelligence

> Store publication remains an explicit manual action. This product is not affiliated with or endorsed by the upstream source unless the Store listing explicitly states otherwise.

# Actor input Schema

## `query` (type: `string`):

Topic, phrase, hashtag, creator name, brand, product category, or TikTok-related development to monitor.

## `country` (type: `string`):

Optional country or region phrase used to narrow coverage. This field is retained for workflow compatibility; country filtering may require query terms.

## `days` (type: `integer`):

Lookback window for recent coverage, recommended range 1-90. Historical comparison is performed by downstream monitoring workflows.

## `maxResults` (type: `integer`):

Maximum number of GDELT articles requested and normalized per page.

## `sort` (type: `string`):

Preferred ranking such as relevance or date. GDELT ranking behavior is controlled by the source endpoint.

## `includeRelated` (type: `boolean`):

Whether related TikTok, creator-economy, short-video, and social-commerce terms should be included by a downstream query-normalization workflow.

## Actor input object example

```json
{
  "query": "TikTok creator economy",
  "maxResults": 10,
  "includeRelated": false
}
```

# Actor output Schema

## `results` (type: `string`):

No description

## `runMeta` (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 = {
    "query": "TikTok creator economy",
    "maxResults": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("primeselectai/tiktok-trend-news-monitor").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 = {
    "query": "TikTok creator economy",
    "maxResults": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("primeselectai/tiktok-trend-news-monitor").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 '{
  "query": "TikTok creator economy",
  "maxResults": 10
}' |
apify call primeselectai/tiktok-trend-news-monitor --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,primeselectai/tiktok-trend-news-monitor"
        }
    }
}

```

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/VYGzmitv57qomdSTv/builds/nG18t8J1X9lbu9nCF/openapi.json
