> ## Documentation Index
> Fetch the complete documentation index at: https://tiktools.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Bulk Live Check

> Check live status for multiple TikTok users in a single request. Returns the same data as check_alive but for up to 100 users simultaneously.

## `POST` `/webcast/bulk_live_check`

Check live status for multiple TikTok users in a single request. Returns the same data as `check_alive` but for up to 100 users simultaneously.

**Batch limits:** Free: 1 user, Pro: up to 50 users, Ultra: up to 100 users per request. Pass usernames as a JSON array in the request body.

**Response data:** Returns an array with each user's `unique_id`, `room_id`, `alive` status, `title`, and `userCount`. Users who are offline return `alive: false` with an empty `room_id`.

**Use cases:** Creator monitoring dashboards that track dozens of streamers, automated alert systems, multi-stream aggregators, or periodically scanning talent rosters to detect who's live.

### Parameters

| Parameter    | Type      | Required | Description               |
| ------------ | --------- | -------- | ------------------------- |
| `unique_ids` | string\[] | Yes      | Array of TikTok usernames |

### Response

```json theme={null}
{ "status_code": 0, "data": { "user1": true, "user2": false, "user3": true } }
```

### Examples

<CodeGroup>
  ```javascript Node.js theme={null}
  const res = await fetch('https://api.tik.tools/webcast/bulk_live_check?apiKey=YOUR_KEY', {
    method: 'POST',
    headers: { 'Content-Type': 'application/json' },
    body: JSON.stringify({ unique_ids: ['user1', 'user2', 'user3'] })
  });
  const { data } = await res.json();
  Object.entries(data).forEach(([user, live]) => console.log(`${user}: ${live}`));
  ```

  ```python Python theme={null}
  import requests
  res = requests.post('https://api.tik.tools/webcast/bulk_live_check',
      params={'apiKey': 'YOUR_KEY'},
      json={'unique_ids': ['user1', 'user2', 'user3']})
  for user, live in res.json()['data'].items():
      print(f"{user}: {'Live' if live else 'Offline'}")
  ```

  ```bash cURL theme={null}
  curl -X POST "https://api.tik.tools/webcast/bulk_live_check?apiKey=YOUR_KEY" \
    -H "Content-Type: application/json" \
    -d '{"unique_ids": ["user1", "user2", "user3"]}'
  ```

  ```java Java theme={null}
  HttpClient client = HttpClient.newHttpClient();
  String json = "{\"unique_ids\": [\"user1\", \"user2\", \"user3\"]}";
  HttpRequest req = HttpRequest.newBuilder()
      .uri(URI.create("https://api.tik.tools/webcast/bulk_live_check?apiKey=YOUR_KEY"))
      .header("Content-Type", "application/json")
      .POST(HttpRequest.BodyPublishers.ofString(json))
      .build();
  HttpResponse<String> res = client.send(req, HttpResponse.BodyHandlers.ofString());
  System.out.println(res.body());
  ```

  ```go Go theme={null}
  payload := bytes.NewBufferString(`{"unique_ids":["user1","user2","user3"]}`)
  resp, err := http.Post(
      "https://api.tik.tools/webcast/bulk_live_check?apiKey=YOUR_KEY",
      "application/json", payload)
  if err != nil { log.Fatal(err) }
  defer resp.Body.Close()
  body, _ := io.ReadAll(resp.Body)
  fmt.Println(string(body))
  ```

  ```csharp C# theme={null}
  using var client = new HttpClient();
  var json = new StringContent(
      @"{""unique_ids"":[""user1"",""user2"",""user3""]}",
      Encoding.UTF8, "application/json");
  var res = await client.PostAsync(
      "https://api.tik.tools/webcast/bulk_live_check?apiKey=YOUR_KEY", json);
  Console.WriteLine(await res.Content.ReadAsStringAsync());
  ```
</CodeGroup>
