Skip to content

Accommodation

This collection includes endpoints related to stays within the connected trip experience.
Use these endpoints to:
- Search for hotels, apartments, and other accommodation types.
- Check real-time availability and pricing.
- Retrieve property details and guest reviews.

Search

Request

Use this endpoint to search for accommodations that match your specified criteria.
By default, the response returns the cheapest available product for each accommodation.

When applying location filters such as country or region, results are ranked by Booking.com popularity (top picks) rather than price, with higher-ranked listings appearing first.

Security
BearerAuth
Headers
X-Affiliate-Idintegerrequired

Include here your Affiliate identifier number

Bodyapplication/json
accommodationsArray of integers, <= 100 items
airportstring(airportId)^[A-Z]{3}$

A three-letter code that uniquely identifies an airport as defined by the International Air Transport Association (IATA). The full list can be obtained by calling common/locations/airports.

Example:"AMS"
bookerobject(Booker)required

The booker's information.

checkinstring, (date)(checkin)required

The checkin date. Must be within 500 days in the future and in the format yyyy-mm-dd.

checkoutstring, (date)(checkout)required

The checkout date. Must be later than {checkin}. Must be between 1 and 90 days after {checkin}. Must be within 500 days in the future and in the format yyyy-mm-dd.

cityinteger(cityId)

A signed integer number that uniquely identifies a city. The full list can be obtained by calling common/locations/cities.

coordinatesobject(AccommodationsSearchCoordinatesOutput)

Limit the result list to the specified coordinates.

countrystring(countryId)^[a-z]{2}$

A two-letter code that uniquely identifies a country. This code is defined by the ISO 3166-1 alpha-2 standard (ISO2) as described here: https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2. The full list can be obtained by calling common/locations/countries.

Example:"nl"
currencystring or null(currencyId)^[A-Z]{3}$

A three-letter code that uniquely identifies a monetary currency as defined by the ISO 4217 standard. The full list can be obtained by calling common/payments/currencies.

Example:"EUR"
districtinteger, >= 1(districtId)

A signed integer number that uniquely identifies a district. Typically, districts define known areas within a city. The full list can be obtained by calling common/locations/districts.

extrasArray of strings(extras)

Input parameter to request for additional information about the products.

Items Enum:"extra_charges""products"
filtersobject

Filter criteria for the search results

guestsobject(AccommodationsGuests)required

The guest details for the request.

landmarkinteger, >= 1(landmarkId)

A signed integer number that uniquely identifies a relevant geographical landmark, like a monument or a natural attraction. The full list can be obtained by calling common/locations/landmarks.

pagestring(page)

Pagination token used to retrieve the next page of results. Obtained from next_page.

regioninteger, >= 1(regionId)

A signed integer number that uniquely identifies a geographical region. Regions usually define official administrative areas within a country, but may also include multiple countries and in some cases un-official but popular designations for geographical areas. An example of a region that crosses multiple countries is the Alps in Europe. The full list can be obtained by calling common/locations/regions.

rowsinteger, multiple of 10, [ 10 .. 100 ](maximumResults)

The maximum number of results to return.

Default:100
sortobject

The sorting parameters for the response

curl -i -X POST \
  https://demandapi.booking.com/3.2/accommodations/search \
  -H 'Authorization: Bearer <YOUR_string_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'X-Affiliate-Id: 0' \
  -d '{
    "booker": {
      "country": "nl",
      "platform": "desktop"
    },
    "checkin": "!START_DATE!",
    "checkout": "!END_DATE!",
    "city": -2140479,
    "extras": [
      "extra_charges",
      "products"
    ],
    "guests": {
      "number_of_adults": 2,
      "number_of_rooms": 1
    }
  }'

Responses

Successful response.

Bodyapplication/json
request_idstring(requestId)

Uniquely identifies the request. Please provide this identifier when contacting support.

dataArray of objects(AccommodationsSearchDataOutput)
metadataobject(MetadataOutput)
Response
{ "request_id": "01fr9ez700exycb98w90w5r9sh", "data": [ {}, "..." ], "metadata": { "next_page": "..." } }