POST /accommodations/search

This endpoint returns, by default, the cheapest available product for each accommodation that matches the specified search criteria.

When you apply location filters using parameters such as country or region id, the results are sorted by Booking.com popularity (top_picks) instead of price.
In this case, accommodations are ranked in descending order of popularity, meaning higher-ranked listings will appear earlier in the response.

Servers

Request headers

Name Type Required Description
Content-Type String Yes The media type of the request body.

Default value: "application/json"

X-Affiliate-Id Integer Yes

Include here your Affiliate identifier number

Request body fields

Name Type Required Description
accommodation_types[] Array No
booker Object Yes

The booker's information.

booker.platform String Yes

The booker platform for showing the platform based deals and prices.

Possible values:

  • "android"
  • "desktop"
  • "mobile"
  • "tablet"
  • "ios"
booker.travel_purpose String No

The travel purpose of the booker.

Possible values:

  • "business"
  • "leisure"
booker.user_groups[] Array No

The user groups that the booker is a member of.

booker.country String Yes

The booker country for showing the best price for that user and obeying laws regarding the display of taxes and fees.

booker.state String No

The booker state for showing the best price for that user and obeying laws regarding the display of taxes and fees. Currently applicable only for country US.

dormitories String No

This parameter specifies if the results should include dormitory beds or rooms. The default behaviour will include the dormitory beds or rooms with other results. When this flag is set to 'only', the response will only include dormitory beds or rooms. When this flag is set to 'exclude', the response will exclude dormitory beds or rooms. When this flag is set to 'include', the response will include dormitory beds or rooms with other results.

Possible values:

  • "only"
  • "include"
  • "exclude"

Default value: "include"

accommodation_facilities[] Array No
24_hour_reception Boolean No

Filter the result based if the front desk reception is available 24/7. When specified true, the result will filter the products where front desk is available 24/7.

rating Object No

The rating filter for the request

rating.minimum_review_score Integer No

Show only hotels with review_score >= that. Review score should be in the range 1 to 10.

rating.stars[] Array No

Limit to accommodations with the given number(s) of stars. Stars should be in the range of 1 to 5.

landmark Integer No

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.

currency String No

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.

city Integer No

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

checkin String Yes

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

country String No

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.

checkout String Yes

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.

price Object No

If specified, will return only results where the price per night falls in the specified range (inclusive). This filter requires that a currency is passed

price.minimum Integer No

Set the minimum price per night, in the specified currency, or omit to indicate no lower limit.

price.maximum Integer No

Set the maximum price per night, in the specified currency, or omit to indicate no upper limit.

region Integer No

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.

coordinates Object No

Limit the result list to the specified coordinates.

coordinates.longitude Number No

Specify a longitude (as well as a latitude and radius) to do searches around a specific location.

coordinates.radius Number No

The radius is km to search around the specified latitude and longitude.

coordinates.latitude Number No

Specify a latitude (as well as a longitude and radius) to do searches around a specific location.

airport String No

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.

travel_proud Boolean No

Filter the result based on if the property is LGBTQ+ friendly. When specified true, the result will filter and return only the accommodations that are Proud Certified.

sort Object No

The sorting parameters for the response

sort.direction String No

The direction you wish for your sort.by parameter to be sorted in

Possible values:

  • "ascending"
  • "descending"
sort.by String No

The way to sort your results. NOTE: When ordering by distance please make sure to specify the latitude and longitude!

Possible values:

  • "price"
  • "stars"
  • "review_score"
  • "distance"
cancellation_type String No

Filters the result for the cancellation type specified. Possible values are free_cancellation & non_refundable. If cancellation_type is free_cancellation, the result will contain all the products with free_cancellation.

Possible values:

  • "non_refundable"
  • "free_cancellation"
payment Object No

The payment filter for the request

payment.timing String No

This parameter specifies that the results should only return accommodation and blocks that contain the specified payment timings.

Possible values:

  • "pay_at_the_property"
  • "pay_online"
payment.credit_card_required Boolean No

Filter to show accommodations which require credit card

meal_plan String No

Filter the result based on the selected meal plan. Example: When specified breakfast_included, it will show the product with free breakfast.

Possible values:

  • "full_board"
  • "half_board"
  • "breakfast_included"
  • "all_inclusive"
brands[] Array No
page String No

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

extras[] Array No

Input parameter to request for additional information about the products.

accommodations[] Array No
guests Object Yes

The guest details for the request.

guests.number_of_rooms Integer Yes

The number of rooms needed.

guests.allocation[] Array No

The exact allocation of guests to rooms.

guests.allocation[].number_of_adults Integer Yes

The number of adults for this room.

guests.allocation[].children[] Array No

The children ages for this room.

guests.number_of_adults Integer Yes

The number of adults for the search.

guests.children[] Array No

Array with the children ages.

room_facilities[] Array No
district Integer No

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.

rows Integer No

The maximum number of results to return.

Default value: 100

How to start integrating

  1. Add HTTP Task to your workflow definition.
  2. Search for the API you want to integrate with and click on the name.
    • This loads the API reference documentation and prepares the Http request settings.
  3. Click Test request to test run your request to the API and see the API's response.