Skip to content

Attractions

Use these endpoints to search for and retrieve attractions, activities, and experience details.

Search attractions

Request

Use this endpoint to search for attractions based on a single search criterion, such as attraction IDs, cities, countries, geographic coordinates, or points of interest.

Security
BearerAuth
Headers
X-Affiliate-Idintegerrequired

Include here your Affiliate identifier number

Bodyapplication/json
One of:

Search for specific attractions by their IDs. Results are limited to the specified attractions.

attractionsArray of strings, [ 1 .. 100 ] itemsrequired

IDs of the attractions to search for. The response includes attractions that match the requested IDs. IDs that do not match an attraction are ignored and do not cause an error. If none of the requested IDs match an attraction, the endpoint returns HTTP 200 with an empty data array.

Example:
[ "PR0dwCIbnsiU", "AFd2wcIjMauX" ]
citiesany
coordinatesany
countriesany
points_of_interestany
currencystring(currencyId-2)[A-Z]{3}required

A three-letter ISO 4217 currency code that defines the currency used for pricing in the response, for example: EUR or USD. n/See common/payments/currencies for the full list of supported currencies.

Example:"EUR"
datesobject(datesInput)required

Date range used to search for attraction availability. Both dates must fall within the 180-day booking window, starting today.

Example:
{ "start_date": "2026-09-18", "end_date": "2026-09-20" }
filtersobject(filtersInput)

Optional filters to narrow down attraction search results.

pagestring

Pagination token used to retrieve the next page of results. Omit this parameter on the first request and use the value returned in metadata.next_page for subsequent pages.

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

The maximum number of results to return.

Default:20
Example:50
sortobject(sort)

Sorting options that control the order of the search results.

Example:
{ "by": "most_popular" }
curl -i -X POST \
  https://demandapi.booking.com/3.3/attractions/search \
  -H 'Authorization: Bearer <YOUR_string_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'X-Affiliate-Id: 0' \
  -d '{
    "currency": "EUR",
    "attractions": [
      "PR0dwCIbnsiU",
      "AFd2wcIjMauX"
    ],
    "dates": {
      "start_date": "2026-09-18",
      "end_date": "2026-09-20"
    },
    "rows": 50,
    "sort": {
      "by": "most_popular"
    }
  }'

Responses

Successful response.

Bodyapplication/json
dataArray of objects(attraction)
metadataobject(MetadataOutput)

Metadata about the request.

request_idstring(requestId)

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

Response
{ "data": [ { … }, { … }, { … } ], "metadata": { "next_page": "eyJhbGciOiJIUzI1NiJ9.eyJwIjp7ImN1cnJlbmN5IjoiRVVSIiwicXVlcnkiOnsiY291bnRyaWVzIjpbIm5sIiwiZnIiXSwiY29vcmRpbmF0ZXMiOnsibGF0aXR1ZGUiOjUyLjM3LCJsb25naXR1ZGUiOjQuOTAsIm1heF9kaXN0YW5jZV9rbSI6MTAwLjAwfSwic3RhcnRfZGF0ZSI6IjIwMjUtMDktMjEiLCJlbmRfZGF0ZSI6IjIwMjUtMDktMjIiLCJzdXBwb3J0ZWRfbGFuZ3VhZ2VzIjpbIm5sIl0sIm1pbl9yYXRpbmciOjQuMDAsIm1pbl9yZXZpZXdfY291bnQiOjV9LCJvcmRlcl9ieSI6Im1hdGNoX3Njb3JlIiwicGFnZV9udW1iZXIiOjJ9LCJhdWQiOiIvYXR0cmFjdGlvbnMvc2VhcmNoIiwiZXhwIjoxNzU3Mzc0MzI0fQ.JUU7kbuwiCaS4n_SZANA577BvZWdqDDQizU8q6fTrg0", "total_results": 128 }, "request_id": "01fr9ez700exycb98w90w5r9sh" }