# Youtube Thumbnails Downloader & Scraper (`alpha-scraper/youtube-thumbnails-downloader-scraper`) Actor

Download and scrape high-quality thumbnails from public YouTube videos and Shorts with the Youtube Thumbnails Downloader & Scraper. Select thumbnail quality, process multiple URLs, and get structured metadata plus downloadable images stored in Apify Key-Value Store.

- **URL**: https://apify.com/alpha-scraper/youtube-thumbnails-downloader-scraper.md
- **Developed by:** [Alpha Scraper](https://apify.com/alpha-scraper) (community)
- **Categories:** Videos, Social media, Other
- **Stats:** 7 total users, 0 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $1.50 / 1,000 results

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

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

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
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.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## 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.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

### Youtube Thumbnails Downloader & Scraper

The **Youtube Thumbnails Downloader & Scraper** is an Apify Actor for extracting and downloading thumbnails from public YouTube video and YouTube Shorts URLs. It accepts one or multiple supported YouTube URLs, lets you select a preferred thumbnail quality, and returns structured thumbnail information together with a downloadable image stored in the Apify Key-Value Store.

The Actor is designed for users who need **YouTube thumbnail extraction**, thumbnail downloading, visual-content research, content analysis, or structured datasets containing video and thumbnail metadata.

For each successfully processed URL, the Actor identifies the YouTube video, retrieves available public thumbnail information, checks the requested quality, selects an available thumbnail, downloads the image, and stores the binary thumbnail file in the default Key-Value Store. The resulting dataset includes the original URL, video title, channel name, thumbnail URL, thumbnail metadata, and the selected resolution.

### What Is a Youtube Thumbnails Downloader & Scraper?

A **Youtube Thumbnails Downloader & Scraper** automates the collection of thumbnail images associated with public YouTube videos and Shorts.

Instead of manually opening individual YouTube pages, locating thumbnail images, selecting an available resolution, and saving each image separately, you can provide the supported video URLs to the Actor and process them as a batch.

The workflow is straightforward:

**YouTube URL → video identification → thumbnail selection → thumbnail download → Key-Value Store → structured dataset**

The Actor supports common YouTube video URL formats, including standard watch URLs, shortened `youtu.be` links, embedded video URLs, and Shorts URLs.

The implementation is focused on video-level thumbnail extraction. Although the input description references channel URLs, the current processing logic extracts a video ID and therefore should be used with individual YouTube video or Shorts URLs.

### Key Features

| Feature                   | Description                                                                                     | User Benefit                                              |
| ------------------------- | ----------------------------------------------------------------------------------------------- | --------------------------------------------------------- |
| Multiple YouTube URLs     | Process one or multiple supported video or Shorts URLs from `startUrls`.                        | Collect multiple thumbnails in one run.                   |
| Quality selection         | Choose `default`, `medium`, `high`, `standard`, or `maxres`.                                    | Control the preferred thumbnail quality.                  |
| Quality fallback          | If the requested thumbnail is unavailable, the Actor checks other available thumbnail variants. | Improves the chance of receiving a usable thumbnail.      |
| Thumbnail downloading     | The selected image is downloaded and stored in the Apify Key-Value Store.                       | Provides a directly accessible stored thumbnail file.     |
| Structured dataset output | Each successful result is pushed to the default dataset.                                        | Makes thumbnail information easier to review and process. |
| Video metadata            | Returns title and channel information obtained from public video metadata.                      | Adds context to each extracted thumbnail.                 |
| Original source reference | The original input URL and source thumbnail URL are included in the result.                     | Helps trace each thumbnail back to its source.            |

### What Data Can You Extract?

The Actor produces thumbnail and video-related information for each successfully processed URL.

The main result contains:

- **Original URL** — the YouTube URL supplied in the input.
- **Title** — the public video title available from the metadata response.
- **Channel** — the public channel or author name returned with the video metadata.
- **Thumbnail** — the stored thumbnail URL when the Key-Value Store upload succeeds, with the original YouTube thumbnail URL used as a fallback.
- **Thumbnail metadata** — additional information about the selected image.
- **Qualities** — information about the selected thumbnail resolution and its corresponding URL.

The nested `thumbnail_metadata` object provides the selected thumbnail URL, source URL, video identifier, file extension, reported dimensions, resolution, channel, run date, and title.

The `thumbnail_upload_date` field represents the date when the Actor generated the result, not the original YouTube video's publication date.

### Why Use This Actor?

Collecting thumbnails manually can become repetitive when working with multiple videos. This Actor provides a repeatable workflow for acquiring thumbnail assets and associated metadata from supported public YouTube URLs.

It can be useful when you need to:

- Build a thumbnail research dataset.
- Gather visual references for content analysis.
- Organize thumbnail assets by video and channel.
- Review different thumbnail quality options.
- Automate repetitive thumbnail collection.
- Store thumbnail files alongside structured metadata.

Because results are pushed into the Apify dataset while image files are stored in the Key-Value Store, the workflow separates structured information from the downloadable binary image.

### Benefits

#### Automated Thumbnail Collection

The Actor automates the repetitive process of locating an available YouTube thumbnail and downloading the selected image.

#### Structured Results

Every successful result follows a consistent structure containing the source URL, title, channel, thumbnail information, and metadata.

#### Multiple Quality Options

The `thumbnailQuality` input lets you select a preferred quality according to your workflow, from the default thumbnail through higher-resolution options.

#### Batch-Oriented Processing

Multiple URLs can be supplied through `startUrls`, making the Actor practical for collecting thumbnails from a list of YouTube videos or Shorts.

#### Apify Storage

Selected thumbnail files are uploaded to the default Key-Value Store, while structured records are pushed to the dataset.

### How to Use the Youtube Thumbnails Downloader & Scraper

Using the Actor requires only a supported YouTube URL list and an optional thumbnail-quality selection.

1. Open the Actor and provide one or more supported YouTube video or Shorts URLs in **Start URLs**.
2. Select a value for **Thumbnail Quality**.
3. Start the Actor.
4. Wait for the URLs to be processed.
5. Review the structured records in the dataset.
6. Access the downloaded thumbnail through the returned Key-Value Store URL.

For a first run, using a small number of URLs is a practical way to verify the desired quality and output before processing a larger list.

### Input

The Actor accepts an object containing a required list of starting URLs and an optional thumbnail-quality preference.

#### Input Fields

| Field              | Type   | Required | Default  | Description                                                                                              |
| ------------------ | ------ | -------- | -------- | -------------------------------------------------------------------------------------------------------- |
| `startUrls`        | Array  | Yes      | —        | List of YouTube video or Shorts URLs to process.                                                         |
| `thumbnailQuality` | String | No       | `maxres` | Preferred thumbnail quality. Supported values are `default`, `medium`, `high`, `standard`, and `maxres`. |

`startUrls` uses Apify's request-list style input. Each item should contain a `url` property.

Supported video URL patterns include standard YouTube watch links, shortened `youtu.be` links, embedded YouTube URLs, mobile YouTube watch URLs, and YouTube Shorts URLs. The current implementation extracts a video ID from these formats.

Channel-only URLs are not suitable for the current processing logic because the Actor needs a video ID to retrieve the thumbnail.

### Input Example

```json
{
  "startUrls": [
    {
      "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
    },
    {
      "url": "https://youtu.be/cmGo8hM_nhs"
    },
    {
      "url": "https://youtube.com/shorts/5GlgIRLQ96g"
    }
  ],
  "thumbnailQuality": "maxres"
}
```

### Thumbnail Quality Options

The quality selector controls which thumbnail variant the Actor attempts to use first.

| Setting    | Selection Strategy                                                          |
| ---------- | --------------------------------------------------------------------------- |
| `maxres`   | Attempts `maxresdefault`, alternative max-resolution variants, and `hq720`. |
| `standard` | Attempts `sddefault`, then `hqdefault`.                                     |
| `high`     | Attempts `hqdefault`, then `mqdefault`.                                     |
| `medium`   | Attempts `mqdefault`, then `default`.                                       |
| `default`  | Uses the default thumbnail variant.                                         |

If the preferred option is unavailable, the Actor can fall back to another available thumbnail rather than returning no image immediately.

### Output

For every successfully processed URL, the Actor pushes one structured result to the default dataset.

The returned `thumbnail` value normally points to the thumbnail stored in the Apify Key-Value Store. If that upload is unsuccessful, the Actor can retain the original YouTube thumbnail URL as a fallback.

#### Output Fields

| Field                                      | Description                                                                           |
| ------------------------------------------ | ------------------------------------------------------------------------------------- |
| `original_url`                             | The original YouTube URL supplied to the Actor.                                       |
| `title`                                    | Video title returned by the public metadata response.                                 |
| `channel`                                  | Channel or author name returned by the metadata response.                             |
| `duration`                                 | Currently returned as `N/A`.                                                          |
| `thumbnail`                                | Stored thumbnail URL, or the original thumbnail source URL when storage upload fails. |
| `thumbnail_metadata`                       | Detailed information about the selected thumbnail.                                    |
| `thumbnail_metadata.thumbnail_url`         | URL used to access the selected thumbnail.                                            |
| `thumbnail_metadata.thumbnail_source_url`  | Original YouTube thumbnail source URL.                                                |
| `thumbnail_metadata.thumbnail_id`          | YouTube video ID associated with the thumbnail.                                       |
| `thumbnail_metadata.thumbnail_ext`         | Thumbnail file extension, currently `jpg`.                                            |
| `thumbnail_metadata.thumbnail_width`       | Width value associated with the selected thumbnail variant.                           |
| `thumbnail_metadata.thumbnail_height`      | Height value associated with the selected thumbnail variant.                          |
| `thumbnail_metadata.thumbnail_resolution`  | Reported thumbnail resolution string.                                                 |
| `thumbnail_metadata.thumbnail_channel`     | Channel name associated with the video.                                               |
| `thumbnail_metadata.thumbnail_upload_date` | Date the Actor generated the result.                                                  |
| `thumbnail_metadata.thumbnail_title`       | Video title associated with the thumbnail.                                            |
| `qualities`                                | Array describing the selected thumbnail quality and URL.                              |

### Output Example

```json
{
  "original_url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
  "title": "Example YouTube Video",
  "channel": "Example Channel",
  "duration": "N/A",
  "thumbnail": "https://api.apify.com/v2/key-value-stores/example/records/thumbnail-dQw4w9WgXcQ-maxresdefault.jpg",
  "thumbnail_metadata": {
    "thumbnail_url": "https://api.apify.com/v2/key-value-stores/example/records/thumbnail-dQw4w9WgXcQ-maxresdefault.jpg",
    "thumbnail_source_url": "https://i.ytimg.com/vi/dQw4w9WgXcQ/maxresdefault.jpg",
    "thumbnail_id": "dQw4w9WgXcQ",
    "thumbnail_ext": "jpg",
    "thumbnail_width": 7680,
    "thumbnail_height": 4320,
    "thumbnail_resolution": "7680x4320",
    "thumbnail_channel": "Example Channel",
    "thumbnail_upload_date": "2026-09-18",
    "thumbnail_title": "Example YouTube Video"
  },
  "qualities": [
    {
      "resolution": 4320,
      "thumbnail": "https://api.apify.com/v2/key-value-stores/example/records/thumbnail-dQw4w9WgXcQ-maxresdefault.jpg",
      "explanation": "Thumbnail for resolution 4320 (maxresdefault)"
    }
  ]
}
```

### Use Cases

The **Youtube Thumbnails Downloader & Scraper** can support several practical workflows involving public video thumbnail data.

#### Thumbnail Research

Collect thumbnails from a defined set of videos for visual-content research and comparison.

#### Content Analysis

Create a structured dataset of thumbnail URLs, titles, channels, and reported resolution information for further analysis.

#### Visual Asset Collection

Download publicly accessible thumbnail images into Apify storage for organized retrieval.

#### Competitive Content Research

Gather thumbnail references from selected public YouTube videos to examine how video packaging varies across channels or topics.

#### Dataset Creation

Build a reusable collection containing video identifiers, metadata, thumbnail references, and stored image URLs.

#### Automation Workflows

Use repeated Actor runs to reduce manual thumbnail collection work when your workflow already operates through Apify.

### Advantages

The Actor combines thumbnail extraction, quality selection, image downloading, and structured metadata collection in a single workflow.

Its user-facing strengths include support for multiple starting URLs, a configurable quality preference, automatic fallback when a preferred thumbnail variant is unavailable, dataset records for successful results, and Key-Value Store links for downloaded thumbnail files.

These capabilities are especially useful when the main requirement is organized **YouTube thumbnail data extraction** rather than manual image saving.

### Pros and Cons

| Pros                                                                | Cons                                                                                 |
| ------------------------------------------------------------------- | ------------------------------------------------------------------------------------ |
| Processes multiple supported YouTube URLs in one run.               | Designed around individual video or Shorts URLs rather than channel crawling.        |
| Offers several thumbnail-quality preferences.                       | `duration` is not populated and is returned as `N/A`.                                |
| Downloads selected thumbnail files to the Key-Value Store.          | Thumbnail availability depends on the source video and available thumbnail variants. |
| Returns structured metadata in the dataset.                         | Reported resolution values are based on the Actor's quality mapping.                 |
| Provides fallback behavior when a requested quality is unavailable. | Results can be incomplete when a URL is invalid or a thumbnail cannot be retrieved.  |

### Comparison With Alternative Approaches

| Capability                | This Actor                                               | Manual / Typical Alternative                            |
| ------------------------- | -------------------------------------------------------- | ------------------------------------------------------- |
| Thumbnail selection       | Automated according to the selected quality preference.  | User selects the image manually.                        |
| Multiple video processing | Supported through `startUrls`.                           | Often requires repeated manual work.                    |
| Structured metadata       | Returned with each successful result.                    | Usually requires manual collection or formatting.       |
| Thumbnail file storage    | Selected images are stored in the Apify Key-Value Store. | Files are commonly saved individually.                  |
| Quality fallback          | Attempts additional available variants when needed.      | User normally has to search for another image manually. |

This comparison describes workflow differences rather than a claim that one approach is universally better.

### Competitive Advantages

A practical reason to use this Actor is the combination of several user-facing steps in one workflow: URL-based processing, selectable thumbnail quality, availability checking, image storage, and structured metadata.

The Actor also preserves both the source thumbnail URL and the stored thumbnail URL in the output. This makes it easier to understand where a result came from while working with the stored dataset.

### Limitations

The current implementation has several important boundaries.

Only URLs from which a valid YouTube video ID can be extracted are suitable for processing. The input interface mentions channel URLs, but the processing logic currently expects a video or Shorts identifier, so channel-only URLs should not be treated as supported thumbnail targets.

Thumbnail availability can vary by video and requested quality. When a selected quality is unavailable, the Actor attempts alternative thumbnail variants and may return a different available resolution.

The `duration` output is currently `N/A` because video duration is not provided by the metadata used by the Actor.

The reported thumbnail width, height, and resolution come from the Actor's predefined quality mapping. In particular, the `maxresdefault` mapping reports `7680x4320`; this should be treated as the Actor's reported value rather than a guarantee that the downloaded image itself has those exact dimensions.

The `thumbnail_upload_date` records the processing date, not the original video upload date.

### Best Practices

For reliable **YouTube thumbnail extraction**, use complete and valid video or Shorts URLs that contain an identifiable YouTube video ID.

Start with a small test set before processing a larger URL list. This helps confirm that the selected quality matches your intended workflow.

Choose `maxres` when the goal is to request the highest available option handled by the Actor. For workflows where a smaller image is sufficient, another quality setting may be more appropriate.

Review the dataset after a run and distinguish successful records from URLs that did not produce a result.

For important visual or publishing workflows, validate the downloaded image dimensions independently rather than relying only on the reported resolution metadata.

### Troubleshooting

#### Invalid Input

Check that every `startUrls` item contains a `url` property and that the URL is a supported YouTube video or Shorts format. Channel-only URLs are not supported by the current video-ID extraction workflow.

#### Empty Results

Verify that the supplied URL identifies a valid video and that an accessible thumbnail is available. Testing a known public video URL can help determine whether the issue is related to the input.

#### Partial Results

A run can contain fewer successful results than supplied URLs because invalid URLs, unavailable thumbnails, or processing errors can prevent an individual URL from producing a dataset record.

#### Requested Quality Is Unavailable

The Actor automatically checks fallback variants. The final result may therefore use a different thumbnail quality from the originally selected preference.

#### Missing Metadata

Title or channel metadata may be returned as `Unknown Title` or `Unknown Channel` when the metadata response does not provide the expected values.

#### Thumbnail Upload Problems

When storing the downloaded image in the Key-Value Store is unsuccessful, the Actor can fall back to the original YouTube thumbnail source URL.

### Frequently Asked Questions

#### What does the Youtube Thumbnails Downloader & Scraper do?

It extracts a thumbnail from supported public YouTube video or Shorts URLs, downloads the selected image, stores it in the Apify Key-Value Store, and returns structured metadata in the dataset.

#### What inputs does the Youtube Thumbnails Downloader & Scraper accept?

The main input is `startUrls`, an array containing YouTube video or Shorts URL objects. You can also select a thumbnail quality through `thumbnailQuality`.

#### Can I process multiple YouTube videos?

Yes. Multiple URL objects can be supplied in `startUrls`, and the Actor processes them individually.

#### Does it support YouTube Shorts?

Yes. The implementation explicitly recognizes YouTube Shorts URLs and extracts their video IDs.

#### Does it scrape YouTube channel thumbnails?

The current implementation is video-oriented. A channel URL by itself does not provide the video ID required by the thumbnail-processing workflow, so individual video or Shorts URLs should be used.

#### What thumbnail qualities are available?

The Actor supports `default`, `medium`, `high`, `standard`, and `maxres`. Each setting uses a corresponding sequence of thumbnail variants.

#### Where are downloaded thumbnails stored?

The selected thumbnail image is uploaded to the default Apify Key-Value Store, and the resulting URL is included in the output.

#### What happens when my requested quality is unavailable?

The Actor checks fallback thumbnail variants. If the preferred option cannot be found, it searches additional available qualities before giving up.

#### Does the output include the video duration?

No. The current output sets `duration` to `N/A`.

#### Is the thumbnail upload date the YouTube publication date?

No. `thumbnail_upload_date` is generated from the current Actor run date and should not be interpreted as the video's original publication date.

#### Can I use the results for automation?

Yes. The structured dataset and stored thumbnail URLs can be incorporated into workflows that operate on Apify datasets and Key-Value Store records.

### NLP Keywords

- YouTube thumbnail downloader
- YouTube thumbnail scraper
- YouTube thumbnail extractor
- YouTube thumbnail downloader tool
- YouTube video thumbnail
- YouTube Shorts thumbnail
- thumbnail image extraction
- thumbnail data extraction
- thumbnail metadata
- YouTube video metadata
- YouTube channel information
- thumbnail URL
- thumbnail resolution
- high quality thumbnail
- max resolution thumbnail
- thumbnail download
- public YouTube data
- structured thumbnail data
- YouTube content research
- thumbnail dataset

### Related Keywords

- download YouTube thumbnails
- scrape YouTube thumbnails
- extract YouTube video thumbnails
- save YouTube thumbnail images
- YouTube thumbnail URL extractor
- YouTube Shorts thumbnail downloader
- YouTube thumbnail data scraper
- bulk YouTube thumbnail extraction
- YouTube thumbnail metadata scraper
- high resolution YouTube thumbnails
- maxres YouTube thumbnail downloader
- YouTube video image downloader
- YouTube visual content dataset
- YouTube thumbnail collection
- YouTube thumbnail research
- automated thumbnail collection
- YouTube thumbnail image extractor
- YouTube video thumbnail scraper
- Apify YouTube thumbnail scraper
- structured YouTube thumbnail data

### Final Overview

The **Youtube Thumbnails Downloader & Scraper** provides a practical workflow for collecting thumbnail images and related metadata from supported public YouTube videos and Shorts.

Users provide one or multiple YouTube URLs, select a preferred thumbnail quality, and let the Actor identify an available thumbnail, download it, store it in Apify's Key-Value Store, and return structured information through the dataset.

The result is useful for thumbnail research, visual-content analysis, dataset creation, asset collection, and automated workflows that need organized YouTube thumbnail data without relying on repetitive manual downloads.

**Contact me:** <Alphascraper69@gmail.com>

# Actor input Schema

## `startUrls` (type: `array`):

List of YouTube video or channel URLs

## `thumbnailQuality` (type: `string`):

Select thumbnail quality to scrape

## Actor input object example

```json
{
  "startUrls": [
    {
      "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
    },
    {
      "url": "https://youtu.be/cmGo8hM_nhs?si=YW0Tgy37iaLeHDmY"
    },
    {
      "url": "https://youtu.be/fLexgOxsZu0"
    },
    {
      "url": "https://youtube.com/shorts/5GlgIRLQ96g"
    },
    {
      "url": "https://youtube.com/shorts/ewI-PqgGybE?si=DSrPJ28H_NujCLbl"
    }
  ],
  "thumbnailQuality": "maxres"
}
```

# Actor output Schema

## `dataset` (type: `string`):

No description

# 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 = {
    "startUrls": [
        {
            "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
        },
        {
            "url": "https://youtu.be/cmGo8hM_nhs?si=YW0Tgy37iaLeHDmY"
        },
        {
            "url": "https://youtu.be/fLexgOxsZu0"
        },
        {
            "url": "https://youtube.com/shorts/5GlgIRLQ96g"
        },
        {
            "url": "https://youtube.com/shorts/ewI-PqgGybE?si=DSrPJ28H_NujCLbl"
        }
    ]
};

// Run the Actor and wait for it to finish
const run = await client.actor("alpha-scraper/youtube-thumbnails-downloader-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 = { "startUrls": [
        { "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ" },
        { "url": "https://youtu.be/cmGo8hM_nhs?si=YW0Tgy37iaLeHDmY" },
        { "url": "https://youtu.be/fLexgOxsZu0" },
        { "url": "https://youtube.com/shorts/5GlgIRLQ96g" },
        { "url": "https://youtube.com/shorts/ewI-PqgGybE?si=DSrPJ28H_NujCLbl" },
    ] }

# Run the Actor and wait for it to finish
run = client.actor("alpha-scraper/youtube-thumbnails-downloader-scraper").call(run_input=run_input)

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

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

```

## CLI example

```bash
echo '{
  "startUrls": [
    {
      "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"
    },
    {
      "url": "https://youtu.be/cmGo8hM_nhs?si=YW0Tgy37iaLeHDmY"
    },
    {
      "url": "https://youtu.be/fLexgOxsZu0"
    },
    {
      "url": "https://youtube.com/shorts/5GlgIRLQ96g"
    },
    {
      "url": "https://youtube.com/shorts/ewI-PqgGybE?si=DSrPJ28H_NujCLbl"
    }
  ]
}' |
apify call alpha-scraper/youtube-thumbnails-downloader-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,alpha-scraper/youtube-thumbnails-downloader-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/YShot3wkL0HJdRkD0/builds/V7ercvS4pB7eRUdgP/openapi.json
