# Changelog of Instagram Reels Scraper — Plays, Likes & Comments by Profile (`foxlabs/instagram-reels-scraper`) Actor

- **URL**: https://apify.com/foxlabs/instagram-reels-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/foxlabs/instagram-reels-scraper.md

## Changelog

### 0.1 — 2026-10-09

- First version: reels per profile with plays, likes, comment count and a score against the profile's median; details on request; only-new lists; free status rows for lines that bring no reels.
- Requests leave from the run's own address; when Instagram turns it away the Actor moves to Apify Proxy by itself. A start-up check ends a run, before anything is read, when Instagram does not answer or has changed its page.
- A list that hands back a page it has already given ends there; status rows keep their place among the rows; a request every datacenter address has turned away goes once more through a residential address when the account has them.
- The start-up check asks the question a run is going to ask, the first page of a Reels tab: a Reels query Instagram has changed ends the run before anything is read, and the check no longer spends the address's allowance for profile queries. (Standby mode is prepared in the code and not offered.)
- Requests to one address start at least 80 ms apart (12 a second): in a platform run of another Actor of this family, which shares this request code, about 27 requests a second from the run's own address were answered HTTP 429 after 115 requests.
- Measured on the Apify platform on 2026-10-09 (build 0.1.4, 512 MB): 500 reels of one profile in 15 seconds from the run's own address, 60 reels with details in 28 seconds; Instagram refused none of the requests counted; a run restarted part-way on our request delivered no reel twice. The runs are listed in the README.

### 0.1.6 — 2026-10-10

After an independent review of the README (34 findings, `_qa/q15-refutation-2026-10-09.md`):

- **`reel-detailed` only for real details.** An answer to the details request that holds none of them — not even the reel's exact time — no longer counts as details: the row is delivered from the list alone, carries the `reel` event, and the status message counts it under "answered by Instagram without the reel's details". Before, such a row carried `reel-detailed` with every detail column `null`.
- **A Reels tab without play counts is not delivered as rows without figures.** When a profile's first page carries no play count at all, the line gets a free status row that asks you to report the run (Instagram's answer has changed), and the shared start-up check now requires a tab with entries and their play counts.
- **The status message names the profiles whose lists were cut** (up to five, then a count) instead of only counting them, and names the profiles that brought no reel of their own because every reel on their tab had been delivered already (by another profile of the run, or to the list in an earlier run); before, such a profile was not mentioned at all.
- **`listName` is looked at only when `onlyNewReels` is on**, and the form refuses a name that does not fit before the run starts. Before, a name left in the form ended a run that did not use it.
- **A proxy set in the input is the road of every request:** the run does not move to Apify Proxy or to a residential address by itself; a setting the platform refuses ends the run with a message before anything is read (it used to go on without a proxy).
- **Messages:** a run whose rows could not be written no longer says "Instagram did not answer"; a row whose write or charge failed "may be in the dataset"; a run stopped by a limit tells the profiles it did not get to from the ones it left before the end of their tab.
- **Texts corrected:** the five-minute pause after five failed detail requests and what the reels listed meanwhile carry; what an "only new" list does with a reel delivered without details; one run at a time per list and the 300,000-entry memory; `maxReels` over more than 1,000 profiles; the times paragraph (7 reels 10–58 minutes early); the store description (pinned first, then newest); the platform table's labels.
