Booking.com Search

https://api.sandbase.ai/v1/api/booking/search

Search Booking.com properties by destination and dates, with property name, price, rating, review score, address and photos.

Price
$0.01USD / call
Method
POST
Response
JSON
Parameters
1 required · 22 optional

Playground

Input
Parameter defines the destination to search for: a city, a region, a district, a landmark, or an airport (e.g., `Paris`, `Tuscany`, `Manhattan`, or `Eiffel Tower`). Booking.com doesn't return results for most street addresses.
Parameter defines the language to use for the Booking.com search (e.g., `en-us` (default) for English (US), `fr` for French, or `pt-br` for Portuguese (Brazil)). Head to the Booking.com languages page for a full list of supported languages.
Parameter defines the currency of the returned prices. It defaults to `hotel_currency`, the currency of each property (e.g., `EUR` in Paris), returned in `currency` of each property. Head to the Booking.com currencies page for a full list of supported currency codes.
Parameter defines the check-in date. The format is **YYYY-MM-DD** (e.g., `2026-12-12`). It must be used together with `check_out_date`. When dates aren't set, Booking.com returns properties without prices.
Parameter defines the check-out date. The format is **YYYY-MM-DD** (e.g., `2026-12-15`). It must be used together with `check_in_date`, and be up to 90 nights later than it.
Parameter defines how many days the check-in and check-out dates can move, earlier or later, for the best price of each property. Each property then has the dates of its price in `check_in_date` and `check_out_date`. It must be used together with `check_in_date` and `check_out_date`. Available options: `1` - ± 1 day `2` - ± 2 days `3` - ± 3 days `7` - ± 7 days
Parameter defines the number of adults, from `1` to `30`. It defaults to `2`.
Parameter defines the number of children, from `0` (default) to `10`. Their ages must be set with `children_ages`.
Parameter defines the age of each child at check-out, from `0` to `17`. It's a comma-separated list of ages (e.g., `5` for one child, or `5,9` for two children). When `children` isn't set, it's the number of ages.
Parameter defines the number of rooms, from `1` (default) to `30`. It can't be greater than the number of `adults`.
Parameter defines the sorting of the results. It defaults to `popularity` (Our top picks). Available options: `popularity` - Our top picks `upsort_bh` - Homes & apartments first `price` - Price (lowest first) `price_from_high_to_low` - Price (highest first) `review_score_and_price` - Best reviewed & lowest price `bayesian_review_score` - Top reviewed `class` - Property rating (high to low) `class_asc` - Property rating (low to high) `class_and_price` - Property rating and price `distance_from_search` - Distance from downtown `closest_beach_distance_v2` - Distance from closest beach `closest_sk
Parameter defines the minimum price per night, in the currency of the results (e.g., `100`). It must be used together with a `currency` code.
Parameter defines the maximum price per night, in the currency of the results (e.g., `300`). It must be used together with a `currency` code.
Parameter defines the property ratings to show: stars for hotels, or Booking.com's own rating for homes and apartments. It's a comma-separated list of ratings from `1` to `5` (e.g., `4,5` for 4 and 5-star properties).
Parameter defines the minimum review score of the properties. Available options: `9` - Wonderful: 9+ `8` - Very Good: 8+ `7` - Good: 7+ `6` - Pleasant: 6+
Parameter defines whether to only show properties with free cancellation. It can be set to `true` or `false` (default).
Parameter defines the property types to show. It's a comma-separated list of property type IDs (e.g., `204` for hotels, or `201,220` for apartments and vacation homes). Head to the Booking.com property types page for a full list of supported property types.
Parameter defines any other Booking.com filters, like amenities, meals, districts, brands, or distance from the center. It's the value of the `nflt` parameter of Booking.com search URLs: a semicolon-separated list of filters (e.g., `hotelfacility=107;mealplan=1;di=2286`). The filters available for a search, with their values, are in `filters` of the results.
Parameter defines the result offset. It skips the given number of results. It's used for pagination. (e.g., `0` (default) is the first page of results, `25` is the 2nd page of results with the default `limit`, etc.). It can be up to `1000`: Booking.com returns the same properties for larger offsets, even when it finds more properties.
Parameter defines the maximum number of results to return, from `1` to `100`. It defaults to `25`, like on Booking.com. Booking.com sometimes returns a few more properties: sponsored ones, or the searched property.
Parameter defines the token that keeps the same Booking.com visitor between searches. Booking.com ranks properties differently for each visitor, so without it, the next pages can repeat properties of the previous ones. It's returned in `the API_pagination.session_token`, and the links of `the API_pagination` already include it.
Parameter defines the device to use to get the results. It can be set to `desktop` (default) to use a regular browser, `tablet` to use a tablet browser (currently using iPads), or `mobile` to use a mobile browser.
Parameter defines the fields you want to include in the output, reducing payload size for faster response. See the JSON Restrictor documentation for more details.
OutputReady

Your output will appear here

Complete the inputs, then click Run.

API README

Booking.com Search

Search Booking.com properties by destination and dates, with property name, price, rating, review score, address and photos.

Request

curl -X POST "https://api.sandbase.ai/v1/api/booking/search" \
  -H "Authorization: Bearer $SANDBASE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"q": "Austin"}'

The result is returned in outputs[0].data as structured JSON.

Parameters

NameTypeRequiredDescription
qstringYesParameter defines the destination to search for: a city, a region, a district, a landmark, or an airport (e.g., Paris, Tuscany, Manhattan, or Eiffel Tower). Booking.com doesn't return results for most street addresses.
hlstringNoParameter defines the language to use for the Booking.com search (e.g., en-us (default) for English (US), fr for French, or pt-br for Portuguese (Brazil)). Head to the Booking.com languages page for a full list of supported languages.
currencystringNoParameter defines the currency of the returned prices. It defaults to hotel_currency, the currency of each property (e.g., EUR in Paris), returned in currency of each property. Head to the Booking.com currencies page for a full list o
check_in_datestringNoParameter defines the check-in date. The format is YYYY-MM-DD (e.g., 2026-12-12). It must be used together with check_out_date. When dates aren't set, Booking.com returns properties without prices.
check_out_datestringNoParameter defines the check-out date. The format is YYYY-MM-DD (e.g., 2026-12-15). It must be used together with check_in_date, and be up to 90 nights later than it.
flex_windowstringNoParameter defines how many days the check-in and check-out dates can move, earlier or later, for the best price of each property. Each property then has the dates of its price in check_in_date and check_out_date. It must be used togethe
adultsstringNoParameter defines the number of adults, from 1 to 30. It defaults to 2.
childrenstringNoParameter defines the number of children, from 0 (default) to 10. Their ages must be set with children_ages.
children_agesstringNoParameter defines the age of each child at check-out, from 0 to 17. It's a comma-separated list of ages (e.g., 5 for one child, or 5,9 for two children). When children isn't set, it's the number of ages.
roomsstringNoParameter defines the number of rooms, from 1 (default) to 30. It can't be greater than the number of adults.
sort_bystringNoParameter defines the sorting of the results. It defaults to popularity (Our top picks). Available options: popularity - Our top picks upsort_bh - Homes & apartments first price - Price (lowest first) price_from_high_to_low - Pric
min_pricestringNoParameter defines the minimum price per night, in the currency of the results (e.g., 100). It must be used together with a currency code.
max_pricestringNoParameter defines the maximum price per night, in the currency of the results (e.g., 300). It must be used together with a currency code.
hotel_classstringNoParameter defines the property ratings to show: stars for hotels, or Booking.com's own rating for homes and apartments. It's a comma-separated list of ratings from 1 to 5 (e.g., 4,5 for 4 and 5-star properties).
ratingstringNoParameter defines the minimum review score of the properties. Available options: 9 - Wonderful: 9+ 8 - Very Good: 8+ 7 - Good: 7+ 6 - Pleasant: 6+
free_cancellationstringNoParameter defines whether to only show properties with free cancellation. It can be set to true or false (default).
property_typesstringNoParameter defines the property types to show. It's a comma-separated list of property type IDs (e.g., 204 for hotels, or 201,220 for apartments and vacation homes). Head to the Booking.com property types page for a full list of supporte
nfltstringNoParameter defines any other Booking.com filters, like amenities, meals, districts, brands, or distance from the center. It's the value of the nflt parameter of Booking.com search URLs: a semicolon-separated list of filters (e.g., `hotelfa
offsetstringNoParameter defines the result offset. It skips the given number of results. It's used for pagination. (e.g., 0 (default) is the first page of results, 25 is the 2nd page of results with the default limit, etc.). It can be up to 1000:
limitstringNoParameter defines the maximum number of results to return, from 1 to 100. It defaults to 25, like on Booking.com. Booking.com sometimes returns a few more properties: sponsored ones, or the searched property.
session_tokenstringNoParameter defines the token that keeps the same Booking.com visitor between searches. Booking.com ranks properties differently for each visitor, so without it, the next pages can repeat properties of the previous ones. It's returned in `the
devicestringNoParameter defines the device to use to get the results. It can be set to desktop (default) to use a regular browser, tablet to use a tablet browser (currently using iPads), or mobile to use a mobile browser.
json_restrictorstringNoParameter defines the fields you want to include in the output, reducing payload size for faster response. See the JSON Restrictor documentation for more details.

Pricing

$0.010 per successful call. Failed calls are not charged.

Explore more

Related APIs

All APIs
APIPriceResponse
Booking.com$0.01 per callJSON

Questions

FAQ

How do I use the Booking.com Search API?

Send a POST request to https://api.sandbase.ai/v1/api/booking/search with your SandBase API key in the Authorization header (Bearer) and the parameters as a JSON body. You can also try it in the Playground on this page without writing code.

How much does the Booking.com Search API cost?

$0.01 per call, billed from your SandBase balance. You are only charged for calls you make; there is no subscription.

What parameters does the Booking.com Search API accept?

Required: q (string). Optional: hl (string), currency (string), check_in_date (string), check_out_date (string), flex_window (string) and adults (string) and 16 more. The Parameters table and the Playground on this page list every field.

What does the Booking.com Search API return?

A JSON response returned in the same HTTP request (synchronous).

Do I need a Booking.com developer account or API key?

No. Booking.com Search runs through SandBase, so one SandBase API key covers this endpoint and every other API and model in the catalog. You do not need to apply for Booking.com API access separately.