Airbnb Search Scraper
Under maintenancePricing
from $1.56 / 1,000 listing chargeds
Airbnb Search Scraper
Under maintenanceSearch Airbnb listings by location and dates via the same embedded search data the website uses. Get name, type, rating, review count, price, GPS coordinates, photos, and badges (Superhost, Guest favorite) for up to 270 listings per search — no API key or account required.
Pricing
from $1.56 / 1,000 listing chargeds
Rating
0.0
(0)
Developer
Romy
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
What does Airbnb Search Scraper do?
Airbnb Search Scraper searches Airbnb homes by destination and filters — dates, guests, price range, bedrooms/beds/bathrooms, room type, amenities, Instant Book, Guest favourites — and pushes every listing to the dataset, paginating automatically until it runs out of results or hits your maxPages/maxItems limit.
It talks directly to the same internal API the official Airbnb Android app uses (api.airbnb.com), reverse-engineered by live MITM capture against a real device — a real Apollo-style GraphQL persisted query the app itself sends (exact query hash captured live, never guessed). No Airbnb account, no API key, no scraping setup. This is the search slice of Airbnb All-in-One API, split out as its own focused Actor.
Why use Airbnb Search Scraper?
- Real, server-computed pricing in any currency — pass
currency: "IDR"(or any ISO code) and get genuine localized prices from Airbnb's own server, not a client-side conversion - Real filters — price range, bedrooms/beds/bathrooms, room type, amenities, Instant Book, Guest favourite, host language — the same filter chips the app's own search screen uses
- Automatic pagination — Airbnb's own pagination quietly switches from
GETtoPOSTafter page 1 (real gotcha, handled for you) - Global — not tied to one country's data
- No account needed — every read request works fully anonymously
- Use cases: travel search products, price-comparison tools, market research, lead generation
Input
| Field | Type | Description |
|---|---|---|
query | string | Free-text destination, e.g. Bali, Indonesia. Required unless placeId is set. |
placeId | string | Exact Airbnb place id (from an autosuggest lookup) — more precise than query. |
checkin / checkout | string (date) | YYYY-MM-DD |
adults / children / infants | integer | Guest counts (default adults: 1) |
priceMin / priceMax | integer | Total trip price range, in whole units of currency |
bedrooms / beds / bathrooms | integer | Minimum counts ("at least this many") |
roomType | string | Entire home/apt | Private room — the real strings the app sends |
amenities | integer[] | Airbnb amenity ids. Only 4 (Wifi) and 7 (Pool) confirmed by hand — any other real id also works |
allowsPets | boolean | "Allows pets" filter chip — not a pet count |
instantBook | boolean | Only Instant Book listings |
guestFavorite | boolean | Only "Guest favourite" listings |
hostLanguages | string[] | ISO-ish 2-letter host language codes, e.g. ["en"] |
currency | string | ISO code, default USD |
maxPages | integer | Stop after this many result pages (~8 listings/page). Default 10. |
maxItems | integer | Stop once this many listings have been pushed. Default: unbounded (bounded by maxPages instead). |
Example:
{"query": "Bali, Indonesia","checkin": "2026-09-01","checkout": "2026-09-05","adults": 2,"priceMax": 3000000,"currency": "IDR","maxPages": 5}
Output
One dataset row per listing, Airbnb's own searchResults item shape (trimmed example):
{"title": "Villa in Tegalalang","avgRatingA11yLabel": "New place to stay","demandStayListing": { "id": "RGVtYW5kU3RheUxpc3Rpbmc6MTc0OTY2OTEzMTQ5MDM3NTU0Ng==" }}
Known limitations
- No destination autosuggest endpoint here — pass a plain-text
query(Airbnb resolves it server-side) or supply aplaceIdyou already have. For a dedicated autocomplete lookup, use Airbnb All-in-One API's/autosuggest. - Listing detail, reviews, availability, host profiles, Experiences, and Services are separate spin-off Actors — this one is search-only.
Pricing
Pay-per-event: $0.0020 per listing result pushed to the dataset (FREE plan price — BRONZE/SILVER/GOLD/PLATINUM/DIAMOND get automatic discounts based on your Apify plan). See the Actor's Pricing tab for current rates.