{
  "openapi": "3.0.1",
  "info": {
    "title": "TikTok Trends Scraper: Trending Hashtags, Videos & Sounds",
    "description": "Trending TikTok hashtags by country with posts, views, a daily popularity curve and top creators, across all 15 industries (not just the top 3). Creative Center top videos, the Explore feed by category in any country, trending sounds. Only-new alerts.",
    "version": "0.1",
    "x-build-id": "UX4d8PeeYnKX2Vjuj"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/s_actors~tiktok-trending-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-s_actors-tiktok-trending-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/s_actors~tiktok-trending-scraper/runs": {
      "post": {
        "operationId": "runs-sync-s_actors-tiktok-trending-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/s_actors~tiktok-trending-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-s_actors-tiktok-trending-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "trendType": {
            "title": "📈 What to get",
            "enum": [
              "hashtags",
              "videos",
              "explore",
              "sounds"
            ],
            "type": "string",
            "description": "Trending hashtags: TikTok Creative Center's hashtag ranking with posts, views, a daily popularity curve and the top creators, collected across all 15 industries (up to ~45 hashtags per country instead of the 3 the logged-out site shows). Top videos: Creative Center's top videos with period views, engagement and 6-second view rate. Explore: the videos TikTok's Explore page shows in a category, as seen from the chosen country. Sounds: the sounds used most across the Explore videos. One type per run: the Overview table shows title, author, views and link of any type; All fields shows everything the type has.",
            "default": "hashtags"
          },
          "countries": {
            "title": "🌍 Countries",
            "type": "array",
            "description": "Two-letter country codes, one per line (US, GB, DE, BR, JP...). Hashtags: US, FR, DE, IT, ES, GB, AR, AU, BR, CA, CO, EG, ID, IL, JP, KR, MY, MX, PH, SA, SG, ZA, TW, TH, TR, AE, VN. Top videos: US, JP, VN, TH, ID. Explore and sounds: any country (loaded through a residential IP in that country).",
            "default": [
              "US"
            ],
            "items": {
              "type": "string"
            }
          },
          "period": {
            "title": "📅 Period",
            "enum": [
              "1",
              "7",
              "30",
              "90"
            ],
            "type": "string",
            "description": "Ranking period of Creative Center. Hashtags: 7, 30 or 90 days (Yesterday uses 7). Top videos: yesterday, 7 or 30 days (90 uses 30). Explore is always live.",
            "default": "7"
          },
          "industries": {
            "title": "🏷️ Hashtag industries",
            "type": "array",
            "description": "Only hashtags of these industries. Empty = the overall ranking plus every industry (the most hashtags). Each row lists the industries it ranks in and its place there.",
            "items": {
              "type": "string",
              "enum": [
                "Education",
                "Vehicle & Transportation",
                "Baby, Kids & Maternity",
                "Beauty & Personal Care",
                "Tech & Electronics",
                "Travel",
                "Household Products",
                "Pets",
                "Home Improvement",
                "Apparel & Accessories",
                "News & Entertainment",
                "Games",
                "Food & Beverage",
                "Sports & Outdoor",
                "Health"
              ]
            }
          },
          "videoSortBy": {
            "title": "🎬 Top videos: rankings",
            "type": "array",
            "description": "Which Creative Center video rankings to collect. Empty = all three (the most videos). Each row lists every ranking the video is in.",
            "items": {
              "type": "string",
              "enum": [
                "views",
                "engagement",
                "sixSecondViews"
              ],
              "enumTitles": [
                "Highest video views",
                "Highest engagement",
                "Highest 6-second view rate"
              ]
            }
          },
          "videoContentTags": {
            "title": "🎬 Top videos: content tags",
            "type": "array",
            "description": "Only videos with these Creative Center content tags. Empty = all videos plus every tag.",
            "items": {
              "type": "string",
              "enum": [
                "Beauty & Care",
                "Fashion",
                "Food & Beverage",
                "Lifestyle & Leisure",
                "Technology & Finance"
              ]
            }
          },
          "organicOnly": {
            "title": "🎬 Top videos: organic only",
            "type": "boolean",
            "description": "Only Creative Center's ranking of organic (not promoted) views. Off = both the overall and the organic rankings.",
            "default": false
          },
          "exploreCategories": {
            "title": "🧭 Explore categories",
            "type": "array",
            "description": "Explore page categories for Explore videos and sounds. More categories give sounds a bigger sample.",
            "items": {
              "type": "string",
              "enum": [
                "All",
                "Singing & Dancing",
                "Comedy",
                "Sports",
                "Anime & Comics",
                "Relationship",
                "Shows",
                "Lipsync",
                "Daily Life",
                "Beauty Care",
                "Games",
                "Society",
                "Outfit",
                "Cars",
                "Food",
                "Animals",
                "Family",
                "Drama",
                "Fitness & Health",
                "Education",
                "Technology"
              ]
            },
            "default": [
              "All"
            ]
          },
          "maxExploreVideos": {
            "title": "🧭 Explore videos per category",
            "minimum": 1,
            "maximum": 2000,
            "type": "integer",
            "description": "Different videos to collect per category and country. TikTok's Explore feed gives new videos on every load, so this is a sample of what is being pushed right now.",
            "default": 100
          },
          "maxSounds": {
            "title": "🎵 Max sounds per country",
            "minimum": 1,
            "maximum": 1000,
            "type": "integer",
            "description": "Sounds to return per country, the most used in the Explore sample first. TikTok removed its public sound chart in 2026; this counts the sounds of the Explore videos collected in this run.",
            "default": 50
          },
          "onlyNew": {
            "title": "🔔 Only new entries",
            "type": "boolean",
            "description": "For scheduled runs (save the input as a task and add a schedule). The first run returns everything and remembers it; every later run returns only hashtags, videos and sounds that were not there before. Without it, every row still has isNew.",
            "default": false
          },
          "monitorName": {
            "title": "🏷️ Monitor name",
            "type": "string",
            "description": "Name of the memory used by isNew and Only new entries. Use a different name for each task.",
            "default": "default"
          },
          "maxConcurrency": {
            "title": "⚡ Parallel requests",
            "minimum": 1,
            "maximum": 20,
            "type": "integer",
            "description": "How many requests to TikTok run at the same time.",
            "default": 5
          },
          "proxyConfiguration": {
            "title": "🛡️ Proxy",
            "type": "object",
            "description": "Creative Center goes direct first and switches to Apify datacenter proxies when TikTok refuses it. Explore and sounds always use Apify residential proxies in the chosen country (TikTok gives cloud IPs an empty Explore list).",
            "default": {
              "useApifyProxy": true
            }
          },
          "debugLog": {
            "title": "🐞 Debug log",
            "type": "boolean",
            "description": "Log every retried request (for troubleshooting).",
            "default": false
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}