# Social Blade Scraper (`solidcode/socialblade-scraper`) Actor

\[💰 $30.0 / 1K] Extract creator analytics from Social Blade across YouTube, TikTok, Twitch, Instagram, and Facebook — subscribers, views, ranks, grade, daily history, growth, and earnings estimates.

- **URL**: https://apify.com/solidcode/socialblade-scraper.md
- **Developed by:** [SolidCode](https://apify.com/solidcode) (community)
- **Categories:** Social media, Developer tools, Lead generation
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, NaN bookmarks
- **User rating**: No ratings yet

## Pricing

from $30.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.

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

## Social Blade Scraper

Pull creator analytics from Social Blade at scale — subscribers, followers, views, grade, global and country ranks, daily history, growth deltas, and earnings estimates across YouTube, TikTok, Twitch, Instagram, and Facebook. Built for marketers, talent agencies, sponsor scouts, and creator-economy analysts who need a clean cross-platform dataset without juggling five separate dashboards and a manual CSV export.

### Why This Scraper?

- **Five platforms in one input list** — YouTube, TikTok, Twitch, Instagram, and Facebook side by side in a single run. No per-platform tooling, no separate spreadsheets.
- **Up to 31 days of daily history per creator** — every day's subscribers/followers, total views, uploads, and engagement, opt-in so single-snapshot pulls stay cheap.
- **Two record types, one dataset** — `profile` rows for the full creator snapshot and `dailyStat` rows for per-day metrics, so you can pivot, chart, or join in any BI tool.
- **Pre-computed growth deltas at 1, 7, 14, and 30 days** — both absolute change and percent change for audience and views, derived from history we already pulled (no extra requests).
- **Earnings estimates with documented CPM ranges** — monthly and yearly low/high USD ranges based on community-standard CPM rates: YouTube $0.25–$4.00 per 1k views, Twitch $1.00–$3.50 per 1k followers, Instagram $0.01–$0.05 per follower per sponsored post, and Facebook $0.50–$2.00 per 1k engagements. TikTok earnings return `null` (Social Blade doesn't publish per-day TikTok view counts).
- **Mix full URLs and raw handles in the same run** — paste `https://socialblade.com/youtube/user/mrbeast` next to a bare `charlidamelio`, set the default platform once, and the scraper sorts it out.
- **Ranks on every result** — global Social Blade rank, country rank (YouTube), category rank (YouTube and Facebook), audience-metric rank, and views rank, ready to feed a leaderboard or shortlist.
- **Verified status, country, channel category, and Social Blade letter grade** — creator-fit signals on every row, including Facebook's `blue_verified` string preserved verbatim.
- **Linked social accounts captured per creator** — when Social Blade lists a creator's other handles (Twitter, official site, second-platform profiles), the `socials` array carries them through for cross-platform follow-ups.

### Use Cases

**Influencer Discovery & Vetting**
- Shortlist creators in a niche by combining grade, follower count, and 30-day growth
- Filter out paid-follower red flags by spotting flat daily history alongside high totals
- Verify reach claims in a pitch deck against Social Blade's last-31-day audience trend

**Sponsorship & Campaign Pricing**
- Sanity-check influencer rate cards using independent earnings ranges per platform
- Build creator tiers (nano/micro/mid/macro) directly from audience and rank columns
- Match brand budget tiers to creator earnings bands before reaching out

**Creator Economy Research**
- Track audience and view growth across the top 100 creators in any category
- Compare cross-platform reach for the same creator on YouTube, TikTok, and Instagram
- Detect emerging stars by sorting on 7-day percent growth rather than absolute audience

**Competitive & Cohort Tracking**
- Re-run a fixed creator list weekly to build a long-running history beyond 31 days
- Benchmark a roster of agency clients against direct competitors on one dashboard
- Spot grade or rank changes as early indicators of momentum shifts

**Lead Generation for Talent Agencies**
- Build outreach lists of unsigned creators above a follower threshold with verified status
- Surface creators with strong growth but no listed agency affiliation
- Pull country-filtered shortlists for regional partnerships and brand activations

### Getting Started

#### One YouTube creator

The simplest possible run — a single URL, current snapshot only:

```json
{
    "profiles": [
        "https://socialblade.com/youtube/user/pewdiepie"
    ]
}
````

#### Mixed platforms in one run

Drop a list of URLs across YouTube, TikTok, and Twitch:

```json
{
    "profiles": [
        "https://socialblade.com/youtube/user/pewdiepie",
        "https://socialblade.com/tiktok/user/charlidamelio",
        "https://socialblade.com/twitch/user/ninja"
    ],
    "includeGrowthMetrics": true,
    "includeEarningsEstimates": true
}
```

#### Full daily history with growth and earnings

Pull 31 days of per-day stats for each creator, plus growth deltas and earnings ranges. For widely-known creators, the canonical channel URL is the most reliable input:

```json
{
    "profiles": [
        "https://socialblade.com/youtube/channel/UCBJycsmduvYEL83R_U4JriQ",
        "https://socialblade.com/instagram/user/cristiano"
    ],
    "includeDailyHistory": true,
    "historyDays": 31,
    "includeGrowthMetrics": true,
    "includeEarningsEstimates": true
}
```

#### Raw handles with a default platform

When you already have a list of handles and they all live on the same platform, skip the URL prefix:

```json
{
    "profiles": ["pewdiepie", "tseries", "cocomelon"],
    "defaultPlatform": "youtube",
    "maxResults": 0
}
```

### Input Reference

#### Profiles

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `profiles` | string\[] | `[]` | Social Blade profile URLs (`https://socialblade.com/<platform>/user/<handle>`) or raw handles. Mix URLs and bare handles freely. |
| `defaultPlatform` | select | `YouTube` | Platform applied to raw handles. Options: YouTube, TikTok, Twitch, Instagram, Facebook. Ignored when an entry is a full URL. |

#### Extra Data

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `includeDailyHistory` | boolean | `false` | Adds one extra row per creator per day of history. Off by default to keep single-snapshot runs cheap. |
| `historyDays` | integer | `31` | How many days of daily history to pull when history is on. Capped at 31 (the upstream anonymous limit). Set lower (e.g. 7) for last-week-only pulls. |
| `includeGrowthMetrics` | boolean | `true` | Adds 1-, 7-, 14-, and 30-day audience and views growth deltas (absolute and percent) to each profile row. No extra requests — computed from history already fetched. |
| `includeEarningsEstimates` | boolean | `true` | Adds monthly and yearly low/high USD earnings ranges to each profile row based on community CPM ranges. |

#### Limits

| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| `maxResults` | integer | `0` | Hard cap on total rows (profile rows plus daily history rows). `0` means no cap. The scraper stops accepting new profiles once the cap is hit but keeps the full final profile's rows even if it slightly overshoots. |

### Output

Every row carries a `recordType` field — `profile` or `dailyStat` — so you can filter and pivot cleanly downstream.

#### Profile (`recordType: "profile"`)

```json
{
    "recordType": "profile",
    "platform": "youtube",
    "creatorId": "UCX6OQ3DkcsbYNE6H8uQQuVA",
    "username": "mrbeast",
    "displayName": "MrBeast",
    "url": "https://socialblade.com/youtube/channel/UCX6OQ3DkcsbYNE6H8uQQuVA",
    "inputUrl": "https://socialblade.com/youtube/user/mrbeast",
    "avatar": "https://yt3.ggpht.com/...",
    "banner": "https://yt3.ggpht.com/...banner",
    "country": "US",
    "channelType": "Entertainment",
    "description": "SUBSCRIBE FOR A COOKIE!",
    "verified": true,
    "createdAt": "2012-02-20",
    "socials": [
        { "platform": "twitter", "url": "https://twitter.com/MrBeast" }
    ],
    "audience": 412000000,
    "subscribers": 412000000,
    "followers": null,
    "likes": null,
    "following": null,
    "talkingAbout": null,
    "views": 76543210987,
    "uploads": 824,
    "grade": "A++",
    "globalRank": 1,
    "countryRank": 1,
    "categoryRank": 1,
    "subscribersRank": 1,
    "viewsRank": 5,
    "growth": {
        "days1": { "audience": { "delta": 80000, "pct": 0.0194 }, "views": { "delta": 21500000, "pct": 0.0281 } },
        "days7": { "audience": { "delta": 540000, "pct": 0.1313 }, "views": { "delta": 148200000, "pct": 0.1939 } },
        "days14": { "audience": { "delta": 1100000, "pct": 0.2680 }, "views": { "delta": 295400000, "pct": 0.3878 } },
        "days30": { "audience": { "delta": 2300000, "pct": 0.5614 }, "views": { "delta": 612500000, "pct": 0.8051 } }
    },
    "earnings": {
        "currency": "USD",
        "monthly": { "low": 153100, "high": 2449600 },
        "yearly": { "low": 1837200, "high": 29395200 },
        "model": "community_cpm_estimate"
    },
    "scrapedAt": "2026-05-16T14:30:00+00:00"
}
```

##### Identity

| Field | Type | Description |
|-------|------|-------------|
| `recordType` | string | Always `"profile"` for snapshot rows |
| `platform` | string | One of `youtube`, `tiktok`, `twitch`, `instagram`, `facebook` |
| `creatorId` | string | Social Blade's internal creator ID (YouTube channel ID for YouTube, numeric for others) |
| `username` | string | Handle as shown on the profile page |
| `displayName` | string | Public display name |
| `url` | string | Canonical Social Blade profile URL |
| `inputUrl` | string | The exact URL or handle you submitted |
| `avatar` | string | Profile picture URL |
| `banner` | string | Banner / header image URL when published |
| `country` | string | Two-letter country code |
| `channelType` | string | Category as Social Blade classifies it (Entertainment, Gaming, Music, etc.) |
| `description` | string | Bio / channel description text |
| `verified` | bool or string | `true`/`false` on most platforms; Facebook returns the raw string (e.g. `"blue_verified"`) |
| `createdAt` | string | Channel/account creation date |
| `socials` | object\[] | Linked social accounts on other platforms, when Social Blade lists them |

##### Audience & Engagement

| Field | Type | Description |
|-------|------|-------------|
| `audience` | number | Unified audience metric — subscribers (YouTube), followers (TikTok/Twitch/Instagram), or page likes (Facebook) |
| `subscribers` | number | YouTube subscribers (bucketed to 100k above 1k per YouTube's public count) |
| `followers` | number | TikTok / Twitch / Instagram followers |
| `likes` | number | TikTok total hearts; Facebook page likes |
| `following` | number | TikTok and Instagram following count |
| `talkingAbout` | number | Facebook "talking about" engagement counter (can be negative) |
| `views` | number | Total YouTube channel views |
| `uploads` | number | Videos uploaded (YouTube, TikTok) or media count (Instagram) |
| `grade` | string | Social Blade letter grade (e.g. `A++`, `B+`, `C`) |

##### Ranks

| Field | Type | Description |
|-------|------|-------------|
| `globalRank` | number | Social Blade global rank across all creators on the platform |
| `countryRank` | number | Rank within the creator's country (YouTube) |
| `categoryRank` | number | Rank within the creator's category (YouTube, Facebook) |
| `subscribersRank` | number | Rank by the platform's primary audience metric |
| `viewsRank` | number | Rank by total views (YouTube) |

##### Growth & Earnings

| Field | Type | Description |
|-------|------|-------------|
| `growth` | object | 1-, 7-, 14-, and 30-day audience and views deltas (each window has `delta` and `pct`). Computed from history we already fetched. Longer windows are emitted only when the available history covers that window — `days30` is populated when `includeDailyHistory: true` with `historyDays >= 30`; with daily history off (default), only `days1`, `days7`, and `days14` are populated. |
| `earnings` | object | `{ currency, monthly: {low, high}, yearly: {low, high}, model }` — community-CPM estimate, USD. Disclosed as estimate, not authoritative. |
| `scrapedAt` | string | ISO timestamp of data extraction |

#### Daily Stat (`recordType: "dailyStat"`)

Emitted only when `includeDailyHistory: true`. One row per creator per day, up to 31 rows.

```json
{
    "recordType": "dailyStat",
    "platform": "youtube",
    "creatorId": "UCX6OQ3DkcsbYNE6H8uQQuVA",
    "username": "mrbeast",
    "date": "2026-05-15",
    "subscribers": 412000000,
    "followers": null,
    "likes": null,
    "views": 76543210987,
    "uploads": 824,
    "talkingAbout": null
}
```

| Field | Type | Description |
|-------|------|-------------|
| `recordType` | string | Always `"dailyStat"` |
| `platform` | string | Platform the row belongs to |
| `creatorId` | string | Internal creator ID, identical to the parent `profile` row |
| `username` | string | Handle, joinable back to the profile row |
| `date` | string | ISO date (`YYYY-MM-DD`) for this row's stats |
| `subscribers` | number | YouTube subscribers on that day |
| `followers` | number | TikTok / Twitch / Instagram followers on that day |
| `likes` | number | TikTok hearts / Facebook page likes on that day |
| `views` | number | YouTube total views on that day |
| `uploads` | number | YouTube/TikTok uploads or Instagram media count on that day |
| `talkingAbout` | number | Facebook "talking about" engagement on that day |

Fields not applicable to a platform come back as `null` — e.g. `views` and `subscribers` are populated for YouTube rows but null for Instagram rows.

### Tips for Best Results

- **Use canonical channel URLs for famous YouTube creators.** Social Blade's `/youtube/handle/<name>` route is exact-match — it returns whoever owns that exact handle on the platform, not a search result. For widely-known creators like MrBeast, MKBHD, or Markiplier, paste the canonical channel URL (`https://socialblade.com/youtube/channel/UCX6OQ3DkcsbYNE6H8uQQuVA`) rather than the bare name. A handle like `mrbeast` may resolve to a similarly-named smaller channel.
- **Mix URLs and handles freely.** Social Blade normalizes `/youtube/user/<x>` to `/youtube/handle/<x>` automatically. Bare handles work too when you set the Default Platform.
- **Daily history is capped at 31 days from any anonymous request.** Want a longer time series? Re-run on a weekly cadence and append the new rows to your warehouse — the dataset is designed to deduplicate cleanly on `creatorId` + `date`.
- **TikTok earnings are always returned as `null`.** Social Blade doesn't expose per-day view counts for TikTok creators (only follower / like / video history), so a CPM-based estimate isn't computable. Use TikTok growth deltas as your ranking signal instead.
- **Mix platforms in one run** to compare cross-platform reach for the same creator. The `audience` field unifies subscribers/followers/likes so you can sort across the whole dataset.
- **Cap large lists with `maxResults`.** The scraper stops fetching new profiles once the cap is hit but keeps the full final creator's rows, so a `maxResults: 1000` run with daily history on will land between 1000 and 1031 rows.
- **YouTube subscriber counts above 1,000 are bucketed to 100k** — that's YouTube's own public-count policy, not a quirk of this dataset. Use growth deltas, not raw subscriber math, when the bucketing matters.
- **Turn off `includeDailyHistory` for fast lead-gen sweeps.** A 500-handle vetting run with history off costs 500 rows; with full 31-day history on, it's up to 16,000 rows.

### Pricing

**$30.00 per 1,000 results** — covers all five platforms, ranks, grade, growth deltas, and earnings estimates in one flat per-row rate.

**No compute charges — you only pay per result returned.**

| Results | Estimated Cost |
|---------|----------------|
| 100 | $3.00 |
| 1,000 | $30.00 |
| 10,000 | $300.00 |
| 100,000 | $3,000.00 |

A "result" is any row in the output dataset. With `includeDailyHistory: false`, one creator equals one row. With `includeDailyHistory: true` and `historyDays: 31`, one creator equals up to 32 rows (one profile snapshot plus up to 31 daily rows). Set `historyDays` lower or leave history off to bound cost.

### Integrations

Export data in JSON, CSV, Excel, XML, or RSS. Connect to 1,500+ apps via:

- **Zapier** / **Make** / **n8n** — Workflow automation
- **Google Sheets** — Direct spreadsheet export
- **Slack** / **Email** — Notifications on new results
- **Webhooks** — Trigger custom APIs on run completion
- **Apify API** — Full programmatic access

### Legal & Ethical Use

This actor is designed for legitimate creator-economy research, influencer discovery, sponsorship analysis, and competitive benchmarking. Social Blade publishes creator statistics as a public analytics service. Users are responsible for complying with applicable laws, Social Blade's terms of service, and each underlying platform's terms when using the extracted data. Do not use the data for spam, harassment, or any illegal purpose. Earnings figures are community-CPM estimates, not authoritative income — treat them as planning guidance rather than financial advice.

# Actor input Schema

## `profiles` (type: `array`):

Social Blade profile URLs or raw handles. Examples:

- https://socialblade.com/youtube/user/pewdiepie
- https://socialblade.com/tiktok/user/charlidamelio
- https://socialblade.com/twitch/user/ninja
- https://socialblade.com/instagram/user/cristiano
- https://socialblade.com/facebook/user/walmart
- pewdiepie (raw handle — set the Default Platform below)

## `defaultPlatform` (type: `string`):

Used for any entry above that is a raw handle (not a full Social Blade URL). Ignored when the URL itself tells us the platform.

## `includeDailyHistory` (type: `boolean`):

Add a separate row per profile per day of stats (subscribers/followers, views, uploads, likes, etc.). Social Blade exposes up to 31 days of history to anonymous visitors, so this adds at most ~31 extra rows per profile. Leave off if you only need the current snapshot.

## `historyDays` (type: `integer`):

How many days of daily history to pull per profile when Include Daily History is on. Social Blade caps anonymous history at about 31 days, so values above 31 are silently clamped. Set lower to bound cost — e.g. 7 for last week only.

## `includeGrowthMetrics` (type: `boolean`):

Add computed averages and growth deltas (1/7/14/30-day) to each profile row. Computed from the daily history we already fetched — no extra requests, no extra rows.

## `includeEarningsEstimates` (type: `boolean`):

Add Social Blade's daily / monthly / yearly earnings ranges (low–high USD) to each profile row, where Social Blade provides them. YouTube and TikTok have estimates; Twitch / Instagram / Facebook generally do not.

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

Hard cap on total rows pushed across all profiles (counts profile rows plus any daily history rows). Use 0 for no cap. The actor stops processing more profiles once this number is reached but keeps the full final profile's rows even if it slightly overshoots.

## Actor input object example

```json
{
  "profiles": [
    "https://socialblade.com/youtube/user/pewdiepie",
    "https://socialblade.com/tiktok/user/charlidamelio"
  ],
  "defaultPlatform": "youtube",
  "includeDailyHistory": false,
  "historyDays": 31,
  "includeGrowthMetrics": true,
  "includeEarningsEstimates": true,
  "maxResults": 0
}
```

# Actor output Schema

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

Table of creator profile rows — display name, platform, grade, subscribers/followers/likes, views, rank, and profile URL.

## `dailyStats` (type: `string`):

Table of per-day stats rows (when Include Daily History is on) — one row per creator per day.

# 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 = {
    "profiles": [
        "https://socialblade.com/youtube/user/pewdiepie",
        "https://socialblade.com/tiktok/user/charlidamelio"
    ],
    "defaultPlatform": "youtube",
    "includeDailyHistory": false,
    "historyDays": 31,
    "includeGrowthMetrics": true,
    "includeEarningsEstimates": true,
    "maxResults": 0
};

// Run the Actor and wait for it to finish
const run = await client.actor("solidcode/socialblade-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 = {
    "profiles": [
        "https://socialblade.com/youtube/user/pewdiepie",
        "https://socialblade.com/tiktok/user/charlidamelio",
    ],
    "defaultPlatform": "youtube",
    "includeDailyHistory": False,
    "historyDays": 31,
    "includeGrowthMetrics": True,
    "includeEarningsEstimates": True,
    "maxResults": 0,
}

# Run the Actor and wait for it to finish
run = client.actor("solidcode/socialblade-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 '{
  "profiles": [
    "https://socialblade.com/youtube/user/pewdiepie",
    "https://socialblade.com/tiktok/user/charlidamelio"
  ],
  "defaultPlatform": "youtube",
  "includeDailyHistory": false,
  "historyDays": 31,
  "includeGrowthMetrics": true,
  "includeEarningsEstimates": true,
  "maxResults": 0
}' |
apify call solidcode/socialblade-scraper --silent --output-dataset

```

## MCP server setup

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

```

## OpenAPI specification

```json
{
    "openapi": "3.0.1",
    "info": {
        "title": "Social Blade Scraper",
        "description": "[💰 $30.0 / 1K] Extract creator analytics from Social Blade across YouTube, TikTok, Twitch, Instagram, and Facebook — subscribers, views, ranks, grade, daily history, growth, and earnings estimates.",
        "version": "1.2",
        "x-build-id": "AGvODYDu1Ev1tOuJf"
    },
    "servers": [
        {
            "url": "https://api.apify.com/v2"
        }
    ],
    "paths": {
        "/acts/solidcode~socialblade-scraper/run-sync-get-dataset-items": {
            "post": {
                "operationId": "run-sync-get-dataset-items-solidcode-socialblade-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/solidcode~socialblade-scraper/runs": {
            "post": {
                "operationId": "runs-sync-solidcode-socialblade-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/solidcode~socialblade-scraper/run-sync": {
            "post": {
                "operationId": "run-sync-solidcode-socialblade-scraper",
                "x-openai-isConsequential": false,
                "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
                "tags": [
                    "Run Actor"
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/inputSchema"
                            }
                        }
                    }
                },
                "parameters": [
                    {
                        "name": "token",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "Enter your Apify token here"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "OK"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "inputSchema": {
                "type": "object",
                "properties": {
                    "profiles": {
                        "title": "Creator Profiles",
                        "type": "array",
                        "description": "Social Blade profile URLs or raw handles. Examples:\n  - https://socialblade.com/youtube/user/pewdiepie\n  - https://socialblade.com/tiktok/user/charlidamelio\n  - https://socialblade.com/twitch/user/ninja\n  - https://socialblade.com/instagram/user/cristiano\n  - https://socialblade.com/facebook/user/walmart\n  - pewdiepie (raw handle — set the Default Platform below)",
                        "items": {
                            "type": "string"
                        }
                    },
                    "defaultPlatform": {
                        "title": "Default Platform",
                        "enum": [
                            "youtube",
                            "tiktok",
                            "twitch",
                            "instagram",
                            "facebook"
                        ],
                        "type": "string",
                        "description": "Used for any entry above that is a raw handle (not a full Social Blade URL). Ignored when the URL itself tells us the platform.",
                        "default": "youtube"
                    },
                    "includeDailyHistory": {
                        "title": "Include Daily History",
                        "type": "boolean",
                        "description": "Add a separate row per profile per day of stats (subscribers/followers, views, uploads, likes, etc.). Social Blade exposes up to 31 days of history to anonymous visitors, so this adds at most ~31 extra rows per profile. Leave off if you only need the current snapshot.",
                        "default": false
                    },
                    "historyDays": {
                        "title": "History Days Per Profile",
                        "minimum": 1,
                        "maximum": 31,
                        "type": "integer",
                        "description": "How many days of daily history to pull per profile when Include Daily History is on. Social Blade caps anonymous history at about 31 days, so values above 31 are silently clamped. Set lower to bound cost — e.g. 7 for last week only.",
                        "default": 31
                    },
                    "includeGrowthMetrics": {
                        "title": "Include Growth & Averages",
                        "type": "boolean",
                        "description": "Add computed averages and growth deltas (1/7/14/30-day) to each profile row. Computed from the daily history we already fetched — no extra requests, no extra rows.",
                        "default": true
                    },
                    "includeEarningsEstimates": {
                        "title": "Include Earnings Estimates",
                        "type": "boolean",
                        "description": "Add Social Blade's daily / monthly / yearly earnings ranges (low–high USD) to each profile row, where Social Blade provides them. YouTube and TikTok have estimates; Twitch / Instagram / Facebook generally do not.",
                        "default": true
                    },
                    "maxResults": {
                        "title": "Maximum Results",
                        "minimum": 0,
                        "type": "integer",
                        "description": "Hard cap on total rows pushed across all profiles (counts profile rows plus any daily history rows). Use 0 for no cap. The actor stops processing more profiles once this number is reached but keeps the full final profile's rows even if it slightly overshoots.",
                        "default": 0
                    }
                }
            },
            "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
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}
```
