# Monitor new trending TikTok hashtags daily, only what is new

**Use case:** 

Only the trending TikTok hashtags this task has not delivered before: each run reads the US 7-day lists (overall and 15 industries) and returns the hashtags that entered them since the last run, marked `is_new` with `first_seen_at`; hashtags delivered earlier are skipped and not charged, so a run that finds nothing new costs nothing. Save it, schedule it daily, add Slack or e-mail.

## Input

```json
{
  "sections": [
    "hashtags"
  ],
  "hashtagCountries": [
    "US"
  ],
  "hashtagPeriods": [
    "7"
  ],
  "hashtagIndustries": [],
  "hashtags": [],
  "minPosts": 0,
  "minViews": 0,
  "onlyRising": false,
  "videoCountries": [
    "US"
  ],
  "videoPeriods": [
    "last_7_days"
  ],
  "videoSortBy": [],
  "videoContentTags": [],
  "videoOrganic": "both",
  "videoSnapshots": 1,
  "videoSnapshotDates": [],
  "videoDetails": false,
  "topAdsCountries": [
    "US"
  ],
  "topAdsPeriod": "30",
  "topAdsSortBy": "ctr",
  "topAdsIndustries": [],
  "topAdsObjectives": [],
  "topAdsLanguages": [],
  "topAdsFormat": "all",
  "topAdsLikes": "all",
  "topAdsSweep": false,
  "topAdsDetails": true,
  "topAdsMetrics": false,
  "topAdsSpotlight": false,
  "startUrls": [],
  "adIds": [],
  "maxItems": 100,
  "trackChanges": false,
  "onlyNew": true,
  "includeEnded": false,
  "summaryRows": false,
  "outputFormat": "full",
  "downloadMedia": "none",
  "transcribeVideos": false,
  "transcriptTiming": false,
  "tagAds": false,
  "analyzeAds": false,
  "trendDigest": false
}
```

## Output

```json
{
  "record_id": {
    "label": "Record id",
    "format": "string"
  },
  "section": {
    "label": "Section",
    "format": "string"
  },
  "row_type": {
    "label": "Row type",
    "format": "string"
  },
  "country": {
    "label": "Country",
    "format": "string"
  },
  "country_name": {
    "label": "Country name",
    "format": "string"
  },
  "period": {
    "label": "Period",
    "format": "string"
  },
  "period_days": {
    "label": "Period days",
    "format": "integer"
  },
  "period_start": {
    "label": "Period start",
    "format": "string"
  },
  "period_end": {
    "label": "Period end",
    "format": "string"
  },
  "rank": {
    "label": "Rank",
    "format": "integer"
  },
  "list": {
    "label": "List",
    "format": "string"
  },
  "lists": {
    "label": "Lists",
    "format": "array"
  },
  "list_served": {
    "label": "List rows served",
    "format": "integer"
  },
  "list_total": {
    "label": "List total",
    "format": "integer"
  },
  "hashtag_id": {
    "label": "Hashtag id",
    "format": "string"
  },
  "hashtag_name": {
    "label": "Hashtag",
    "format": "string"
  },
  "hashtag_url": {
    "label": "Hashtag page",
    "format": "string"
  },
  "creative_center_url": {
    "label": "Creative Center page",
    "format": "string"
  },
  "posts": {
    "label": "Posts",
    "format": "integer"
  },
  "views": {
    "label": "Views",
    "format": "integer"
  },
  "industries": {
    "label": "Industries",
    "format": "array"
  },
  "industry_ids": {
    "label": "Industry ids",
    "format": "array"
  },
  "popularity_curve": {
    "label": "Popularity curve",
    "format": "array"
  },
  "curve_points": {
    "label": "Curve points",
    "format": "integer"
  },
  "trend_direction": {
    "label": "Trend direction",
    "format": "string"
  },
  "trend_momentum_pct": {
    "label": "Momentum %",
    "format": "number"
  },
  "trend_volatility": {
    "label": "Volatility",
    "format": "number"
  },
  "trend_stage": {
    "label": "Trend stage",
    "format": "string"
  },
  "trend_peak_date": {
    "label": "Peak date",
    "format": "string"
  },
  "trend_average": {
    "label": "Curve average",
    "format": "number"
  },
  "trend_latest": {
    "label": "Curve latest",
    "format": "number"
  },
  "top_creators": {
    "label": "Top creators",
    "format": "array"
  },
  "video_id": {
    "label": "Video id",
    "format": "string"
  },
  "video_page_url": {
    "label": "Video page",
    "format": "string"
  },
  "title": {
    "label": "Title",
    "format": "string"
  },
  "video_created_at": {
    "label": "Posted at",
    "format": "string"
  },
  "views_lifetime": {
    "label": "Views lifetime",
    "format": "integer"
  },
  "organic_views": {
    "label": "Organic views",
    "format": "integer"
  },
  "organic_views_lifetime": {
    "label": "Organic views lifetime",
    "format": "integer"
  },
  "engagement_rate": {
    "label": "Engagement rate",
    "format": "number"
  },
  "engagement_rate_lifetime": {
    "label": "Engagement rate lifetime",
    "format": "number"
  },
  "six_second_view_rate": {
    "label": "6-second view rate",
    "format": "number"
  },
  "six_second_view_rate_lifetime": {
    "label": "6-second view rate lifetime",
    "format": "number"
  },
  "creator_username": {
    "label": "Creator",
    "format": "string"
  },
  "creator_nickname": {
    "label": "Creator name",
    "format": "string"
  },
  "creator_url": {
    "label": "Creator page",
    "format": "string"
  },
  "creator_id": {
    "label": "Creator id",
    "format": "string"
  },
  "author_id": {
    "label": "Author id",
    "format": "string"
  },
  "creator_bio": {
    "label": "Creator bio",
    "format": "string"
  },
  "creator_avatar_url": {
    "label": "Creator avatar",
    "format": "string"
  },
  "creator_followers": {
    "label": "Creator followers",
    "format": "integer"
  },
  "creator_store_region": {
    "label": "Creator region",
    "format": "string"
  },
  "creator_type": {
    "label": "Creator type",
    "format": "integer"
  },
  "content_tags": {
    "label": "Content tags",
    "format": "array"
  },
  "content_tag_ids": {
    "label": "Content tag ids",
    "format": "array"
  },
  "top_comments": {
    "label": "Top comments",
    "format": "array"
  },
  "top_comments_count": {
    "label": "Comments served",
    "format": "integer"
  },
  "comment_keywords": {
    "label": "Comment keywords",
    "format": "array"
  },
  "creative_id": {
    "label": "Ad id",
    "format": "string"
  },
  "ad_url": {
    "label": "Ad page",
    "format": "string"
  },
  "ad_format": {
    "label": "Format",
    "format": "string"
  },
  "creative_available": {
    "label": "Creative available",
    "format": "boolean"
  },
  "advertiser_name": {
    "label": "Advertiser",
    "format": "string"
  },
  "body_text": {
    "label": "Caption",
    "format": "string"
  },
  "hook_text": {
    "label": "Hook",
    "format": "string"
  },
  "objective": {
    "label": "Objective",
    "format": "string"
  },
  "objectives": {
    "label": "Objectives",
    "format": "array"
  },
  "industry": {
    "label": "Industry",
    "format": "string"
  },
  "industry_id": {
    "label": "Industry id",
    "format": "string"
  },
  "destination_url": {
    "label": "Landing page",
    "format": "string"
  },
  "landing_domain": {
    "label": "Landing domain",
    "format": "string"
  },
  "ctr_top_percent": {
    "label": "CTR top %",
    "format": "number"
  },
  "likes": {
    "label": "Likes",
    "format": "integer"
  },
  "comments": {
    "label": "Comments",
    "format": "integer"
  },
  "shares": {
    "label": "Shares",
    "format": "integer"
  },
  "cost_level": {
    "label": "Cost level",
    "format": "integer"
  },
  "is_search_ad": {
    "label": "Search ad",
    "format": "boolean"
  },
  "source": {
    "label": "Ad source",
    "format": "string"
  },
  "keyword_list": {
    "label": "Keywords",
    "format": "array"
  },
  "pattern_labels": {
    "label": "Pattern labels",
    "format": "array"
  },
  "voice_over": {
    "label": "Voice-over",
    "format": "boolean"
  },
  "highlight_text": {
    "label": "Highlight",
    "format": "string"
  },
  "regions": {
    "label": "Countries shown",
    "format": "array"
  },
  "keyframes": {
    "label": "Keyframe curves",
    "format": "object"
  },
  "keyframe_highlights": {
    "label": "Keyframe highlights",
    "format": "object"
  },
  "percentiles": {
    "label": "Percentiles",
    "format": "object"
  },
  "copy_length": {
    "label": "Caption length",
    "format": "integer"
  },
  "sentiment_score": {
    "label": "Sentiment",
    "format": "number"
  },
  "image_url": {
    "label": "Image",
    "format": "string"
  },
  "video_urls": {
    "label": "Video renditions",
    "format": "array"
  },
  "video_duration_s": {
    "label": "Duration (s)",
    "format": "number"
  },
  "video_width": {
    "label": "Video width",
    "format": "integer"
  },
  "video_height": {
    "label": "Video height",
    "format": "integer"
  },
  "cover_url": {
    "label": "Cover",
    "format": "string"
  },
  "video_url": {
    "label": "Video file",
    "format": "string"
  },
  "media_expires_at": {
    "label": "Media expires",
    "format": "string"
  },
  "hashtags": {
    "label": "Caption hashtags",
    "format": "array"
  },
  "mentions": {
    "label": "Mentions",
    "format": "array"
  },
  "text_language": {
    "label": "Text language",
    "format": "string"
  },
  "analysis_angle": {
    "label": "Angle (AI)",
    "format": "string"
  },
  "analysis_cta_intent": {
    "label": "CTA intent (AI)",
    "format": "string"
  },
  "analysis_tone": {
    "label": "Tone (AI)",
    "format": "string"
  },
  "analysis_sentiment": {
    "label": "Sentiment (AI)",
    "format": "number"
  },
  "analysis_offer_type": {
    "label": "Offer type (AI)",
    "format": "string"
  },
  "analysis_funnel_stage": {
    "label": "Funnel stage (AI)",
    "format": "string"
  },
  "analysis_confidence": {
    "label": "Tag confidence (AI)",
    "format": "object"
  },
  "analysis_hook": {
    "label": "Hook (AI)",
    "format": "string"
  },
  "analysis_offer": {
    "label": "Offer (AI)",
    "format": "string"
  },
  "analysis_audience": {
    "label": "Audience (AI)",
    "format": "string"
  },
  "analysis_strategy": {
    "label": "Strategy (AI)",
    "format": "string"
  },
  "transcript": {
    "label": "Transcript (AI)",
    "format": "string"
  },
  "transcript_language": {
    "label": "Spoken language",
    "format": "string"
  },
  "hook_3s": {
    "label": "Spoken hook",
    "format": "string"
  },
  "speech_seconds": {
    "label": "Speech seconds",
    "format": "number"
  },
  "transcript_segments": {
    "label": "Transcript segments",
    "format": "array"
  },
  "media_files": {
    "label": "Stored files",
    "format": "array"
  },
  "image_file_url": {
    "label": "Stored image",
    "format": "string"
  },
  "video_file_url": {
    "label": "Stored video",
    "format": "string"
  },
  "detail_status": {
    "label": "Detail status",
    "format": "string"
  },
  "source_url": {
    "label": "Source page",
    "format": "string"
  },
  "scraped_at": {
    "label": "Scraped at",
    "format": "string"
  },
  "first_seen_at": {
    "label": "First seen",
    "format": "string"
  },
  "last_seen_at": {
    "label": "Last seen",
    "format": "string"
  },
  "ended_at": {
    "label": "Ended",
    "format": "string"
  },
  "times_seen": {
    "label": "Times seen",
    "format": "integer"
  },
  "previous_rank": {
    "label": "Previous rank",
    "format": "integer"
  },
  "rank_change": {
    "label": "Rank change",
    "format": "integer"
  },
  "rank_velocity_per_day": {
    "label": "Rank change per day",
    "format": "number"
  },
  "is_new": {
    "label": "New",
    "format": "boolean"
  },
  "change_type": {
    "label": "Change",
    "format": "string"
  },
  "changed_fields": {
    "label": "Changed fields",
    "format": "array"
  },
  "note": {
    "label": "Note",
    "format": "string"
  },
  "source_answer": {
    "label": "Source answer",
    "format": "string"
  },
  "run_tag": {
    "label": "Run tag",
    "format": "string"
  },
  "summary_video_count": {
    "label": "Videos",
    "format": "integer"
  },
  "summary_ad_count": {
    "label": "Ads",
    "format": "integer"
  },
  "summary_is_trending": {
    "label": "Also trending",
    "format": "boolean"
  },
  "summary_record_ids": {
    "label": "Record ids",
    "format": "array"
  },
  "summary_advertisers": {
    "label": "Advertisers",
    "format": "array"
  },
  "summary_landing_domains": {
    "label": "Landing domains",
    "format": "array"
  },
  "summary_countries": {
    "label": "Countries",
    "format": "array"
  },
  "digest_summary": {
    "label": "Digest (AI)",
    "format": "string"
  },
  "digest_themes": {
    "label": "Themes (AI)",
    "format": "array"
  },
  "digest_rising": {
    "label": "Rising (AI)",
    "format": "array"
  },
  "digest_watch": {
    "label": "To act on (AI)",
    "format": "array"
  }
}
```

## About this Actor

This example demonstrates how to use [TikTok Trends Scraper: TikTok Creative Center Hashtags, Top Ads](https://apify.com/hyperbach/tiktok-creative-center-scraper.md) with a specific input configuration. Visit the [Actor detail page](https://apify.com/hyperbach/tiktok-creative-center-scraper.md) to learn more, explore other use cases, and run it yourself.


## How to integrate an Actor?

This Task's input is already configured above. Use it as-is rather than inventing a new one.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For full API examples (JavaScript, Python, CLI, MCP, OpenAPI), see this Task's Actor page: https://apify.com/hyperbach/tiktok-creative-center-scraper.md

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).
