Skip to content

Guide

Booking.com API key: how to get one, and the price

Published September 1, 2026 · Updated October 18, 2026

Short answer: Booking.com's own APIs sit behind an agreement: the Demand API is for Managed Affiliate Partners, whose access comes from a Booking.com account manager after a signed contract, and the Connectivity APIs are for software that manages properties on Booking.com. If you just need live Booking.com rates as JSON, FlightPowers' Booking Live API on RapidAPI gives you a key today with no approval: PRO is $10 for 2,000 searches, with a free tier of 10. It is a hotel data API, not a booking engine.

Most people who search for a Booking.com API key want one of two things: to sell Booking.com stays inside their own product, or to read Booking.com prices. Booking.com's developer portal serves the first group, under contract. The second group usually does not need a contract at all, just the data. This page covers both, so you can tell which one you are in before you fill in a form.

How does official Booking.com API access work?

Booking.com's developer portal (developers.booking.com, read on 2026-10-06) lists four API families, and each has its own door:

  • Demand API. For partners who show Booking.com stays, cars and attractions to their own audience, from "search, look and redirect" up to "search, look and book". Its prerequisites page asks you to be "Registered as a Booking.com Managed Affiliate Partner", with "Access to Partner Centre (provided by your Booking.com Account Manager after signing the agreed contract)". The API key and your X-Affiliate-Id are generated in Partner Centre.
  • Connectivity APIs. For channel managers and property software: they "enable property owners to manage their properties on Booking.com using your site or software". Rates, availability and reservations for properties you manage, not market prices.
  • Metasearch Connect API. It "enables metasearch providers to integrate Booking.com's inventory into their products".
  • Data Portability API. For moving a user's own Booking.com data into your application, with their authorisation.

The Demand API, the one most travel apps and agents mean when they ask for "the Booking.com API", needs the affiliate agreement first. That is not a criticism: these are partner programmes, built for companies that sell or manage stays.

How to integrate booking.com API?

If you are a Managed Affiliate Partner, integration follows Booking.com's own checklist: generate the API key and X-Affiliate-Id in Partner Centre, try the endpoints in the portal's sandbox console, then build the flow you agreed on (redirect or book). If you are not a partner and want live prices, you integrate a hosted API instead: one HTTP request with a key, and the answer is JSON. The rest of this page is that second path.

When you cannot get access: live rates on a RapidAPI key

The Booking Live API runs live searches on Booking.com for you and returns the result as JSON. You subscribe on RapidAPI and the key is usable the same minute: no partner agreement, no traffic minimum, no account manager. What you get back on every call:

  1. Live rates and availability for a destination search, or for one property by name
  2. The room type the rate is for, the review score and count, and the property's map position
  3. A link that opens the property on Booking.com with your dates filled in
  4. proxy_country on every endpoint, which prices the stay as a visitor from another market

What you do not get: bookings, payments, or Booking.com's commission. If your product has to complete the reservation itself, you need the Demand API. If it has to show, watch or compare prices, this is the shorter road. How to tell a reliable rates API from a stale one, and when another provider fits better, is in the Booking.com API alternative; the comparison with every other hotel data API, prices quoted and dated, is in the best hotel data APIs in 2026.

Step 1: Sign up for RapidAPI

If you don't have a RapidAPI account:

  1. Go to the Booking Live API listing
  2. Click Sign Up (top right)
  3. Sign up with email, Google, or GitHub
  4. Confirm your email if required

RapidAPI is a marketplace for APIs. One account works across every API they host. The free tier requires no credit card.

Step 2: Subscribe to the Booking Live API

Open the Pricing tab on the listing. The four plans, re-read from the live listing by a script that fails loudly when a number drifts:

PlanPrice a monthRequests a month
BASIC$010, hard cap, no card
PRO$102,000
ULTRA$306,500
MEGA$7525,000

Start with BASIC to check your integration, then move up when the volume is real. You are subscribed immediately.

Step 3: Get your API key

After subscribing, your X-RapidAPI-Key appears in the code examples on the listing's Endpoints tab. Copy it. If you already subscribed to the Google Flights Live API, it is the same key: one RapidAPI key, several subscriptions.

Step 4: Make your first request

A hotel search in London, run on 2026-10-06 through api.flightpowers.com (the same endpoint is POST /search on booking-live-api.p.rapidapi.com):

curl -X POST https://api.flightpowers.com/v1/hotels/search \
  -H "Content-Type: application/json" \
  -H "x-api-key: YOUR_RAPIDAPI_KEY" \
  -d '{
    "destination": "London",
    "checkin_date": "2026-11-18",
    "checkout_date": "2026-11-21",
    "adults": 2,
    "currency": "GBP"
  }'

The answer is a JSON object with your search echoed back and a properties array, 15 entries in this run. The first one, with its two long URLs cut at the ?:

{
  "name": "Modern 4-bd Fulham House by West Brompton Station",
  "price_string": "£1,797",
  "price": 1797,
  "review_score": 9.5,
  "review_count": 20,
  "room_type": "Vacation Home",
  "location": null,
  "image_url": "https://cf.bstatic.com/xdata/images/hotel/square240/781140892.webp",
  "link": "https://www.booking.com/hotel/gb/modern-4-bd-fulham-house-by-west-brompton-station.html",
  "nights": 3,
  "adults": 2,
  "children": null,
  "latitude": 51.4862067,
  "longitude": -0.1986217,
  "retrieved_at": "2026-10-06T20:01:26.029Z"
}

price is the total for the three nights, not a nightly rate. Result order follows Booking.com's own ranking and changes between identical searches, so never treat row 1 as "the price of London".

What makes this API different: proxy_country

proxy_country sends the request through a residential proxy in another market, so you see the rate Booking.com quotes a visitor from that country. Add "proxy_country": "de" to the body and you get the German view; "jp" gives the Japanese one.

That is the basis of rate-parity monitoring, with one rule that matters more than the parameter: ask each market several times. Rates can move between identical requests, so one reading per market cannot tell a market gap from ordinary movement.

# German view: repeat this a few times, not once
curl ... -d '{"hotel_name": "Suite della Pigna", "area": "Rome", "proxy_country": "de", ...}'
# Japanese view: the same number of repeats
curl ... -d '{"hotel_name": "Suite della Pigna", "area": "Rome", "proxy_country": "jp", ...}'

A repeat-sampled run on that exact hotel, with the numbers, is in do hotel prices change by country?, and the scheduled version in how to monitor hotel rate parity.

What are the four endpoints?

POST /search (/v1/hotels/search on api.flightpowers.com). Search by destination, dates and guests. Returns properties with price, room type, reviews and a link, with 24 filters documented on the listing.

POST /hotel_by_name (/v1/hotels/by-name). One specific hotel by the name a person would type, plus area for generic names. Returns the headline rate and matched_name, so you can check what the name resolved to.

POST /resolve (/v1/hotels/resolve). Turns a name into a Booking.com hotel_booking_id, once, so you can cache it.

POST /hotel (/v1/hotels/rooms). Every room type and rate plan for one hotel_booking_id, each with its own price.

Every endpoint accepts proxy_country. The last three, with full real responses, are in hotel rates API: every room price for one hotel by name.

Next steps

Build something:

Read the docs:

Compare alternatives:

FAQs

Is there an official Booking.com API? Yes, several, all behind an agreement: the Demand API for Managed Affiliate Partners, the Connectivity APIs for property software, and the Metasearch Connect API for metasearch providers.

How much does it cost? The free BASIC tier is 10 requests a month with no credit card. PRO is $10 a month for 2,000 requests. Current plans are on /pricing.

Can I book hotels through the API? No. This is a data API, not a booking API. Every result includes a link that opens that property on Booking.com, where the guest completes the reservation.

What about Expedia or Hotels.com? Expedia Group's APIs are separate and partner-based too. This API reads Booking.com only.

Does the free tier expire? No. BASIC resets monthly and stays free. 10 requests a month verifies an integration; it is not sized for production, and /pricing says so.

Why would I use this instead of the official API? Two reasons: you are not a Managed Affiliate Partner and need prices now, or you need proxy_country to see another market's rate. If you are a partner and need bookings inside your own product, the Demand API is the right choice.

Get your key and test it in 2 minutes

BASIC plan is free and requires no credit card. Test geo-pricing with proxy_country, read the real rates, then scale to PRO when ready.

Free tier: 10 requests/month. No card to try.

Docs: the Flights API and the MCP servers.