# Changelog of Airbnb Reviews Scraper — Guest Reviews, Ratings & Replies (`kestrel/airbnb-reviews-scraper`) Actor

- **URL**: https://apify.com/kestrel/airbnb-reviews-scraper/changelog.md
- **Full Actor documentation**: https://apify.com/kestrel/airbnb-reviews-scraper.md

## Changelog

### 2026-08-30

- Reliability: a run that cannot act on its input — a URL from the wrong site, a name nothing resolves to, an empty target list, a number outside the documented range — now ends cleanly with the reason on the run card instead of as a failed run. Nothing is charged in either case; a blocked or throttled source still fails loudly.
- Store listing: moved into the categories buyers actually browse (the old `Business` category has no Store page).

### 1.1 — 2026-08-28

- The prefilled input now runs out of the box: a place search for Lisbon capped at 5 listings × 20 reviews (about $0.50 at most, under a minute). Before, the prefilled form had no listing, URL or place, so a "Run" without edits — including Apify's automated quality check — stopped with `Invalid input`. Defaults for API callers are unchanged.
- Example run input aligned with the prefill.

### 1.0 — 2026-08-26

First release.

- Every guest review of any Airbnb listing: rating, the review as written, Airbnb's translation, the language it was written in, reviewer name/id/location, date, stay type and the host's public reply.
- Three ways in: listing ids, Airbnb listing or search URLs, or a place name — a place harvests reviews for every listing it returns.
- Order by most recent, highest rated, lowest rated or most relevant; `minRating` keeps only reviews at or below a rating, so a complaints feed costs nothing for the happy ones (filtered reviews are never charged).
- Billing: pay per delivered review row. Listing rows, status rows, filtered reviews, listings with no reviews and unrecognised places are all free, and a listing is harvested once per run however many inputs point at it.
- Reliability: unrecognised places are reported instead of returning listings from all over the world; per-job failures come back as status rows; runs under limited permissions.
