Works with the best tools:
Works with the best tools:
Have a question?
Contact usThe Booking API extracts structured accommodation data from major travel and booking platforms — hotel details, room types, pricing, availability, guest reviews, ratings, and more. Just pass the listing URL and get clean JSON back.
The Booking API handles JavaScript rendering, proxy rotation, and CAPTCHA bypassing automatically. Use checkin and checkout dates to retrieve live pricing and availability for a specific period.
Prices & availability
Room rates, currency, availability status for your dates
Hotel details
Name, address, star rating, amenities, description
Guest reviews & ratings
Overall score, review count, category scores
Calendars & room types
Room availability per period, bed types, room descriptions
Can't find your target platform? Contact us to request it.
| Parameter | Type | Default | Description |
|---|---|---|---|
| url | string | — | RequiredFull URL of the accommodation listing. Must include https://. |
| checkin | string | null | OptionalCheck-in date in YYYY-MM-DD format. Used to retrieve live pricing. |
| checkout | string | null | OptionalCheck-out date in YYYY-MM-DD format. Must be used together with checkin. |
| useChrome | boolean | false | OptionalJavaScript rendering via headless Chrome. Required for some platforms. Consumes 10 credits. |
| premiumProxy | boolean | false | +9 creditsResidential proxy for better success on protected platforms. Consumes 10 credits. |
| proxyCountry | string | null | Requires premiumProxyISO 3166-1 country code (e.g. "FR", "US"). Consumes 25 credits. |
| proxyState | string | null | Requires premiumProxyTwo-letter US state code (e.g. "NY", "CA") for granular US/Australia geo-targeting. |
| waitForNetworkRequests | boolean | false | OptionalWait for AJAX requests to finish. Only works when useChrome is true. |
For a full description of all available options, see the Advanced Options section.
Date-sensitive pricing: Prices vary based on the dates provided. Always pass both checkin and checkout together — passing only one will be ignored by most platforms.
On success the API returns a JSON object. Fields set to null were not found on the listing page.
| Field | Type | Description |
|---|---|---|
| name | string | Name of the accommodation. |
| image | string | null | Main image URL of the property. |
| images | array | Array of all property photo URLs. |
| price | number | null | Price per night or total price for the selected period. |
| currency | string | null | ISO 4217 currency code (e.g. "EUR", "USD"). |
| siteURL | string | The canonical URL of the listing on the booking platform. |
| statusCode | number | HTTP status returned by the target website. |
| inStock | boolean | true if the property is available for the requested dates. |
| latitude | number | null | Geographic latitude of the property. |
| longitude | number | null | Geographic longitude of the property. |
| totalReviews | number | null | Total number of guest reviews. |
| host | string | Hostname of the scraped platform (e.g. "fr.hotels.com"). |
| results | array | Array of available rooms or units with individual pricing and details. |
| error | string | null | null on success. Error message if the scrape failed. |
| HTTP Code | Meaning | What to do |
|---|---|---|
| 200 + error: null | Success | Data is ready to use. |
| 200 + error: "..." | Scrape failed | The listing may be invalid, removed, or the platform temporarily unavailable. |
| 400 | Bad request | Missing or malformed url. Ensure dates use YYYY-MM-DD format. |
| 401 | Unauthorized | Invalid credentials. Check your dashboard. |
| 429 | Rate limit exceeded | Slow down your requests or upgrade your plan. |
Pro tip: For price monitoring, schedule daily requests with the same checkin/checkout window and track how prices evolve. Use proxyCountry to compare prices across different markets for the same property.
const username = "{YOUR_USERNAME}";
const apiKey = "{YOUR_API_KEY}";
const url = "https://fr.hotels.com/ho126461/warwick-paris-formerly-hotel-warwick-champs-elysees-paris-france/?chkin=2024-10-16&chkout=2024-10-20";
const auth = "Basic " + Buffer.from(`${username}:${apiKey}`).toString("base64");
async function scrape() {
const response = await fetch("http://api.scraping-bot.io/scrape/booking", {
method: "POST",
headers: {
"Content-Type": "application/json",
Accept: "application/json",
Authorization: auth,
},
body: JSON.stringify({
url,
options: {
premiumProxy: true,
useChrome: false,
proxyCountry: "GB",
proxyState: "ny",
waitForNetworkRequests: false,
checkIn: "2024-09-20",
checkout: "2024-09-29",
},
}),
});
const data = await response.json();
console.log(data);
}
scrape();Here is an example of result you'd receive when using Airbnb scraper as above :
{
"image": null,
"images": null,
"title": "Airbnb | Paris ⋅ Locations de vacances et logements - Île-de-France",
"price": null,
"currency": "EUR",
"siteURL": "https://www.airbnb.fr/s/Paris--France/homes?tab_id=home_tab&flexible_trip_lengths%5B%5D=one_week&monthly_start_date=2024-10-01&monthly_length=3&monthly_end_date=2025-01-01&price_filter_input_type=0&channel=EXPLORE&query=Paris&place_id=ChIJD7fiBh9u5kcRYJSMaMOCCwQ&location_bb=QkObzUAeEgpCQ0MjQA5Zmw%3D%3D&date_picker_type=calendar&checkin=2024-10-18&checkout=2024-10-23&adults=1&source=structured_search_input_header&search_type=autocomplete_click",
"siteHtml": null,
"statusCode": 200,
"htmlLength": 765028,
"captchaFound": true,
"isHtmlPage": true,
"host": "www.airbnb.fr",
"results": [
{
"id": "938185177557788537",
"title": "Appartement ⋅ Paris",
"name": "Studio calme dans quartier animé",
"price": 540,
"currency": "EUR",
"pricePerNight": 108,
"rating": {
"rate": "4,75",
"countReviews": "32"
}
},
{
"id": "1059476304567813268",
"title": "Appartement en résidence ⋅ Vitry-sur-Seine",
"name": "Studio pour femmes, à 15min de Paris13-T9",
"price": 300,
"currency": "EUR",
"pricePerNight": 60,
"rating": {
"rate": "4,81",
"countReviews": "21"
}
},
{
"id": "928995607969084418",
"title": "Appartement ⋅ Paris",
"name": "Studio Noah-Joli à la place de Clichy pour couple",
"price": 616,
"currency": "EUR",
"pricePerNight": 124,
"rating": {
"rate": "4,93",
"countReviews": "30"
}
}
],
"description": "16 sept. 2024 - Louez auprès d'habitants à Paris, France à partir de 18 € par nuit. Trouvez des hébergements uniques auprès d'hôtes locaux dans 191 pays. Soyez chez vous, ailleurs, avec ."
}