Irmu
Travel & Places

Booking.com API

Hotel rates, availability, taxes and cancellation terms by market.

Start freeGET https://app.irmu.com/api/crawl20 credits
Why

Why teams scrape Booking.com

Booking.com holds some of the most commercially useful public data on the web, and almost none of it is available through a stable official feed at the volume real products need. Rate limits, partner-only access and shifting page structures mean teams either give up on the source or maintain a fragile scraper that breaks every few weeks.

Hotel rates differ by point of sale, currency, device and loyalty status. Collecting them correctly requires reproducing the exact search context — not just fetching a URL.

Irmu removes the infrastructure question entirely. One authenticated request handles proxy selection, browser rendering, anti-bot challenges and retries, and AI Extract turns the resulting page into validated JSON against a schema you define. You get hotel_name, price_total, price_per_night, currency, taxes_fees, rating, free_cancellation, rooms_left, location without writing or maintaining a single selector, and the same endpoint, quota and observability model you already use for every other source.

Use cases

What it powers

  • Rate parity monitoring

    Detect where OTAs undercut your direct rate.

  • Compset benchmarking

    Track competitor pricing by date and occupancy.

  • Demand forecasting

    Use rate and scarcity movement as a demand proxy.

  • Channel audits

    Verify inventory and content across markets.

Data

Fields available

Everything below comes back typed and validated against your schema.

hotel_name

Property name

price_total

Total stay price

price_per_night

Nightly rate

currency

Point-of-sale currency

taxes_fees

Disclosed taxes and fees

rating

Guest review score

free_cancellation

Cancellation policy flag

rooms_left

Scarcity indicator

location

District and coordinates

Request

One call, no selectors

request.sh
curl -G https://app.irmu.com/api/crawl \
  -H "Authorization: Bearer $IRMU_API_KEY" \
  --data-urlencode "url=https://www.booking.com/searchresults.html?ss=Lisbon&checkin=2026-10-02&checkout=2026-10-05" \
  --data-urlencode "premium=true" \
  --data-urlencode "ai_query=Extract hotel_name, price_total, price_per_night, currency, taxes_fees, rating as JSON"
Response

Validated JSON

response.json
{
  "url": "https://www.booking.com/searchresults.html?ss=Lisbon&checkin=2026-10-02&checkout=2026-10-05",
  "domain": "www.booking.com",
  "premium": true,
  "js": true,
  "ai_query": "Extract hotel_name, price_total, price_per_night, currency, taxes_fees, rating as JSON",
  "credits_charged": 20,
  "status": "completed",
  "data": {
    "hotel_name": "Hotel Baixa",
    "price_total": 486,
    "currency": "EUR",
    "rating": 8.7,
    "free_cancellation": true
  },
  "error": null
}
SDKs

Copy, paste, ship

import os, requests

res = requests.get(
    "https://app.irmu.com/api/crawl",
    params={
        "url": "https://www.booking.com/searchresults.html?ss=Lisbon&checkin=2026-10-02&checkout=2026-10-05",
        "premium": "true",
        "ai_query": "Extract hotel_name, price_total, price_per_night, currency as JSON",
    },
    headers={"Authorization": f"Bearer {os.environ['IRMU_API_KEY']}"},
)

print(res.json()["data"])
Pricing

Simple credits

Per search result page

20 credits

Requests we fail to serve for internal reasons, or to domains we do not cover, are not billed.

See full pricing →
FAQ

Booking.com API questions

Start extracting Booking.com data today

200 free credits every month. No card, no sales call.