# Tiktok Videos & Profiles Id Scraper (`alpha-scraper/tiktok-videos-profiles-id-scraper`) Actor

Extract TikTok profile metadata and video information from usernames, profile URLs, or video links. Automatically detects input type and returns structured datasets including user IDs, video IDs, captions, and creator details — ideal for analytics, automation, and research.

- **URL**: https://apify.com/alpha-scraper/tiktok-videos-profiles-id-scraper.md
- **Developed by:** [Alpha Scraper](https://apify.com/alpha-scraper) (community)
- **Categories:** Social media, Videos, Real estate
- **Stats:** 3 total users, 2 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

$5.00/month + usage

To use this Actor, you pay a monthly rental fee to the developer. The rent is subtracted from your prepaid usage every month after the free trial period.You also pay for the Apify platform usage, which gets cheaper the higher Apify subscription plan you have.

Learn more: https://docs.apify.com/platform/actors/running/actors-in-store#rental-actors

## What's an Apify Actor?

Actors are a software tools running on the Apify platform, for all kinds of web data extraction and automation use cases.
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.

In JavaScript/TypeScript projects, use official [JavaScript/TypeScript client](https://docs.apify.com/api/client/js.md):

```bash
npm install apify-client
```

In Python projects, use official [Python client library](https://docs.apify.com/api/client/python.md):

```bash
pip install apify-client
```

In shell scripts, use [Apify CLI](https://docs.apify.com/cli/docs.md):

````bash
# MacOS / Linux
curl -fsSL https://apify.com/install-cli.sh | bash
# Windows
irm https://apify.com/install-cli.ps1 | iex
```bash

In AI frameworks, you might use the [Apify MCP server](https://docs.apify.com/platform/integrations/mcp.md).

If your project is in a different language, use 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 Profile & Video Scraper —  Apify Actor

* ⭐ Extract structured TikTok profile metadata and video information from TikTok URLs quickly and reliably.

---

### 📌 Overview

**TikTok Profile & Video Scraper** is a powerful Apify Actor designed to collect essential public TikTok data from:

* ✅ TikTok profile URLs
* ✅ TikTok video URLs
* ✅ Usernames (@username or username)

This actor automatically detects the provided URL type and returns structured, clean, ready-to-use datasets.

It is ideal for:

* 📊 Social media analytics
* 📈 Creator research
* 🤖 Automation workflows
* 🧠 Data analysis projects
* 🔎 TikTok account discovery
* 🧾 Dataset generation

---

### 🔥 Keywords :

TikTok scraper, TikTok profile scraper, TikTok video scraper, TikTok data extractor, TikTok profile data API, TikTok video metadata extractor, TikTok username scraper, TikTok automation tool, TikTok analytics dataset, TikTok creator data scraper, Apify TikTok scraper.

---

### 🎯 What Data This Actor Provides

* The actor extracts **structured TikTok public metadata** depending on the URL type you provide.

#### 👤 Profile URLs → Profile Data

* When a profile URL or username is used, the actor returns user identity information.

#### 🎬 Video URLs → Video Data

* When a video URL is used, the actor returns video metadata and creator identifiers.

---

### 📦 Outputs Generated

* The actor produces a **dataset** where each input URL generates one output object.

Two output types exist:

* `profile`
* `video`

---

### 🧾 Output Fields Explained

---

#### 👤 Profile Output

| Field       | Description                            |
| ----------- | -------------------------------------- |
| `type`      | Indicates output type (`profile`)      |
| `source`    | Original TikTok profile URL            |
| `id`        | Internal TikTok user identifier        |
| `uid`       | Same user identifier for compatibility |
| `sec_uid`   | Secure TikTok user identifier          |
| `unique_id` | Public TikTok username                 |

✅ Useful for account mapping and identity tracking.

---

#### 🎬 Video Output

| Field              | Description                     |
| ------------------ | ------------------------------- |
| `type`             | Indicates output type (`video`) |
| `source`           | Original TikTok video URL       |
| `video_id`         | Unique video identifier         |
| `author_unique_id` | Creator username                |
| `author_id`        | Creator internal ID             |
| `author_sec_uid`   | Creator secure ID               |
| `desc`             | Video caption/description       |
| `create_time`      | Video creation timestamp        |

✅ Perfect for content indexing and analytics workflows.

---

### ⭐ Features & Advantages

#### ⚡ Smart URL Detection

Automatically detects whether input is:

* profile
* username
* video

No manual configuration required.

---

#### 📊 Structured Clean Output

Returns normalized JSON ready for:

* APIs
* databases
* dashboards
* automation pipelines

---

#### 🔁 Batch Processing

Process multiple TikTok URLs in one run.

---

#### 🧩 Flexible Input Support

Accepts:

* Full TikTok URLs
* @usernames
* Plain usernames

---

#### 🚀 Automation Friendly

Designed for integration with:

* Apify workflows
* scheduling
* external automation systems

---

#### 🧠 Reliable Data Identification

Ensures consistent creator and video identification fields across outputs.

---

### 🧩 Input Format

#### Required Input

```json
{
  "urls": [
    "https://www.tiktok.com/@username",
    "@username",
    "username",
    "https://www.tiktok.com/@username/video/123456789"
  ]
}
````

***

### ✅ Input Examples

#### Example 1 — Profile

```json
{
  "urls": [
    "https://www.tiktok.com/@exampleuser"
  ]
}
```

***

#### Example 2 — Video

```json
{
  "urls": [
    "https://www.tiktok.com/@exampleuser/video/7531511767806135569"
  ]
}
```

***

### 📤 Output Samples

***

#### 👤 Profile Result

```json
{
  "type": "profile",
  "source": "https://www.tiktok.com/@exampleuser",
  "id": "123456789",
  "uid": "123456789",
  "sec_uid": "MS4wLjABAAAA...",
  "unique_id": "exampleuser"
}
```

***

#### 🎬 Video Result

```json
{
  "type": "video",
  "source": "https://www.tiktok.com/@exampleuser/video/7531511767806135569",
  "video_id": "7531511767806135569",
  "author_unique_id": "exampleuser",
  "author_id": "123456789",
  "author_sec_uid": "MS4wLjABAAAA...",
  "desc": "Sample video caption",
  "create_time": "1700000000"
}
```

***

### 🌟 Benefits

- ✅ Saves hours of manual TikTok research
- ✅ Provides structured datasets instantly
- ✅ Supports bulk workflows
- ✅ Works with mixed input types
- ✅ Ideal for marketing intelligence
- ✅ Easy integration into automation pipelines

***

### 🧠 Best Practices for Using This Actor

#### ✔ Use Clean URLs

Provide direct TikTok profile or video links whenever possible.

***

#### ✔ Batch Similar Tasks

Group URLs in one run for efficiency.

***

#### ✔ Validate Inputs

Ensure URLs are valid TikTok links.

***

#### ✔ Store Dataset Outputs

Export results to JSON/CSV for analysis.

***

#### ✔ Combine with Apify Scheduling

Run periodically to maintain updated datasets.

***

### ⚠️ Possible Errors & How to Avoid Them

| Issue          | Cause                       | Solution                  |
| -------------- | --------------------------- | ------------------------- |
| Empty result   | Invalid URL                 | Verify TikTok link format |
| Missing fields | Content unavailable         | Retry later               |
| Partial data   | Temporary access limitation | Run actor again           |
| No output      | Incorrect input key         | Use `urls` array          |

***

### 🧪 Supported URL Types

- ✅ Profile URLs

```
https://www.tiktok.com/@username
```

- ✅ Video URLs

```
https://www.tiktok.com/@username/video/VIDEO_ID
```

- ✅ Usernames

```
@username
username
```

***

### 📈 Use Cases

- 📊 Influencer database creation
- 📣 Marketing research
- 🤖 Automation workflows
- 🔎 Creator discovery
- 📚 Social media datasets
- 🧠 AI training datasets
- 📈 Trend analysis

***

### 🔒 Privacy & Compliance

This actor processes publicly accessible TikTok information only.

No confidential platform mechanisms are exposed or described.

***

### 🚀 Why Choose This Actor?

- ✔ Beginner friendly
- ✔ Automation ready
- ✔ Clean structured outputs
- ✔ Flexible input system
- ✔ Reliable identification fields
- ✔ Optimized for Apify workflows

***

### 💡 Pro Tips

⭐ Mix profile and video URLs in one run
⭐ Schedule runs for continuous datasets
⭐ Export datasets for analytics tools
⭐ Use creator IDs for cross-referencing

***

### 🏁 Summary

**TikTok Profile & Video Scraper** delivers a simple yet powerful way to extract structured TikTok metadata at scale.

Whether you need creator identifiers or video information, this actor provides a clean, automation-ready dataset optimized for analytics, research, and growth workflows.

***

✨ **Ready to collect TikTok data efficiently? Run the actor now and build your dataset instantly.**

***

***

## Here my another actors :

### Youtube Iteams:

- [🎶 Youtube Audio Downloader (Video/Shorts)](https://console.apify.com/actors/lTUPL4gmLTDNXBeWw/source)
- [Youtube Video Downloader Advanced](https://console.apify.com/actors/XOpQsUkgGZLGSCJd0/source)
- [Youtube Video Downloader ( Soundless )](https://console.apify.com/actors/gFsczW1QplIquv9eL/source)
- [Youtube Video Downloader](https://console.apify.com/actors/9kZQcUlHZRKp1ilZA/source)
- [Youtube Video Details Scraper](https://console.apify.com/actors/On4VfiWjGnT79clm1/source)
- [Youtube Transcript Ninja (Subtitles) ](https://console.apify.com/actors/eWrsJHhdeEbVHChpX/source)
- [Youtube Thumbnails Downloader & Scraper](https://console.apify.com/actors/YShot3wkL0HJdRkD0/source)
- [Youtube Tags or Hashtags Scraper](https://console.apify.com/actors/O1FU99ID2ccR5wcS8/source)
- [Youtube Tags Scraper](https://console.apify.com/actors/1wVokAhQLbbeeFVfR/source)
- [Youtube Shorts Scraper lite](https://console.apify.com/actors/bOyWDt1IbXZsadWRp/source)
- [Youtube Shorts Downloader Pro](https://console.apify.com/actors/bN1AjNRMops81rGkg/source)
- [Youtube Shorts Comments Scraper](https://console.apify.com/actors/ON1C4qgHaEQEhhEmI/source)
- [Youtube Community Posts Scraper](https://console.apify.com/actors/X38E51BParHFNaCw1/source)
- [Youtube Channel Id Scraper Pro](https://console.apify.com/actors/2uuIEovgGHcYjEKyN/source)
- [Youtube Video Transcript  Scraper ( Subtitles )](https://console.apify.com/actors/IEmSN6FkNn0tw10BA/source)
- [Youtube Video Comments Scraper](https://console.apify.com/actors/URh4zBT1aesfE8QKc/source)
- [Youtube Shorts Scraper  Pro](https://console.apify.com/actors/G4McyHJJzc2TbUSo6/source)
- [Youtube Shorts Scraper](https://console.apify.com/actors/XP0WgKweF1M83FnmR/source)
- [Youtube Channel Scraper](https://console.apify.com/actors/ufMZfwMgyHeaoDdAd/source)
- [YouTube Video Description Extractor](https://console.apify.com/actors/Xqae3CmxqT3HfHaJ5/source)
- [YouTube Hashtag Scraper](https://console.apify.com/actors/d4bYqQ0LWuczEgumx/source)
- [YouTube Description Scraper pro](https://console.apify.com/actors/OVymx0bku0C8gowB0/source)
- [YouTube Comments Scraper | Pay Per Result](https://console.apify.com/actors/ict6AecoJ85T4RthZ/source)
- [YouTube Channel ID Scraper](https://console.apify.com/actors/P9XlG8ylMGqfoelOg/source)

### Tiktok Iteams:

- [Tiktok Video Downloader](https://console.apify.com/actors/dlyQGIrqOracdqOeb/source)
- [Tiktok Video Details Scraper Pro](https://console.apify.com/actors/kZMMAHBehLOdG2FBb/source)
- [Tiktok Profile Scraper](https://console.apify.com/actors/C9mdCvPs7mDV8AYdd/source)
- [TikTok Video Scraper](https://console.apify.com/actors/7NjipRJbS73X9Io90/source)
- [TikTok Profile Videos Scraper](https://console.apify.com/actors/F6ar6Hu5STLp5mdAf/source)
- [TikTok Profile Scraper pro](https://console.apify.com/actors/3fmkMmoCBQ4SBIIAN/source)
- [TikTok Audio Downloader 🎵](https://console.apify.com/actors/jHipu7fQihSVhBE3x/source)

### Snapchat Iteams:

- [Snapchat Video Downloader (Spotlight )](https://console.apify.com/actors/yKz99HNmn4AgmhPOf/source)
- [Snapchat Video  Details Scraper (Spotlight)](https://console.apify.com/actors/fyV48EkRqcNoeq2kH/source)
- [Snapchat Followers Scraper](https://console.apify.com/actors/PxBiNYw0mgZOagGyD/source)
- [Snapchat Profile     Scraper](https://console.apify.com/actors/siCUsZdm6xmc3g7HF/source)
- [Snapchat Profile Scraper  Mini](https://console.apify.com/actors/qhkQO51Cv6iHJxdAs/source)

### Instagram Iteams:

- [Instagram video Downloader + Scraper](https://console.apify.com/actors/zIpixF6ZjlbelQDrY/source)
- [Instagram Video Downloader (Soundlss)](https://console.apify.com/actors/QQkJuhIQp4pexakls/source)
- [Instagram Thumbnail Scraper Video & Reels](https://console.apify.com/actors/z8JOosBY8hlqiUthl/source)
- [Instagram Reels  Downloader](https://console.apify.com/actors/VRbovYCWXTZXuVaN2/source)
- [Instagram Profile URL to Username Converter & Extractor](https://console.apify.com/actors/FOApkedA1VuG6ncno/source)
- [Instagram Profile Scraper](https://console.apify.com/actors/5dvorBkg7ccX95wAg/source)
- [Instagram Post Videos Downloader](https://console.apify.com/actors/h95ZexZ0ifOX4JEYQ/source)
- [Instagram Followers Scraper](https://console.apify.com/actors/c55pdH9mCE02sj7Dg/source)
- [Instagram Audio Downloader](https://console.apify.com/actors/MQRNuEHUqKreEi8gI/source)
- [Instagram Video Scraper + Downloader](https://console.apify.com/actors/63Z5eSy3IxgdIEYOX/source)
- [Instagram Video  scraper Advanced](https://console.apify.com/actors/79ng2nukXLzUn0aWg/source)
- [Instagram Video Details  scraper](https://console.apify.com/actors/VLyBXSwQpHTFwUcds/source)
- [Instagram Reels Details scraper](https://console.apify.com/actors/oGR3xfeXTuIirhdlZ/source)
- [Instagram Followers Scraper Pro](https://console.apify.com/actors/MqW3EtUZXm6OHdvcI/source)

### Facebook Iteams:

- [Facebook reels Downloader  (Separate audio or video)](https://console.apify.com/actors/nuvIRaMeRIzz3cfxK/source)
- [Facebook Video Downloader advanced](https://console.apify.com/actors/2SU8ZuABbAVFNKMZa/source)
- [Facebook Video Details Scraper Advanced](https://console.apify.com/actors/umYouAXm92472jIdY/source)
- [Facebook Video Details Scraper](https://console.apify.com/actors/cQi4k63arffL6Cn0m/source)
- [Facebook Transcript & Subtitle scraper](https://console.apify.com/actors/hMNe1QYDOtcTc95qI/source)
- [Facebook Thumbnail Downloader Video & Reels](https://console.apify.com/actors/9SmYiqGTUia29Yd1Y/source)
- [Facebook Reels Downloader Advanced](https://console.apify.com/actors/3Zdnp9TnvltdoC44T/source)
- [Facebook Reels Details Scraper  Best and  Affordable](https://console.apify.com/actors/nuzr418MKJltywrCh/source)
- [Facebook Reels Details Scraper](https://console.apify.com/actors/OGBA89e5Ki6Y5amko/source)
- [Facebook Page Details Scraper](https://console.apify.com/actors/PL9nP9BrKDSsKwSZF/source)
- [Facebook Audio Downloader](https://console.apify.com/actors/uVrcf4OJ9VW8iCybQ/source)

### Amazon Iteams:

- [Amazon Search Scraper](https://console.apify.com/actors/YcgJR1WP1cHJhHzvH/source)
- [Amazon Product Details Scraper ](https://console.apify.com/actors/1twpltijc10KFaVeb/source)

# Actor input Schema

## `urls` (type: `array`):

List of TikTok URLs. Accepts:

- Profile URLs: https://www.tiktok.com/@username
- Bare usernames: @username or username
- Video URLs: https://www.tiktok.com/@username/video/VIDEO\_ID

## Actor input object example

```json
{
  "urls": [
    "@itsjojosiwa",
    "https://www.tiktok.com/@doorman_stories",
    "https://www.tiktok.com/@huydutblox/video/7531511767806135569",
    "https://www.tiktok.com/@cheirman.ae/video/7585290092487462166",
    "https://www.tiktok.com/@cholakai_edits/video/7530243136455560470?is_from_webapp=1&sender_device=pc"
  ]
}
```

# 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 = {
    "urls": [
        "@itsjojosiwa",
        "https://www.tiktok.com/@doorman_stories",
        "https://www.tiktok.com/@huydutblox/video/7531511767806135569",
        "https://www.tiktok.com/@cheirman.ae/video/7585290092487462166",
        "https://www.tiktok.com/@cholakai_edits/video/7530243136455560470?is_from_webapp=1&sender_device=pc"
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("alpha-scraper/tiktok-videos-profiles-id-scraper").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 = { "urls": [
        "@itsjojosiwa",
        "https://www.tiktok.com/@doorman_stories",
        "https://www.tiktok.com/@huydutblox/video/7531511767806135569",
        "https://www.tiktok.com/@cheirman.ae/video/7585290092487462166",
        "https://www.tiktok.com/@cholakai_edits/video/7530243136455560470?is_from_webapp=1&sender_device=pc",
    ] }

# Run the Actor and wait for it to finish
run = client.actor("alpha-scraper/tiktok-videos-profiles-id-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print("💾 Check your data here: https://console.apify.com/storage/datasets/" + run["defaultDatasetId"])
for item in client.dataset(run["defaultDatasetId"]).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "urls": [
    "@itsjojosiwa",
    "https://www.tiktok.com/@doorman_stories",
    "https://www.tiktok.com/@huydutblox/video/7531511767806135569",
    "https://www.tiktok.com/@cheirman.ae/video/7585290092487462166",
    "https://www.tiktok.com/@cholakai_edits/video/7530243136455560470?is_from_webapp=1&sender_device=pc"
  ]
}' |
apify call alpha-scraper/tiktok-videos-profiles-id-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=alpha-scraper/tiktok-videos-profiles-id-scraper",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Tiktok Videos & Profiles Id Scraper",
        "description": "Extract TikTok profile metadata and video information from usernames, profile URLs, or video links. Automatically detects input type and returns structured datasets including user IDs, video IDs, captions, and creator details — ideal for analytics, automation, and research.",
        "version": "0.0",
        "x-build-id": "z2RF3RK6NZAVOhvvM"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/alpha-scraper~tiktok-videos-profiles-id-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-alpha-scraper-tiktok-videos-profiles-id-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/alpha-scraper~tiktok-videos-profiles-id-scraper/runs": {
            "post": {
                "operationId": "runs-sync-alpha-scraper-tiktok-videos-profiles-id-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/alpha-scraper~tiktok-videos-profiles-id-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-alpha-scraper-tiktok-videos-profiles-id-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",
                "required": [
                    "urls"
                ],
                "properties": {
                    "urls": {
                        "title": "TikTok URLs",
                        "type": "array",
                        "description": "List of TikTok URLs. Accepts:\n- Profile URLs: https://www.tiktok.com/@username\n- Bare usernames: @username or username\n- Video URLs: https://www.tiktok.com/@username/video/VIDEO_ID",
                        "items": {
                            "type": "string"
                        }
                    }
                }
            },
            "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
                                    }
                                }
                            },
                            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
