# Changelog of Meta Threads Scraper (`scrapelabmax/meta-threads-scraper`) Actor

- **URL**: https://apify.com/scrapelabmax/meta-threads-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/scrapelabmax/meta-threads-scraper.md

## Changelog

All notable changes to this Actor are listed here. Dataset field changes follow the versioning policy in `docs/schema.md`.

### 0.1.1 — 2026-11-02

#### Fixed

- `actor.json` now registers `output_schema.json`, so the Console Output tab and the API list the dataset, its views and the `RUN_SUMMARY` record instead of "not defined". Dataset links target `/items`.
- The **Posts** and **Profiles** dataset views show only rows of their own record type. Previously every row of the other type rendered as a line of `undefined` cells. To make that possible the shared `record_type` and `source_input` columns moved out of the two views; they remain in **All fields** and in the JSON records. No dataset field changed (schema stays `1.0`).

### 0.1.0 — 2026-11-01 (initial release)

#### Added

- Six modes: `user_posts`, `user_replies`, `user_reposts`, `search_posts`, `search_profiles`, `post_urls`.
- Public, login-free HTTP access to Threads; no cookies or credentials are accepted.
- Stable output schema `1.0` with `record_type` discriminator, numeric IDs, canonical URLs, ISO-8601 UTC timestamps and truthful nulls (`view_count` is always `null` with `view_count_status: "unavailable"`).
- Local filters (`since`, `until`, `minLikes`) applied before a row is written or charged.
- Within-run deduplication by stable ID; a post matched by several keywords is billed once and lists all of them in `matched_keywords`.
- Pay-per-event billing with a single `result` event ($0.0015) per emitted unique row. Diagnostics, filtered, duplicate and invalid rows are never charged.
- Free `RUN_SUMMARY` key-value record with per-input statuses (`ok`, `partial`, `no_results`, `not_found`, `private`, `rate_limited`, `unsupported`, `failed`), counts and warnings.
- Run-level guards: `maxResultsPerInput`, `maxTotalResults`, `maxRequestsPerInput`; graceful `budget_reached` stop when the global cap or spending limit is hit.
- Beta: `onlyNew` + `monitorName` repeat-run deduplication for `user_posts` and `search_posts`.

#### Known limits (Threads, not configurable)

- Search returns at most 20 posts per keyword and sort order.
- Profile search returns about 13 profiles per keyword.
- Replies and Reposts tabs expose a single page each when logged out.
- View counts are not exposed to logged-out visitors.
