# Changelog of Google Hotels Scraper — Prices, OTA Offers & Contacts (`foxlabs/google-hotels-scraper`) Actor

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

## Changelog

### 0.1 — 2026-09-28

First version.

- Destination searches (`hotels in Paris`, `Istanbul`), hotel names (`Ritz Paris`), Google Hotels links and property tokens.
- Stay dates as `YYYY-MM-DD` or days from today (`+30`, counted in UTC), nights or check-out, adults, 30 currencies, language and market. A link's own dates and currency are not used.
- Up to 200 properties per destination; Google's pages are followed and duplicates removed.
- Each property is delivered and charged once per run, whichever query finds it first (the same hotel by name and by token, or found by two searches). Later queries count it as `duplicates` in `SOURCE_REPORT`.
- Per hotel (on by default): the nightly and total price, with and without taxes, of each booking site Google lists, the booking site's own link, room rates with free-cancellation terms, address, phone, website, Google Place ID, neighborhood and third-party ratings.
- Free-cancellation terms are recognised in 13 languages: English, Turkish, German, French, Spanish, Italian, Dutch, Polish, Russian, Japanese, Korean, Chinese and Arabic.
- `amenities`: the amenity names Google gives for vacation rentals. Hotels come with codes only, so the field is `null` for them.
- `resolvedLocation` on rows from a text query: the place Google searched (name, knowledge-graph ID, Maps feature ID), with the wider `area` (for a landmark, its city) kept apart. For a hotel name, the hotel Google matched.
- A destination Google cannot find is not answered with unrelated hotels:
  - When Google falls back to hotels near the searcher's own location, the Actor delivers nothing for that query.
  - When Google answers nothing for "hotels near X", the Actor tries "X" once (`searchedAs`).
  - Otherwise it leaves a free status row (`error: "unresolved: …"`) and `status: "unresolved"` in `SOURCE_REPORT`.
- Filters: property type, minimum rating, minimum class, maximum price per night. A filtered search reads up to 20 result pages to find enough matches.
- Hotels asked for by link, token or name carry the same list fields as search results (coordinates, country, description, check-in and check-out times).
- Text fields use plain spaces and carry no invisible direction marks. Google sends a narrow no-break space before "AM"/"PM" in times and a left-to-right mark in Arabic labels.
- Pricing: one `hotel` event per delivered property, booking-site offers included. Status rows are free.
- `SOURCE_REPORT` record per run; queries without results leave a free status row.
- Batch and Standby (HTTP API) modes share the same code and events.
