# Check if news channels are live on TikTok

**Use case:** 

One row per news account: whether it is live on TikTok right now, and while live the stream title, start time, how long it has been on air, current viewer count, total enters and playback URLs; when not live, the start of its most recent stream. Accounts: Al Jazeera English, BBC News, Sky News, NBC News, ABC News, CNN, Fox News, Reuters and France 24 English. Export as JSON, CSV or Excel.

## Input

```json
{
  "usernames": [
    "@aljazeeraenglish",
    "@bbcnews",
    "@skynews",
    "@nbcnews",
    "@abcnews",
    "@cnn",
    "@foxnews",
    "@reuters",
    "@france24_en"
  ],
  "maxProfiles": 20,
  "includeStreamUrls": false,
  "onlyLive": false,
  "monitoringMode": false,
  "resetMonitoringState": false,
  "useProxy": true
}
```

## Output

```json
{
  "username": {
    "label": "Username",
    "format": "string"
  },
  "isLive": {
    "label": "Is Live",
    "format": "string"
  },
  "viewerCount": {
    "label": "Viewer Count",
    "format": "string"
  },
  "roomTitle": {
    "label": "Room Title",
    "format": "string"
  },
  "startedAt": {
    "label": "Started At",
    "format": "string"
  },
  "liveDurationSeconds": {
    "label": "Live Duration Seconds",
    "format": "string"
  },
  "totalEnterCount": {
    "label": "Total Enter Count",
    "format": "string"
  },
  "change": {
    "label": "Change",
    "format": "string"
  },
  "followerCount": {
    "label": "Follower Count",
    "format": "string"
  },
  "lastStreamStartedAt": {
    "label": "Last Stream Started At",
    "format": "string"
  },
  "status": {
    "label": "Status",
    "format": "string"
  },
  "note": {
    "label": "Note",
    "format": "string"
  },
  "source": {
    "label": "Source",
    "format": "string"
  },
  "scrapedAt": {
    "label": "Scraped At",
    "format": "string"
  },
  "inputUsername": {
    "label": "Input Username",
    "format": "string"
  },
  "usernameMatchesInput": {
    "label": "Username Matches Input",
    "format": "string"
  },
  "userId": {
    "label": "User Id",
    "format": "string"
  },
  "secUid": {
    "label": "Sec Uid",
    "format": "string"
  },
  "nickname": {
    "label": "Nickname",
    "format": "string"
  },
  "verified": {
    "label": "Verified",
    "format": "string"
  },
  "profileUrl": {
    "label": "Profile Url",
    "format": "string"
  },
  "liveUrl": {
    "label": "Live Url",
    "format": "string"
  },
  "liveStatusCode": {
    "label": "Live Status Code",
    "format": "string"
  },
  "roomId": {
    "label": "Room Id",
    "format": "string"
  },
  "startedAtEpoch": {
    "label": "Started At Epoch",
    "format": "string"
  },
  "coverUrl": {
    "label": "Cover Url",
    "format": "string"
  },
  "streamUrls": {
    "label": "Stream Urls",
    "format": "string"
  },
  "lastStreamStartedAtEpoch": {
    "label": "Last Stream Started At Epoch",
    "format": "string"
  },
  "followingCount": {
    "label": "Following Count",
    "format": "string"
  },
  "isFirstCheck": {
    "label": "Is First Check",
    "format": "string"
  },
  "previousCheckedAt": {
    "label": "Previous Checked At",
    "format": "string"
  },
  "previousIsLive": {
    "label": "Previous Is Live",
    "format": "string"
  },
  "previousRoomId": {
    "label": "Previous Room Id",
    "format": "string"
  },
  "endedAfter": {
    "label": "Ended After",
    "format": "string"
  },
  "endedBefore": {
    "label": "Ended Before",
    "format": "string"
  },
  "streamDurationSecondsAtLeast": {
    "label": "Stream Duration Seconds At Least",
    "format": "string"
  },
  "streamDurationSecondsAtMost": {
    "label": "Stream Duration Seconds At Most",
    "format": "string"
  },
  "peakViewerCountSeen": {
    "label": "Peak Viewer Count Seen",
    "format": "string"
  },
  "lastSeenTotalEnterCount": {
    "label": "Last Seen Total Enter Count",
    "format": "string"
  },
  "checksWhileLive": {
    "label": "Checks While Live",
    "format": "string"
  },
  "searchUrl": {
    "label": "Search Url",
    "format": "string"
  },
  "tiktokStatusCode": {
    "label": "Tiktok Status Code",
    "format": "string"
  }
}
```

## About this Actor

This example demonstrates how to use [TikTok Live Status Scraper & Monitor - Go-Live Alerts, Viewers](https://apify.com/neverempty/tiktok-live-status-monitor.md) with a specific input configuration. Visit the [Actor detail page](https://apify.com/neverempty/tiktok-live-status-monitor.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/neverempty/tiktok-live-status-monitor.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`).
