{"uid":"cap_-eLBqzY1h4ObPucPZBtwz","slug":"booking-com-hotels-scraper-voyager-booking-scraper-7c0792c7","name":"Booking.com Hotels Scraper (voyager/booking-scraper)","description":"Start the \"Booking Scraper\" Apify actor (voyager/booking-scraper). Scrape Booking with this hotels scraper and get data about accommodation on Booking.com. You can crawl by keywords or URLs for hotel prices, ratings, addresses…","url":"https://stableapify.dev/api/actors/voyager/booking-scraper/call","method":"POST","headers":{},"bodySchema":{"type":"object","properties":{"input":{"type":"object","required":["extractAdditionalHotelData","propertyType","sortBy","starsCountFilter","currency","language","rooms","adults","children"],"properties":{"rooms":{"type":"integer","default":1,"maximum":50,"minimum":1},"adults":{"type":"integer","default":2,"maximum":50,"minimum":1},"search":{"type":"string","description":"Insert the destination name here"},"sortBy":{"enum":["bayesian_review_score","distance_from_search","class_asc","price","review_score_and_price","class_and_price"],"type":"string","default":"distance_from_search","description":"Hotel attribute by which the results will be ordered"},"checkIn":{"type":"string","pattern":"^(\\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])$|^(\\d+)\\s*(day|week|month|year)s?$","description":"Select the check-in date in format YYYY-MM-DD or {number} {unit}. - ***Input the date in the UTC timezone!*** Booking uses the UTC timezone for all check-in and check-out dates, so we do the same."},"checkOut":{"type":"string","pattern":"^(\\d{4})-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])$|^(\\d+)\\s*(day|week|month|year)s?$","description":"Select the check-out date in format YYYY-MM-DD or {number} {unit}. - ***Input the date in the UTC timezone!*** Booking uses the UTC timezone for all check-in and check-out dates, so we do the same."},"children":{"type":"integer","default":0,"maximum":50,"minimum":0},"currency":{"enum":["ARS","AUD","AZN","BHD","BRL","BGN","CAD","XOF","CLP","CNY","COP","CZK","DKK","EGP","EUR","FJD","GEL","HKD","HUF","INR","IDR","ILS","JPY","JOD","KZT","KRW","KWD","MYR","MXN","MDL","NAD","TWD","NZD","NOK","OMR","PLN","GBP","QAR","RON","RUB","SAR","SGD","ZAR","SEK","CHF","THB","TRY","AED","USD","UAH"],"type":"string","default":"USD","description":"Currency to be set on the website"},"language":{"enum":["en-gb","en-us","de","nl","fr","es","es-ar","ca","it","pt-pt","pt-br","no","fi","sv","da","cs","hu","ro","ja","zh-cn","zh-tw","pl","el","ru","tr","bg","ar","ko","he","lv","uk","id","ms","th","et","hr","lt","sk","sr","sl","vi","tl","is"],"type":"string","default":"en-gb","description":"Language to be set on the website (does not apply to reviews)"},"maxItems":{"type":"integer","maximum":9007199254740991,"minimum":1,"description":"Limit the number of places to be scraped. Input a value over `1000` to activate the 'overcome 1000 results limit' feature."},"minScore":{"type":"string","description":"Minimum rating of a hotel in \"8.4\" format. - Searching below a rating of `5` may be very inefficient, as it's not natively supported by Booking."},"startUrls":{"type":"array","items":{"type":"object","required":["url"],"properties":{"url":{"type":"string","format":"uri"},"method":{"type":"string"},"headers":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"string"}},"payload":{"type":"string"},"userData":{"type":"object","propertyNames":{"type":"string"},"additionalProperties":{}}},"additionalProperties":false},"description":"Insert URLs to start with instead of a destination name. Hotel search URL's filters will be applied, except for the ones in the scraper input. You can also use shared list URLs. These links are generated for properties you saved in your Booking account."},"flexWindow":{"enum":["0","1","2","3","7"],"type":"string","description":"Number of days to flex around the check-in and check-out dates. E.g. setting `3` will scrape hotels with a possible date range up to 3 days before and 3 days after the selected dates. - **Applied per URL:** used for search-style start URLs (destination, region, coordinates) or a `search` query, and **ignored for direct hotel URLs** (`/hotel/...html`), where only the exact `checkIn`/`checkOut` dates are used."},"minMaxPrice":{"type":"string","description":"Insert the minimum and maximum price per night, e.g. '100-150' or '100+.'"},"propertyType":{"enum":["none","Hotels","Apartments","Hostels","Guest houses","Homestays","Bed and breakfasts","Holiday homes","Boats","Villas","Motels","Resorts","Holiday parks","Campsites","Luxury tents"],"type":"string","default":"none","description":"Choose type of property"},"starsCountFilter":{"enum":["1","2","3","4","5","any","unrated"],"type":"string","default":"any","description":"Only scrape places with the selected stars count. Also includes Booking's apartment-like properties 'square' rating."},"extractAdditionalHotelData":{"type":"boolean","default":false,"description":"Enables scraping of additional fields for each hotel: surroundings (nearby points of interest and distances) and roomOfferings (available room types with their details)."}},"description":"Normalized actor input. See field descriptions for the simplified shape; native Apify input also accepted (passed through).","additionalProperties":{}},"options":{"type":"object","properties":{"build":{"type":"string","maxLength":100,"minLength":1},"memory":{"type":"integer","maximum":32768,"minimum":128},"maxItems":{"type":"integer","maximum":100000,"minimum":1}},"description":"Optional Apify run options.","additionalProperties":false}}},"responseSchema":null,"example":{"request":{"input":{"username":"sarptecimer","includeEmail":false},"options":{"memory":1024,"maxItems":100}},"response":{"run":{"id":"snNXaOoNVXjztNgNt","status":"READY","actorId":"oeiQgfg5fsmIJB7Cn","startedAt":"2026-06-16T17:44:50.264Z","usageTotalUsd":0,"defaultDatasetId":"dw0rhIYVpT2gyAjbO"},"token":"eyJhbGciOiJIUzI1NiJ9.eyJydW5JZCI6InNuTlhhT29OVlhqenROZ050IiwiYWN0b3JJZCI6InZveWFnZXIvYm9va2luZy1zY3JhcGVyIiwiZGVmYXVsdERhdGFzZXRJZCI6ImR3MHJoSVlWcFQyZ3lBamJPIiwidyI6IjB4OWNjNDJmM2Q5MjQ1Yjg2N2FjY2NkNjMwYjQzZjkwNmMxNjY1YjE3NiIsImlhdCI6MTc4MTYzMTg5MCwiZXhwIjoxNzg0MjIzODkwfQ.F3HsT4a3iWa6MACtvC6rzGAy-zBfrYn0amcADAd9iUg"}},"exampleRequest":{"input":{"username":"sarptecimer","includeEmail":false},"options":{"memory":1024,"maxItems":100}},"tags":["x402"],"displayCostAmount":"0.01","displayCostAsset":"USDC","priceDynamic":false,"priceHint":null,"priceStatus":"priced","priceSource":"settled","requiresHandshake":false,"reviewCount":0,"rating":{"score":"0.00","successRate":"0.00","reviews":0,"stars":null,"state":"unrated"},"availabilityStatus":"unknown","priceObserved":null,"sessionDeposit":null,"pricing":{"kind":"static","summary":"$0.01/call","primary":{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.01","per":"call","confidence":"exact"},"accepted":[{"kind":"static","protocol":"x402","network":"base","amountUsd":"0.01","per":"call","confidence":"exact"}]},"paymentMethods":[{"uid":"pm_iML0p4mLecAa_TG7wUUzf","protocol":"x402","methodType":"crypto","chain":"base","mode":"charge","costAmount":"0.01","costPer":"request","priority":0,"asset":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913","unit":"request","depositMicros":null,"planRef":null}],"brandName":null,"brandSlug":null,"brandBaseUrl":null,"brandDocsUrl":null,"whatItDoes":"Starts an Apify actor run that scrapes Booking.com for hotel and accommodation data including prices, ratings, addresses, and reviews by keyword or URL.","exampleAgentPrompt":"Can you scrape Booking.com for hotels in Paris and get me their prices, ratings, and addresses — limit it to 100 results and use 1024 MB memory?","exampleUseCases":[{"title":"Hotel price comparison for travel planning","prompt":"Scrape Booking.com for hotels in Barcelona for the keyword 'Barcelona beachfront hotels' and pull their prices, ratings, and addresses — get up to 100 results so I can compare options."},{"title":"Competitive analysis for hospitality business","prompt":"I need to pull all accommodation listings from these three Booking.com URLs for our competitor research: grab prices, star ratings, and property addresses, with a max of 100 items and 1024 MB memory."},{"title":"Travel data aggregation for a deals app","prompt":"Can you start a Booking.com scrape for 'cheap hostels in Amsterdam' and collect up to 50 results including prices, ratings, and location info so I can populate our deals feed?"}],"resultDescription":"Returns an actor run object with a run ID, status (e.g. READY), actor ID, start timestamp, total USD usage, and a default dataset ID where results will be stored once the run completes. Also returns a JWT token used to fetch the scraped dataset from the sibling endpoint.","failureModes":["Actor run fails to start due to invalid input parameters or unsupported Booking.com URL format","Memory limit too low causing actor to crash mid-run","Max items exceeded or rate limiting by Booking.com during scrape","Token expiration before dataset is fetched","Payment failure via x402 protocol preventing run initiation","Run starts but returns empty dataset if search keyword yields no results"],"whenToPreferThis":"Choose this endpoint when you need structured accommodation data from Booking.com at scale — including prices, ratings, and addresses — and want to drive the query via keyword or URL. Prefer this over manual browsing or generic search APIs when you need bulk hotel data for price comparison, market research, or travel aggregation. Pair with the sibling dataset-fetch endpoint to retrieve results after the run completes.","instructions":null,"reviewSummary":null,"reviewSummaryHighlights":null,"reviewSummaryConcerns":null,"reviewSummaryGeneratedAt":null,"activationCount":0,"lastUsedAt":null,"lastSuccessfullyRanAt":null,"lastHealthCheckAt":"2026-09-15T06:43:55.470Z","isFirstParty":false}