# TikTok Ads Spy (`burbn/tiktok-top-ads-spy`) Actor

Uncover trending TikTok ads across 80+ countries. Filter by Spark Ads, objective, and industry. Download high-converting creatives for your ad campaigns.

- **URL**: https://apify.com/burbn/tiktok-top-ads-spy.md
- **Developed by:** [Kevin](https://apify.com/burbn) (community)
- **Categories:** Social media, Lead generation, E-commerce
- **Stats:** 5 total users, 3 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $5.00 / 1,000 results

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.
Since this Actor supports Apify Store discounts, the price gets lower the higher subscription plan you have.

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

## 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 Top Ads Spy

**Uncover the most successful TikTok ads across any industry and country. Filter top-performing campaigns, analyze engagement metrics like CTR and Likes, and download high-quality ad creatives directly. Perfect for marketers, dropshippers, and competitive research!**

### 📋 Table of Contents

- [🚀 Features](#-features)
- [🎯 Use Cases](#-use-cases)
- [⚡ Quick Start](#-quick-start)
- [📊 Input Parameters](#-input-parameters)
- [📤 Output Format](#-output-format)
- [🎨 Ad Data Extracted](#-ad-data-extracted)
- [📈 Performance & Reliability](#-performance--reliability)
- [💡 Best Practices](#-best-practices)
- [❓ FAQ](#-faq)

### 🚀 Features

#### 🎬 **Complete Ad Intelligence**
- ✅ **No Login Required** - Spy on top ads without a TikTok account
- ✅ **Global Coverage** - Filter campaigns from over 80+ supported countries
- ✅ **Deep Industry Filtering** - Target specific categories, apps, games, or physical products
- ✅ **Objective Filtering** - Filter by Traffic, App Installs, Conversions, and more
- ✅ **Real-Time Data** - Discover currently trending and successful ads

#### 📊 **Comprehensive Metrics**
- ✅ **Engagement Data** - Access exact Like percentages and Click-Through Rates (CTR)
- ✅ **Cost & Performance** - Understand campaign cost scaling potential
- ✅ **Format Details** - Identify whether an ad is a "Spark Ad" or regular feed ad
- ✅ **Video Downloads** - Get URLs for high-quality MP4 video creatives (up to 1080p)
- ✅ **Metadata** - Scrape ad titles, keywords, and campaign tags

### 🎯 Use Cases

| Use Case | Description | Benefits |
|----------|-------------|----------|
| 📈 **Performance Marketing** | Discover high-CTR creatives | Lower your CPA by replicating proven formulas |
| 🛍️ **Dropshipping/E-commerce** | Find winning products | See what products are actively being scaled |
| 🔍 **Competitive Intelligence** | Study competitor strategies | Benchmark against the best ad campaigns |
| 🎨 **Ad Creative Inspiration** | Discover trending formats | Improve your creative output and hooks |
| 📱 **App Promotion** | Analyze app install campaigns | See how top apps acquire users on TikTok |
| 🌍 **Market Expansion** | Research ads in new countries | Understand regional differences before launching |

### ⚡ Quick Start

#### 1️⃣ **Basic Quick Search (US, Last 30 Days)**
```json
{
  "period": "30",
  "country_code": "US",
  "order_by": "ctr",
  "maxResults": 100
}
````

#### 2️⃣ **Find High Converting E-commerce Ads**

```json
{
  "period": "7",
  "country_code": "US",
  "objective": "4", 
  "order_by": "cvr",
  "maxResults": 50
}
```

#### 3️⃣ **Search by Specific Keyword**

```json
{
  "period": "180",
  "country_code": "GB",
  "keyword": "skincare",
  "maxResults": 200
}
```

### 📊 Input Parameters

#### Configuration Options

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `period` | String | `"30"` | Time range (7, 30, or 180 days) |
| `country_code` | String | `"US"` | Country ISO code (e.g., US, GB, CA) |
| `industry` | String | `""` | Filter by specific industry category |
| `objective` | String | `""` | Campaign goal (Conversions, App Installs, etc.) |
| `ad_format` | String | `""` | Filter by Spark Ads vs Non-Spark Ads |
| `ad_language` | String | `""` | Language of the ad |
| `like` | String | `""` | Filter by Like range (e.g., Top 1~20%) |
| `order_by` | String | `"ctr"` | Metric to sort by (ctr, cvr, impression, like...) |
| `keyword` | String | `""` | Keyword to search internally |
| `page` | Integer| `1` | Start extraction from this page |
| `maxResults`| Integer| `100` | Maximum number of ads to retrieve (0 for all) |
| `limit` | Integer| `20` | Results per page per request (Max 20) |

### 📤 Output Format

#### 🎬 **Ad Data Structure**

```json
{
  "source": "tiktok_top_ads",
  "ad_id": 1234567890123456,
  "ad_title": "Get 50% off our best selling product today! Link in bio. #sale #trending",
  "brand_name": "Premium Brand",
  "cost": 5,
  "ctr": 3.42,
  "like": 1,
  "is_search": false,
  "tag": ["E-commerce", "Apparel"],
  "industry_key": "22110000000",
  "objective_key": "4",
  "video_id": "v123456789",
  "duration": 15.4,
  "cover_url": "https://p16-sign-va.tiktokcdn.com/...",
  "video_url": "https://v16m.tiktokcdn.com/...",
  "video_urls": {
    "1080p": "https://v16m.tiktokcdn.com/...",
    "720p": "https://v16m.tiktokcdn.com/... "
  },
  "video_width": 1080,
  "video_height": 1920,
  "favorite": false
}
```

### 🎨 Ad Data Extracted

#### 🎬 **Video Content & Media**

| Element | Description | Details |
|---------|-------------|--------|
| **Best Video URL** | Direct download link in the highest available resolution | High-quality MP4 format |
| **All Resolutions** | URLs for 1080p, 720p, 540p, 480p, and 360p | Flexible media downloading |
| **Duration & Dimensions** | Length in seconds and video width/height | Technical specs |
| **Cover URL** | Ad thumbnail | Best for preview grids |

#### 📈 **Performance & Metric Data**

| Metric | Description | Details |
|--------|-------------|----------|
| **CTR** | Click-Through Rate | Measure how compelling the creative is |
| **Like Tier** | The percentile bracket of likes | Gauges top-end engagement |
| **Cost Scaling** | Relative cost expenditure indicator | Highlights ads receiving heavy budget |
| **Objective / Industry** | Direct categorization codes | Good for mapping across niches |

### 📈 Performance & Reliability

#### 🔄 **Reliability Features**

- ✅ **Auto-Retry & Backoff** - Handles temporary connection hiccups gracefully
- ✅ **Dynamic Pagination** - Seamlessly loops through pages of results
- ✅ **Fail-Safes** - Early exits if maximum results limit is hit perfectly

### 💡 Best Practices

#### ✅ **Recommended Usage**

1. **Test Hooks Quickly** - Sort by `CTR` over a `7` day period to see currently working ad hooks.
2. **Find Evergreen Hits** - Sort by `impression` over a `180` day period to see legacy ads that are constantly funded.
3. **Download Assets Immediately** - Save `.mp4` URLs as soon as possible, as TikTok CDN links rotate and eventually expire.
4. **Use Max Results Carefully** - Do not set Max Results to 0 (Unlimited) on broad searches; it could take a long time and use unnecessary units.

#### ⚠️ **Important Notes**

- The API uses localized ISO country codes (e.g., `US`, `GB`). Ensure codes are standard 2-letter combos.
- Top ad metrics are estimated brackets/indexes rather than absolute numeric views in order to protect advertiser privacy.
- Not every video resolution is guaranteed to be available; the scraper defaults down to the next highest quality available.

### ❓ FAQ

#### **Q: Do I need to be logged into TikTok?**

**A:** No, this tool utilizes specialized endpoints and does not require you to provide cookies, account access, or passwords.

#### **Q: Can I get the actual number of views/clicks?**

**A:** TikTok abstracts raw ad numbers on its public dashboards to protect advertiser data. The `ctr`, `like`, and `cost` fields provide highly accurate percentile/relative data.

#### **Q: Are the video URLs permanent?**

**A:** Temporary. CDN video URLs typically expire after some time. It is strongly advised to download the assets after scraping if you wish to archive them.

#### **Q: Does this scrape Spark ads (organically boosted posts)?**

**A:** Yes, both Spark Ads and standard non-Spark Ads are scraped. You can filter between them using the Ad Format parameter.

***

### 🏷️ **Keywords & Tags**

`tiktok top ads`, `tiktok ads scraper`, `tiktok ads spy`, `tiktok ads library`, `tiktok ads research`, `tiktok ads analysis`, `tiktok ads monitoring`, `tiktok ads tracker`, `tiktok ads data extraction`, `tiktok ads metadata`, `tiktok ads performance`, `tiktok ads metrics`, `tiktok ads creative`, `tiktok ads video`, `tiktok ads downloader`, `tiktok ads api`, `tiktok ads extractor`, `tiktok ads analytics`, `tiktok ads monitoring`, `tiktok ads archiver`, `tiktok ads saver`, `tiktok ads backup`, `tiktok ads data extraction`, `tiktok ads metadata`, `tiktok music extractor`, `tiktok engagement metrics`, `tiktok ads viewer without login`, `tiktok ads viewer online`, `tiktok ads downloader apify`, `tiktok ads scraper apify actor`, `tiktok social media monitoring`, `tiktok competitor analysis`, `tiktok influencer research`, `tiktok content analysis`, `tiktok ads automation`, `tiktok ads tracking`, `tiktok ads research tool`, `tiktok ads batch download`, `tiktok api scraper`, `tiktok ads viewer tool`, `tiktok ads data scraper`, `tiktok ads content extractor`, `tiktok music scraper`, `tiktok engagement tracker`, `tiktok analytics tool`, `tiktok data extraction`, `tiktok scraper`, `tiktok downloader`, `tiktok ads collector`, `tiktok trend analysis`, `tiktok marketing tool`, `tiktok social media tool`

***

### 🎁 Get $5 Free Apify Credits

New to Apify? [Sign up using this link](https://apify.com?fpr=free-credits) and get **$5 free credits** to start scraping Google Ads right away! No credit card required.

**⭐ If this actor helps your workflow, please give it a star!**

***

# Actor input Schema

## `period` (type: `string`):

Select the time period for top ads data. Choose from Last 7 days, Last 30 days, or Last 180 days.

## `page` (type: `integer`):

The page number to start scraping from. Default: 1.

## `country_code` (type: `string`):

Select a country to filter ads by region. Leave empty for all countries.

## `order_by` (type: `string`):

Sort ads by a specific metric.

## `like` (type: `string`):

Filter ads by like performance range. 1: Top 1~20%, 2: Top 21~40%, 3: Top 41~60%, 4: Top 61~80%, 5: Top 81~100%.

## `ad_format` (type: `string`):

Filter by ad format type.

## `objective` (type: `string`):

Filter by campaign objective.

## `industry` (type: `string`):

Select an industry to filter ads. Leave empty for all industries.

## `ad_language` (type: `string`):

Select a language to filter ads. Leave empty for all languages.

## `keyword` (type: `string`):

Search ads by keyword in ad title.

## `maxResults` (type: `integer`):

Maximum number of ads to scrape. Set to 0 for unlimited (scrapes all available results). Default: 100.

## `limit` (type: `integer`):

Number of results to fetch per API request. Maximum: 20.

## Actor input object example

```json
{
  "period": "30",
  "page": 1,
  "country_code": "US",
  "order_by": "ctr",
  "like": "",
  "ad_format": "",
  "objective": "",
  "industry": "",
  "ad_language": "",
  "keyword": "",
  "maxResults": 20,
  "limit": 20
}
```

# Actor output Schema

## `overview` (type: `string`):

Open the dataset view with an overview of scraped TikTok top ads including key metrics.

## `detailed` (type: `string`):

Open the dataset view with detailed data for each scraped TikTok ad.

# 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 = {
    "period": "30",
    "page": 1,
    "country_code": "US",
    "order_by": "ctr",
    "like": "",
    "ad_format": "",
    "objective": "",
    "industry": "",
    "ad_language": "",
    "keyword": "",
    "maxResults": 20,
    "limit": 20
};

// Run the Actor and wait for it to finish
const run = await client.actor("burbn/tiktok-top-ads-spy").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 = {
    "period": "30",
    "page": 1,
    "country_code": "US",
    "order_by": "ctr",
    "like": "",
    "ad_format": "",
    "objective": "",
    "industry": "",
    "ad_language": "",
    "keyword": "",
    "maxResults": 20,
    "limit": 20,
}

# Run the Actor and wait for it to finish
run = client.actor("burbn/tiktok-top-ads-spy").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 '{
  "period": "30",
  "page": 1,
  "country_code": "US",
  "order_by": "ctr",
  "like": "",
  "ad_format": "",
  "objective": "",
  "industry": "",
  "ad_language": "",
  "keyword": "",
  "maxResults": 20,
  "limit": 20
}' |
apify call burbn/tiktok-top-ads-spy --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "command": "npx",
            "args": [
                "mcp-remote",
                "https://mcp.apify.com/?tools=burbn/tiktok-top-ads-spy",
                "--header",
                "Authorization: Bearer <YOUR_API_TOKEN>"
            ]
        }
    }
}

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "TikTok Ads Spy",
        "description": "Uncover trending TikTok ads across 80+ countries. Filter by Spark Ads, objective, and industry. Download high-converting creatives for your ad campaigns.",
        "version": "1.0",
        "x-build-id": "AEDxJGYDc0k0kkWqf"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/burbn~tiktok-top-ads-spy/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-burbn-tiktok-top-ads-spy",
                "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/burbn~tiktok-top-ads-spy/runs": {
            "post": {
                "operationId": "runs-sync-burbn-tiktok-top-ads-spy",
                "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/burbn~tiktok-top-ads-spy/run-sync": {
            "post": {
                "operationId": "run-sync-burbn-tiktok-top-ads-spy",
                "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": [
                    "page"
                ],
                "properties": {
                    "period": {
                        "title": "📅 Time Period",
                        "enum": [
                            "7",
                            "30",
                            "180"
                        ],
                        "type": "string",
                        "description": "Select the time period for top ads data. Choose from Last 7 days, Last 30 days, or Last 180 days.",
                        "default": "30"
                    },
                    "page": {
                        "title": "📄 Start Page Number",
                        "minimum": 1,
                        "type": "integer",
                        "description": "The page number to start scraping from. Default: 1.",
                        "default": 1
                    },
                    "country_code": {
                        "title": "🌍 Country",
                        "enum": [
                            "",
                            "DZ",
                            "AR",
                            "AU",
                            "AT",
                            "AZ",
                            "BH",
                            "BD",
                            "BY",
                            "BE",
                            "BO",
                            "BR",
                            "BG",
                            "KH",
                            "CA",
                            "CL",
                            "CO",
                            "CR",
                            "HR",
                            "CY",
                            "CZ",
                            "DK",
                            "DO",
                            "EC",
                            "EG",
                            "EE",
                            "FI",
                            "FR",
                            "DE",
                            "GR",
                            "GT",
                            "HU",
                            "ID",
                            "IQ",
                            "IE",
                            "IL",
                            "IT",
                            "JP",
                            "JO",
                            "KZ",
                            "KE",
                            "KW",
                            "LV",
                            "LB",
                            "LT",
                            "MY",
                            "MX",
                            "MA",
                            "NL",
                            "NZ",
                            "NG",
                            "NO",
                            "OM",
                            "PK",
                            "PA",
                            "PY",
                            "PE",
                            "PH",
                            "PL",
                            "PT",
                            "PR",
                            "QA",
                            "RO",
                            "SA",
                            "RS",
                            "SG",
                            "SK",
                            "SI",
                            "ZA",
                            "KR",
                            "ES",
                            "LK",
                            "SE",
                            "CH",
                            "TW",
                            "TH",
                            "TR",
                            "AE",
                            "GB",
                            "US",
                            "UY",
                            "VN"
                        ],
                        "type": "string",
                        "description": "Select a country to filter ads by region. Leave empty for all countries.",
                        "default": ""
                    },
                    "order_by": {
                        "title": "📈 Sort By",
                        "enum": [
                            "ctr",
                            "impression",
                            "like",
                            "cvr",
                            "play_6s_rate",
                            "play_2s_rate"
                        ],
                        "type": "string",
                        "description": "Sort ads by a specific metric.",
                        "default": "ctr"
                    },
                    "like": {
                        "title": "❤️ Like Range",
                        "enum": [
                            "",
                            "1",
                            "2",
                            "3",
                            "4",
                            "5"
                        ],
                        "type": "string",
                        "description": "Filter ads by like performance range. 1: Top 1~20%, 2: Top 21~40%, 3: Top 41~60%, 4: Top 61~80%, 5: Top 81~100%.",
                        "default": ""
                    },
                    "ad_format": {
                        "title": "🎨 Ad Format",
                        "enum": [
                            "",
                            "1",
                            "2"
                        ],
                        "type": "string",
                        "description": "Filter by ad format type.",
                        "default": ""
                    },
                    "objective": {
                        "title": "🎯 Campaign Objective",
                        "enum": [
                            "",
                            "1",
                            "2",
                            "3",
                            "4",
                            "5",
                            "6",
                            "7"
                        ],
                        "type": "string",
                        "description": "Filter by campaign objective.",
                        "default": ""
                    },
                    "industry": {
                        "title": "🏭 Industry",
                        "enum": [
                            "",
                            "22000000000",
                            "22102000000",
                            "22101000000",
                            "22107000000",
                            "22108000000",
                            "22109000000",
                            "22106000000",
                            "22999000000",
                            "22112000000",
                            "22105000000",
                            "22113000000",
                            "22110000000",
                            "22111000000",
                            "16000000000",
                            "16105000000",
                            "16104000000",
                            "16101000000",
                            "16102000000",
                            "16999000000",
                            "16100000000",
                            "20000000000",
                            "20101000000",
                            "20110000000",
                            "20104000000",
                            "20106000000",
                            "20109000000",
                            "20107000000",
                            "20102000000",
                            "20105000000",
                            "20999000000",
                            "20111000000",
                            "20103000000",
                            "20100000000",
                            "20108000000",
                            "20112000000",
                            "12000000000",
                            "12104000000",
                            "12108000000",
                            "12100000000",
                            "12102000000",
                            "12110000000",
                            "12105000000",
                            "12107000000",
                            "12109000000",
                            "12103000000",
                            "12999000000",
                            "12101000000",
                            "12106000000",
                            "14000000000",
                            "14105000000",
                            "14104000000",
                            "14107000000",
                            "14106000000",
                            "14101000000",
                            "14100000000",
                            "14999000000",
                            "14103000000",
                            "14102000000",
                            "24000000000",
                            "24108000000",
                            "24118000000",
                            "24105000000",
                            "24103000000",
                            "24104000000",
                            "24109000000",
                            "24114000000",
                            "24107000000",
                            "24120000000",
                            "24119000000",
                            "24116000000",
                            "24117000000",
                            "24111000000",
                            "24106000000",
                            "24112000000",
                            "24101000000",
                            "24999000000",
                            "24113000000",
                            "24100000000",
                            "24102000000",
                            "24110000000",
                            "24115000000",
                            "30000000000",
                            "30100000000",
                            "30102000000",
                            "30101000000",
                            "10000000000",
                            "10100000000",
                            "10102000000",
                            "10105000000",
                            "10106000000",
                            "10999000000",
                            "10103000000",
                            "10101000000",
                            "10104000000",
                            "13000000000",
                            "13100000000",
                            "13108000000",
                            "13117000000",
                            "13115000000",
                            "13116000000",
                            "13112000000",
                            "13107000000",
                            "13104000000",
                            "13102000000",
                            "13110000000",
                            "13111000000",
                            "13109000000",
                            "13999000000",
                            "13105000000",
                            "13113000000",
                            "13101000000",
                            "13114000000",
                            "1310300000",
                            "27000000000",
                            "27103000000",
                            "27104000000",
                            "27100000000",
                            "27101000000",
                            "27102000000",
                            "27999000000",
                            "25000000000",
                            "25301000000",
                            "25302000000",
                            "25300000000",
                            "25313000000",
                            "25303000000",
                            "25999000000",
                            "25311000000",
                            "25304000000",
                            "25305000000",
                            "25306000000",
                            "25307000000",
                            "25308000000",
                            "25309000000",
                            "25310000000",
                            "25312000000",
                            "29000000000",
                            "29102000000",
                            "29101000000",
                            "29100000000",
                            "29103000000",
                            "29999000000",
                            "21000000000",
                            "21102000000",
                            "21101000000",
                            "21103000000",
                            "21104000000",
                            "21100000000",
                            "21999000000",
                            "21105000000",
                            "18000000000",
                            "18106000000",
                            "18110000000",
                            "18104000000",
                            "18101000000",
                            "18102000000",
                            "18105000000",
                            "18108000000",
                            "18109000000",
                            "18999000000",
                            "18112000000",
                            "18100000000",
                            "18103000000",
                            "18107000000",
                            "18111000000",
                            "26000000000",
                            "26114000000",
                            "26112000000",
                            "26102000000",
                            "26113000000",
                            "26108000000",
                            "26104000000",
                            "26105000000",
                            "26111000000",
                            "26999000000",
                            "26101000000",
                            "26106000000",
                            "26107000000",
                            "26109000000",
                            "26103000000",
                            "26100000000",
                            "23000000000",
                            "23113000000",
                            "23114000000",
                            "23122000000",
                            "23102000000",
                            "23126000000",
                            "23108000000",
                            "23105000000",
                            "23111000000",
                            "23116000000",
                            "23104000000",
                            "23128000000",
                            "23107000000",
                            "23124000000",
                            "23125000000",
                            "23127000000",
                            "23115000000",
                            "23106000000",
                            "23109000000",
                            "23110000000",
                            "23100000000",
                            "23119000000",
                            "23999000000",
                            "23129000000",
                            "23101000000",
                            "23118000000",
                            "23130000000",
                            "23131000000",
                            "23103000000",
                            "23134000000",
                            "23123000000",
                            "23132000000",
                            "23133000000",
                            "23112000000",
                            "23117000000",
                            "19000000000",
                            "19999000000",
                            "19103000000",
                            "19101000000",
                            "19102000000",
                            "19105000000",
                            "19106000000",
                            "19104000000",
                            "19100000000",
                            "28000000000",
                            "28100000000",
                            "28101000000",
                            "15000000000",
                            "15100000000",
                            "15105000000",
                            "15103000000",
                            "15101000000",
                            "15102000000",
                            "15104000000",
                            "15106000000",
                            "15107000000",
                            "15999000000",
                            "17000000000",
                            "17103000000",
                            "17999000000",
                            "17105000000",
                            "17106000000",
                            "11000000000",
                            "11111000000",
                            "11110000000",
                            "11101000000",
                            "11103000000",
                            "11102000000",
                            "11100000000",
                            "11107000000",
                            "11112000000",
                            "11104000000",
                            "11108000000",
                            "11106000000",
                            "11999000000",
                            "11105000000",
                            "11109000000"
                        ],
                        "type": "string",
                        "description": "Select an industry to filter ads. Leave empty for all industries.",
                        "default": ""
                    },
                    "ad_language": {
                        "title": "🗣️ Ad Language",
                        "enum": [
                            "",
                            "en",
                            "es",
                            "ar",
                            "vi",
                            "th",
                            "de",
                            "id",
                            "pt",
                            "fr",
                            "ms",
                            "nl",
                            "ja",
                            "it",
                            "ro",
                            "zh-Hant",
                            "ko"
                        ],
                        "type": "string",
                        "description": "Select a language to filter ads. Leave empty for all languages.",
                        "default": ""
                    },
                    "keyword": {
                        "title": "🔍 Keyword",
                        "type": "string",
                        "description": "Search ads by keyword in ad title.",
                        "default": ""
                    },
                    "maxResults": {
                        "title": "📦 Max Results",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Maximum number of ads to scrape. Set to 0 for unlimited (scrapes all available results). Default: 100.",
                        "default": 20
                    },
                    "limit": {
                        "title": "📄 Results Per Page",
                        "minimum": 1,
                        "maximum": 20,
                        "type": "integer",
                        "description": "Number of results to fetch per API request. Maximum: 20.",
                        "default": 20
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
