TRAVELWEBAI API MCP READY

Tripadvisor API

Search Tripadvisor for hotels, restaurants and attractions to get ratings, review counts and locations, then pull the full review thread for any place with trip type, trip date, helpful votes and author details. Ten regional domains, no proxies and no login.

RECORDS3
MEDIAN LAGon demand
PARAMETERS6
TOTAL USERS1
TOTAL RUNS21
RATINGno ratings yet
LAST MODIFIED2026-08-08
PUBLISHED2026-08

Input parameters

PARAMETERTYPEREQDEFAULTDESCRIPTION
search_mode enum yes search search finds places by keyword and returns the placeId values; reviews pulls the full review thread for one place.
query string no Required in search mode. A keyword such as 'hotels in paris' or 'seafood restaurants boston'.
place_id string no Required in reviews mode. The numeric placeId from any search-mode row.
place_types string[] no Optional filter in search mode. ACCOMMODATION, EATERY or ATTRACTION. Empty returns every type.
max_results integer no 100 Rows to return before stopping. Search returns 30 places per upstream call, reviews 10, and paging is automatic. — drives your bill
tripadvisor_domain enum no www.tripadvisor.com Regional domain, which sets the language and currency of the results.

Worked examples

Find places — keyword search, cheap first run
{
  "search_mode": "search",
  "query": "hotels in paris",
  "max_results": 10
}
Pull reviews — placeId comes from any search row
{
  "search_mode": "reviews",
  "place_id": "143336",
  "max_results": 50
}
Restaurants only — filter the place type
{
  "search_mode": "search",
  "query": "seafood restaurants boston",
  "place_types": ["EATERY"],
  "max_results": 30
}
German site — regional domain sets language and currency
{
  "search_mode": "search",
  "query": "hotels in berlin",
  "tripadvisor_domain": "www.tripadvisor.de"
}
POWER-USER TIP
Place detail is deliberately absent — There is no place-detail mode, because the upstream place endpoint is broken. Address, phone number and opening hours are not available from this source. Search rows still carry rating, review count and location, which covers most of what a detail lookup would have given you.
POWER-USER TIP
Reviews cost three times a place — A place row is billed at a third of a review row, because one upstream call returns 30 places but only 10 reviews. Run search first to pick the exact places you care about, then pull reviews only for those.

Coverage

10
regional domains — com · co.uk · ca · com.au · in · de · fr · es · it · com.br
3
place types — accommodation · eatery · attraction
17
fields per review — rating text trip type trip date votes author +

Tasks

Saved runs with the inputs already filled in — each one a standalone page and a working configuration example.

Request a task →

Code

curl

curl -X POST "https://api.apify.com/v2/acts/johnvc~tripadvisor-api/run-sync-get-dataset-items" \
  -H "Authorization: Bearer $APIFY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"search_mode":"search","query":"hotels in paris","max_results":10}'

Python

from apify_client import ApifyClient

client = ApifyClient("APIFY_TOKEN")
run = client.actor("johnvc/tripadvisor-api").call(
    run_input={"search_mode": "search", "query": "hotels in paris", "max_results": 10}
)
for place in client.dataset(run.default_dataset_id).iterate_items():
    print(place.get("title"), place.get("rating"), place.get("reviewCount"), place.get("placeId"))

What people use it for

Alternatives