2026-10-16 — Keyword Planner and locale documentation
Validated search terminology against Google Ads Keyword Planner and Store shelves. Added localized usage guidance and bounded examples; retained existing English phrases. Clarified locale limitations where measured. No runtime, output fields, defaults, or pricing changed.
price change, 2026-10-12
review $0.003 → $0.004 per row (aligned with the other hotel review actors). no paying users in the last period, so Apify applied it immediately; nothing else changes — same rows, same free rows, same filters, no start fee, proxy and compute included. Every price mention in the input form, the event text and this README was updated with it.
1.0 — listing and input form reworded, 2026-10-11
No behaviour, output or price changed; the same inputs return the same rows.
Title and Store description rewritten in the nouns agents and searchers type: the title keeps "Hostel Guest Reviews" as a contiguous phrase and adds "Ratings"; the description says "One row per review" with the fields (0-100 score, seven sub-ratings, text, owner reply, group type, age, nationality, date), the free hostel row and the free filters (lowest rated, only new, group type). Spanish, Portuguese and German nouns for hostel reviews ride in the meta description only, because the text Hostelworld serves is its English machine translation.
The input form is reordered: which hostels, then the cap and sort, then sinceDate (only new) ahead of maxRating, minRating, groupTypes and requireText, then the hostel row, then proxy and pacing. Nothing was renamed or removed.
Every input now says what to pass, with an example, its default, what it changes and what it costs, and names the request it answers ("the 20 worst reviews", "only new reviews", "what solo female travellers say"). maxReviewsPerProperty now states that the filters apply to the rows it fetches (set 0 to scan a whole history) — the code has always worked this way; the old text did not say so.
The pricing text lists what is never charged (filtered reviews, duplicate targets, hostels without reviews, unknown ids, hostel and status rows), that there is no start fee, the page size, and that a run stops at the maximum cost you set.
README: a section mapping common requests to the exact input, the row types, the single-language fact and the status contract.
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.0 — 2026-08-29
First release.
Every Hostelworld review of a hostel as structured rows: the 0-100 overall score, the seven sub-scores behind it (value, safety, location, staff, atmosphere, cleanliness, facilities), the same score on the 0-5 scale, the text, the language and machine-translation flag, the hostel's public reply, the group type, age band and trip types of the guest, and their nickname, nationality and review count.
Hostels by Hostelworld URL (both the /hostels/p/<id>/… and the older hosteldetails.php form) or by bare property id. Every URL form carries the id, so resolution costs no request; a URL without one falls back to reading the page once.
Filters that run before billing: minRating and maxRating on the 0-100 overall, groupTypes, sinceDate (relative dates for schedules; paging stops once a whole page predates it in newest-first order), requireText.
Four review orders, and only the four the API really honours: newest first, oldest first, lowest rated first, highest rated first. Anything else is silently served as newest first, so the input is an enum.
A free hostel row per property: type, star rating, city, country, region, address, coordinates, aggregate 0-100 ratings, total ratings, facilities, what it is best for, lowest nightly price, and the solo/couple/group split of its reviewers.
Reads Hostelworld's own public JSON API over Apify's datacenter proxy — no key, no login, no browser, no Origin header. A hostel with no reviews is reported as no_reviews with total: 0, an unknown or deactivated id as not_found, and a refusal as an error; the API has no silent-empty answer and neither does the actor.
Pay per review row; hostel rows, status rows, duplicate targets, unknown ids and filtered reviews are free.