Booking.com

Booking.com Scraper API

Real-time Booking.com data — hotel search, property details, and guest reviews. All data is scraped directly from Booking.com and returned as structured JSON.

3 Endpoints REST API JSON 99.9% Uptime

Try it instantly

See real data shapes from every endpoint — no signup required.

Request
GET /booking/search
location Paris required
checkin 2026-04-15 required
checkout 2026-04-18 required
adults 2
rooms 1
page 1
currency USD
curl -G "https://api.pullapi.com/booking/search" \
  -H "x-rapidapi-key: YOUR_API_KEY"
Response 200 OK
{
  "success": true,
  "data": {
    "location": "Paris",
    "page": 1,
    "total_results": 1842,
    "has_next_page": true,
    "hotel_count_on_page": 25,
    "hotels": [
      {
        "name": "Hotel Le Marais",
        "url": "https://www.booking.com/hotel/fr/le-marais-paris.html",
        "rating": 8.7,
        "review_count": 3245,
        "price": 189,
        "price_text": "US$189",
        "original_price": 245,
        "address": "12 Rue de Rivoli, 4th arr., 75004 Paris",
        "distance": "0.3 km from centre",
        "thumbnail": "https://cf.bstatic.com/xdata/images/hotel/square200/12345678.webp",
        "room_type": "Superior Double Room",
        "free_cancellation": true,
        "deal": "Early 2026 Deal",
        "badge": "Wonderful"
      }
    ]
  },
  "credits_used": 1,
  "cache_hit": false,
  "timestamp": "2026-03-15T12: 00: 00+00: 00"
}

API Endpoints

3 endpoints across 3 categories.

Search

GET /booking/search

Search for hotels and accommodations on Booking.com by location, check-in/check-out dates, and guest count. Returns paginated results with pricing, ratings, and availability info.

Parameters

Name Type Required Description Example
location string Yes Search location — can be a city name, address, landmark, or region. Examples: "Paris", "Times... Paris
checkin string Yes Check-in date in YYYY-MM-DD format. Must be today or a future date. 2026-04-15
checkout string Yes Check-out date in YYYY-MM-DD format. Must be after the check-in date. 2026-04-18
adults integer No Number of adult guests (1-30) 2
rooms integer No Number of rooms (1-30) 1
page integer No Page number for paginated results (starts at 1) 1
currency string No Currency code for prices. Examples: USD, EUR, GBP, JPY, CAD, AUD USD

Example Response

{
  "success": true,
  "data": {
    "location": "Paris",
    "page": 1,
    "total_results": 1842,
    "has_next_page": true,
    "hotel_count_on_page": 25,
    "hotels": [
      {
        "name": "Hotel Le Marais",
        "url": "https://www.booking.com/hotel/fr/le-marais-paris.html",
        "rating": 8.7,
        "review_count": 3245,
        "price": 189,
        "price_text": "US$189",
        "original_price": 245,
        "address": "12 Rue de Rivoli, 4th arr., 75004 Paris",
        "distance": "0.3 km from centre",
        "thumbnail": "https://cf.bstatic.com/xdata/images/hotel/square200/12345678.webp",
        "room_type": "Superior Double Room",
        "free_cancellation": true,
        "deal": "Early 2026 Deal",
        "badge": "Wonderful"
      }
    ]
  },
  "credits_used": 1,
  "cache_hit": false,
  "timestamp": "2026-03-15T12: 00: 00+00: 00"
}

Property

GET /booking/property

Get full details for a Booking.com property including description, amenities, highlights, photos, ratings by category, and location score. Requires a valid Booking.com property URL.

Parameters

Name Type Required Description Example
url string Yes Full Booking.com property URL. Example: https://www.booking.com/hotel/fr/le-marais-paris.html https://www.booking.com/hotel/fr/le-marais-paris.html

Example Response

{
  "success": true,
  "data": {
    "name": "Hotel Le Marais",
    "url": "https://www.booking.com/hotel/fr/le-marais-paris.html",
    "description": "Set in the heart of the historic Marais district, this charming hotel offers elegant rooms with free Wi-Fi and air conditioning. The Louvre Museum is a 10-minute walk away.",
    "address": "12 Rue de Rivoli, 4th arr., 75004 Paris, France",
    "country": "France",
    "rating": 8.7,
    "rating_text": "Excellent",
    "best_rating": 10.0,
    "review_count": 3245,
    "price_range": "$$$",
    "location_score": 9.4,
    "amenities": [ "Free WiFi", "Air conditioning", "24-hour front desk", "Non-smoking rooms", "Room service", "Bar", "Breakfast"
    ],
    "highlights": [ "Perfect for a 2-night stay!", "Top location: Highly rated by recent guests (9.4)", "Breakfast info: Continental, Buffet"
    ],
    "photos": [ "https://cf.bstatic.com/xdata/images/hotel/max1024x768/12345678.jpg", "https://cf.bstatic.com/xdata/images/hotel/max1024x768/12345679.jpg", "https://cf.bstatic.com/xdata/images/hotel/max1024x768/12345680.jpg"
    ],
    "category_ratings": {
      "Staff": 9.1,
      "Facilities": 8.5,
      "Cleanliness": 9.0,
      "Comfort": 8.8,
      "Value for money": 8.2,
      "Location": 9.4,
      "Free WiFi": 8.9
    }
  },
  "credits_used": 1,
  "cache_hit": false,
  "timestamp": "2026-03-15T12: 00: 00+00: 00"
}

Reviews

GET /booking/reviews

Get guest reviews for a Booking.com property including individual review scores, positive/negative comments, reviewer info, trip type, and room details. Results are paginated.

Parameters

Name Type Required Description Example
url string Yes Booking.com property URL. The same URL used for the property details endpoint. https://www.booking.com/hotel/fr/le-marais-paris.html
page integer No Page number for paginated results (starts at 1) 1

Example Response

{
  "success": true,
  "data": {
    "property_name": "Hotel Le Marais",
    "overall_rating": 8.7,
    "total_reviews": 3245,
    "page": 1,
    "has_next_page": true,
    "review_count_on_page": 10,
    "category_ratings": {
      "Staff": 9.1,
      "Facilities": 8.5,
      "Cleanliness": 9.0,
      "Comfort": 8.8,
      "Value for money": 8.2,
      "Location": 9.4,
      "Free WiFi": 8.9
    },
    "reviews": [
      {
        "rating": 9.2,
        "title": "Amazing stay in the heart of Paris",
        "positive": "Beautiful room with a view of the courtyard. Staff was incredibly helpful and friendly. Breakfast was excellent with fresh pastries.",
        "negative": "The elevator was quite small, but manageable.",
        "reviewer_name": "Sarah",
        "reviewer_country": "United States",
        "date": "March 2026",
        "trip_type": "Couple",
        "room_type": "Superior Double Room",
        "nights": 3
      },
      {
        "rating": 7.5,
        "title": "Good location, decent hotel",
        "positive": "Location is unbeatable. Walking distance to major attractions. Room was clean and comfortable.",
        "negative": "Street noise at night. Air conditioning was a bit noisy.",
        "reviewer_name": "Marco",
        "reviewer_country": "Italy",
        "date": "February 2026",
        "trip_type": "Solo traveller",
        "room_type": "Standard Single Room",
        "nights": 2
      }
    ]
  },
  "credits_used": 1,
  "cache_hit": false,
  "timestamp": "2026-03-15T12: 00: 00+00: 00"
}

Code Examples

Get started in seconds with your preferred language.

Terminal
curl -G "https://api.pullapi.com/booking/search?location=Paris&checkin=2026-04-15&checkout=2026-04-18" \
  -H "x-rapidapi-host: booking-scraper-api.p.rapidapi.com" \
  -H "x-rapidapi-key: YOUR_API_KEY"

Why PullAPI

</>

No Browser Needed

HTTP-based API. No Selenium, no Puppeteer, no headless browsers to manage.

Built-in Proxy Rotation

Automatic residential proxy rotation handles anti-bot detection for you.

Cached Responses

Smart Redis caching means faster repeated queries and lower costs.

$

Pay Per Request

No monthly commitment. Free tier included. Pay only for what you use.

Use Cases

What developers build with the Booking.com Scraper API.

1

Rate Monitoring

2

Competitive Intelligence

3

Review Aggregation

4

Demand Forecasting

Related Scrapers

More APIs in Travel & Hospitality.

Ready to scrape Booking.com data?

Start with the free tier. No credit card required.

Subscribe on RapidAPI →