# Changelog of YouTube Shorts Scraper (`scraper_creator/youtube-shorts-scraper`) Actor

- **URL**: https://apify.com/scraper_creator/youtube-shorts-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/scraper_creator/youtube-shorts-scraper.md

## Changelog

Changes to the YouTube Shorts Scraper.

Dates record source changes, not Apify publication dates.

### 2026-10-18

#### Documentation

- Explain `stopped` status and `stoppedEarly`, including why `partial: false` does not prove that all requested channels were processed.
- Document the required `short` pay-per-event hook and budget limits. Pricing is not enabled or set by the code.
- Replace the Unreleased section with dated change entries.

### 2026-10-17

#### Added

- Collect public Shorts from 1–5 YouTube channels, with newest-first pagination and a configurable limit of 1–10,000 results per channel (default: 100).
- Return video IDs, URLs, titles, descriptions, publication dates, engagement counts, channel details, subscriber counts, and hashtags.
- Support optional proxy configuration. Direct connections remain the default.
- Skip videos already saved in the run's dataset when restarting the same run.
- Record per-channel results and errors in `RUN-SUMMARY`, including whether results are partial.
- Support a `short` pay-per-event hook and stop collecting when its run budget is exhausted. If pay-per-event pricing is enabled, the `short` event must be configured or the run fails. Pricing is not enabled or set by the code.

#### Changed

- Convert compact subscriber labels such as `1.43K` into numeric values such as `1430`. Preserve the original label in `subscriberCountText` and mark converted values with `subscriberCountIsApproximate: true` and a warning. These values remain approximate.
- Simplify the input form by removing duplicate integration fields and the sorting control, and moving proxy configuration to Advanced settings. Existing API aliases (`channelUrls` and `maxShortsPerChannel`) and the `NEWEST` sorting input remain supported.

#### Fixed

- Return `0` when YouTube explicitly displays zero likes on the default like button. Unavailable or rounded like counts remain `null`.
- Extract hashtags from YouTube's displayed hashtag links, preserving the `#` prefix and display order and removing duplicates. Do not treat location links or every hashtag in a title or description as displayed hashtags.
- Isolate video failures so remaining videos can still be processed. Preserve collected results after a channel or pagination failure and continue with the next channel.
- Fail runs with errors and no valid results, while retaining partial results when some videos succeed. Storage or charging failures still stop the run.

#### Documentation

- Rewrite the README in English for general users, with input examples, output fields, data accuracy notes, and partial-result handling, and add a changelog.
