Hotels Scraper API
Extract structured accommodation data from public Hotels pages as JSON. Send a accommodation URL and receive the fields exposed by the target page.
Decide before you build
- Endpoint
- POST /scrape/booking
- Scrapers
- Hotels accommodation pages
- Cost
- 10 credits / call
- Free plan
- 500 credits / month
- Call pattern
- sync, POST
- On failure
- credits refunded
- Response format
- JSON
- Concurrency
- by plan tier
Booking & Travel requests are synchronous. Cost depends on the options selected for the request.
Hotels only works with a premium proxy. ScrapingBot turns premiumProxy on automatically for every Hotels request, so each request costs 10 credits on current plans. You don't need to set it yourself.
Try the Hotels scraper on your own targetRun a request against a public accommodation page and inspect the JSON before you integrate.
Open the live testWhat you get back
accommodation dataHotels data in JSON
Retrieve the accommodation information exposed by the public Hotels page.
- Accommodation name, description and images
- Rates, currency and availability when available
- Location, facilities and room information
- Ratings and booking details exposed publicly
Request optionsControl how the page is collected
Use rendering or proxy options only when the target requires them.
- JavaScript rendering with useChrome
- Premium proxy and country targeting
- Public URL input; no account login required
- Structured JSON in the same response
Call the Hotels scraper
Send a public accommodation URL to the Booking & Travel endpoint. The API returns the result in the same response.
# POST - scrape a public accommodation page
curl -X POST "https://api.scraping-bot.io/scrape/booking" \
-u "yourUsername:yourApiKey" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com/hotel/example",
"options": {
"useChrome": false,
"premiumProxy": true
}
}'Code example
Authenticate with your ScrapingBot username and API key, then read the returned JSON.
const auth = "Basic " + Buffer.from("yourUsername:yourApiKey").toString("base64");
const response = await fetch("https://api.scraping-bot.io/scrape/booking", {
method: "POST",
headers: { "Content-Type": "application/json", Authorization: auth },
body: JSON.stringify({ url: "https://example.com/hotel/example", options: { useChrome: false, premiumProxy: true } }),
});
const result = await response.json();Run this call in two minutesCreate an account, copy your API key, then use the example above.
Get your API keyRequest parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
url | string | — | Full public page URL, including https://. |
options.useChrome | boolean | false | Render JavaScript when the target page requires a browser. |
options.premiumProxy | boolean | false | Use a premium proxy for targets that require it. |
options.proxyCountry | string | — | Country targeting with a premium proxy. |
Response example
Example of the structured data returned for a public Hotels accommodation page. Available fields vary with the target page.
{
"data": {
"image": "https://images.trvl-media.com/lodging/79000000/78210000/78209000/78208919/7bf9f3da.jpg?impolicy=resizecrop&rw=598&ra=fit",
"images": [
"https://images.trvl-media.com/lodging/79000000/78210000/78209000/78208919/7bf9f3da.jpg?impolicy=resizecrop&rw=598&ra=fit",
"https://images.trvl-media.com/lodging/79000000/78210000/78209000/78208919/13a6fb2b.jpg?impolicy=resizecrop&rw=297&ra=fit",
"https://images.trvl-media.com/lodging/79000000/78210000/78209000/78208919/23fb79fb.jpg?impolicy=resizecrop&rw=297&ra=fit",
"https://images.trvl-media.com/lodging/79000000/78210000/78209000/78208919/09cd3084.jpg?impolicy=resizecrop&rw=297&ra=fit",
"https://images.trvl-media.com/lodging/79000000/78210000/78209000/78208919/c127b987.jpg?impolicy=resizecrop&rw=297&ra=fit"
],
"title": "Locke at East Side Gallery",
"price": 1989,
"currency": "EUR",
"siteURL": "https://fr.hotels.com/ho2503685408/locke-at-east-side-gallery-dixcove-ghana/?chkin=2024-10-03&chkout=2024-10-10&x_pwa=1&rfrr=HSR&pwa_ts=1724328296621&useRewards=false&rm1=a2®ionId=536&destination=Berlin%2C+Allemagne&destType=MARKET&neighborhoodId=178777&latLong=52.51384%2C13.35008&sort=RECOMMENDED&top_dp=1021&top_cur=EUR&userIntent=&selectedRoomType=321925807&selectedRatePlan=390128077&expediaPropertyId=78208919&searchId=ea5ee8e6-6043-4289-8f96-c61cdb83bc2b",
"siteHtml": null,
"statusCode": 200,
"htmlLength": 1697751,
"captchaFound": false,
"isHtmlPage": true,
"host": "fr.hotels.com",
"rating": {
"value": "9,8 sur 10 ",
"wording": "Exceptionnel",
"reviewCount": 241
},
"amenities": {
"highlights": [
"Animaux de compagnie acceptés",
"Wi-Fi haut débit gratuit",
"Restaurant",
"Climatisation",
"Salle de sport",
"Laverie",
"Réception 24 h/24",
"Non-fumeurs"
],
"services": [
{
"name": "Restauration",
"values": [
"Restaurant",
"Café"
]
},
{
"name": "Services",
"values": [
"Réception ouverte 24 h/24",
"Laverie",
"Consigne à bagages"
]
},
{
"name": "Installations",
"values": [
"Salle de fitness ouverte 24 h/24",
"Traitement sans cruauté des animaux sauvages en captivité",
"Excursions et activités organisées par des entreprises locales",
"Représentations d’artistes locaux",
"Réinvestissement d’au moins 10 % des bénéfices dans la communauté et le développement durable",
"Sensibilisation à la culture et à l’écosystème locaux",
"Fenêtres à double vitrage",
"Éclairage à 80 % au moins par LED",
"Politique complète de recyclage des déchets",
"Non-utilisation de pailles en plastique",
"Non-utilisation de bouteilles d’eau en plastique",
"Salle de banquet"
]
}
]
},
"description": "Locke at East Side Gallery offre un emplacement sensationnel, vous installant à moins de 10 minutes de marche de points d'intérêt comme Mercedes-Benz Arena et East Side Gallery. Une petite séance de sport au centre de fitness ouvert 24 h/24 ne manquera pas de vous ouvrir l'appétit avant d'aller déguster le petit-déjeuner, le déjeuner ou le dîner à l'établissement Anima. À moins de 5 minutes en voiture, vous trouverez aussi des sites comme Alexanderplatz et DDR Museum. Les autres voyageurs adorent le personnel attentionné et l'emplacement. L'hébergement se situe à une courte distance à pied des transports publics. Station de métro Schlesisches Tor se trouve à 14 min à peine. ",
"languages": "Anglais et allemand",
"nearby": {
"places": [
"Mercedes-Benz Arena - 7 min à pied",
"Alexanderplatz - 4 min en voiture",
"Fernsehturm de Berlin - 5 min en voiture",
"Checkpoint Charlie - 6 min en voiture",
"Potsdamer Platz - 9 min en voiture"
],
"transports": [
"Berlin (BER-Brandebourg) - 34 minutes en voiture",
"Gare de l'Est (Berlin) - 8 minutes à pied",
"Gare de Berlin Warschauer Strasse - 13 minutes à pied",
"Station S-Bahn Jannowitzbrücke - 24 minutes à pied",
"Station de métro Schlesisches Tor - 14 minutes à pied",
"Helsingforser Platz Tram Stop - 16 minutes à pied",
"Revaler Straße Tram Stop - 17 minutes à pied"
],
"restaurants": [
"Café Martha at Schulz Hotel Berlin Wall - 6 min à pied",
"Zola - 5 min à pied",
"Einstein Kaffee am Mercedes Platz - 5 min à pied",
"Chupenga Burritos & Salads - 5 min à pied",
"McDonald's - 7 min à pied"
]
},
"rooms": [
{
"name": "One Bedroom Open Plan SuitePolitique d’annulation",
"image": "https://images.trvl-media.com/lodging/79000000/78210000/78209000/78208919/befbf1e7.jpg?impolicy=fcrop&w=1200&h=800&p=1&q=medium",
"available": true,
"price": 1989,
"currency": "EUR",
"extras": [
{
"text": "Non remboursable",
"price": "+ 0 €"
},
{
"text": "Entièrement remboursable avant le 1 oct.",
"price": "+ 219 €"
}
],
"wifi": "Accès Wi-Fi gratuit",
"people": "2 personnes",
"bedding": "1 grand lit",
"size": "30 m²"
},
{
"name": "River View SuitePolitique d’annulation",
"image": "https://images.trvl-media.com/lodging/79000000/78210000/78209000/78208919/286d9ed8.jpg?impolicy=fcrop&w=1200&h=800&p=1&q=medium",
"available": true,
"price": 2157,
"currency": "EUR",
"extras": [
{
"text": "Non remboursable",
"price": "+ 0 €"
},
{
"text": "Entièrement remboursable avant le 1 oct.",
"price": "+ 239 €"
}
],
"wifi": "Accès Wi-Fi gratuit",
"people": "2 personnes",
"bedding": "1 grand lit",
"size": "27 m²"
}
]
}
}Credits, failures and limits
| Case | Credits | Notes |
|---|---|---|
| Hotels request | 10 credits | Includes a premium proxy, applied automatically. |
| JavaScript rendering | Additional credits | Enable only when the target requires it. |
| Premium proxy | Additional credits | Use for targets that require a premium proxy. |
| Unsuccessful request | Not deducted | Only successful requests count towards the monthly limit. |
Booking & Travel API or Raw HTML scraper?
| Booking & Travel API | Raw HTML scraper | |
|---|---|---|
| Endpoint | /scrape/booking | /scrape/raw-html |
| Returns | Structured accommodation JSON | Rendered page HTML |
| Flow | One synchronous request | One synchronous request |
| Starting cost | from 1 credit / call | from 1 credit / call |
| Use it when | You need parsed accommodation fields | You need your own extraction logic |
Questions about the Hotels API
- Does the Hotels scraper access private data?
- No. This guide covers public accommodation pages and does not require signing in to a Hotels account.
- Are all fields always available?
- No. Returned data depends on what the public Hotels page exposes and what the extractor supports.
- Can I collect multiple pages at once?
- Each request takes one public URL. Submit one request per page you need to collect.
- When should I use a premium proxy?
- Use it only when a target requires it or when you need country targeting for a public page.
Source: ScrapingBot API documentation.
Other booking & travel scrapers
Browse the Booking & Travel category for the complete list of guides. Visit the ScrapingBot blog for implementation guides.
Trusted by developers using Booking & Travel data.
Customer reviews apply to ScrapingBot's service overall, not specifically to this scraper.
Start scraping Hotels today
500 free credits every month. No card required, cancel anytime.
