Tripadvisor API
Place lookup, ranked restaurants, hotels and attractions for any destination, rating histograms with per-aspect scores, and full review text — each a single POST returning structured JSON. No partner agreement required.
50 free credits on signup, covering 25 Tripadvisor calls. No card.
{ "data": { "query": "Austin", "count": 8, "results": [ { "pos": 1, "type": "GEO", "name": "Austin, Texas, United States", "geo_id": "30196", "location_id": null, "url": "https://www.tripadvisor.com/Tourism-g30196-Austin_Texas-Vacations.html", "latitude": 30.267223, "longitude": -97.742546, "category": "Destinations" } ] }, "response_time": 1710, "credits_used": 2, "credits_remaining": 4718}Live call against the real endpoint — 2 free runs, then it's your own key.
What is the Scavio Tripadvisor API?
The Scavio Tripadvisor API is a REST API that returns public Tripadvisor data as structured JSON. You resolve a place name to a geo_id or location_id, then send that to one of 3 further POST endpoints with your API key to get ranked listings, full location detail with rating histograms and per-aspect scores, or pages of full reviews.
- 4
- endpoints, all live in production
- 2
- credits per call, above the 1-credit norm
- 5
- bucket rating histogram
Start here, then pick a lens
Resolve the place once; listings, scores and reviews all key on that id.
Find place
POST /api/v1/tripadvisor/locationsStart here. Turns a place or business name into the geo_id or location_id every other endpoint keys on — those ids exist only inside Tripadvisor.
Listings in a geo
POST /api/v1/tripadvisor/searchRestaurants, hotels or attractions for a geo, in Tripadvisor's own ranking rather than a re-sort — the order is itself the data.
Location detail
POST /api/v1/tripadvisor/locationOne place in full, with the five-bucket review histogram and per-aspect scores for things like service, value and cleanliness.
Reviews
POST /api/v1/tripadvisor/reviewsFull review text with both the published date and the trip date — the gap between them matters when you are reading seasonal complaints.
All 4 Tripadvisor endpoints
Every route is a POST, returns JSON, and takes the same API key. Tripadvisor is priced at 2 credits per successful call.
| Endpoint | Returns | Credits |
|---|---|---|
Find place (start here)/api/v1/tripadvisor/locations | A place or business NAME to its geo_id / location_id | 2 |
Listings in a geo/api/v1/tripadvisor/search | Restaurants, hotels or attractions in Tripadvisor's own ranking | 2 |
Location detail/api/v1/tripadvisor/location | Rating with the five-bucket histogram and per-aspect scores | 2 |
Reviews/api/v1/tripadvisor/reviews | Title, full text, rating, published date and trip date | 2 |
50 free credits on signup covers 25 Tripadvisor calls. See plans
Name to ranked listings in two calls
Resolve the geo, then read what is ranked there. The response on the right is a real capture, field names and all.
from scavio import ScavioClient
client = ScavioClient(api_key="sk_live_your_key")
# Step 1: name -> geo_id (nothing else works without it)
hits = client.tripadvisor.locations(query="Austin")
geo = hits["data"]["results"][0]["geo_id"]
# Step 2: what is ranked there - 2 credits
places = client.tripadvisor.search(geo_id=geo, category="restaurants"){
"data": {
"query": "Austin",
"count": 8,
"results": [
{
"pos": 1,
"type": "GEO",
"name": "Austin, Texas, United States",
"geo_id": "30196",
"location_id": null,
"url": "https://www.tripadvisor.com/Tourism-g30196-Austin_Texas-Vacations.html",
"latitude": 30.267223,
"longitude": -97.742546,
"category": "Destinations"
}
]
},
"response_time": 1710,
"credits_used": 2,
"credits_remaining": 4718
}Why not the Tripadvisor Content API?
It exists, it is partner-gated, and it caps the review access most reputation work needs.
Tripadvisor Content API
- Requires an approved partner agreement before any access
- Review retrieval is limited, with strict display and attribution rules
- No open self-serve path for a developer evaluating the data
- Coverage scoped to what the agreement grants rather than the public site
Scavio Tripadvisor API
- One API key, issued at signup — no agreement, no approval
- Full review text with both published and trip dates
- Rating histogram and per-aspect scores on location detail
- Same key and JSON envelope as 30 other Scavio platforms
Scavio returns publicly available listing and review data only, and never authenticates as a Tripadvisor user.
What developers build with it
Hospitality reputation monitoring
Track your property's rating histogram and per-aspect scores over time, and read the reviews driving a move in any one of them rather than guessing from an average.
locations + location + reviewsCompetitive set benchmarking
Pull the ranked listings for a geo and compare your position and per-aspect scores against the properties you actually compete with, in Tripadvisor's own order.
search + locationDestination content at scale
Build a things-to-do or where-to-eat page for any city from real ranked listings with ratings, refreshed on a schedule instead of hand-curated once and left to rot.
locations + searchSeasonal complaint analysis
Reviews carry both a published date and a trip date. Grouping by trip date rather than post date is what separates a genuine summer problem from a backlog of late reviews.
reviewsAgent tools for travel
Point an agent at the MCP server and Tripadvisor becomes a callable tool — what is good here, what do reviewers complain about — with one key.
MCP + RESTHow to get Tripadvisor data as JSON
- 1
Get an API key
Sign up for a Scavio account and copy your key from the dashboard. You get 50 credits free on signup, with no card required and no Tripadvisor partner agreement.
- 2
Resolve the name to a geo_id
Send {"query": "Austin"} to https://api.scavio.dev/api/v1/tripadvisor/locations. It returns geo_id for destinations and location_id for individual businesses; every other endpoint keys on one of those, so this call comes first.
- 3
Then search, detail or reviews
Each is 2 credits. Search takes a geo_id plus a category; location detail and reviews take a location_id. The response wraps the payload under data with credits_used and credits_remaining.
Tripadvisor API FAQ
What is the Scavio Tripadvisor API?
+
It is a REST API that returns public Tripadvisor data as structured JSON. Four POST endpoints cover place lookup by name, ranked listings for a geo, full location detail with rating histogram and per-aspect scores, and pages of full reviews. You authenticate with a Scavio API key.
Who are these endpoints for?
+
Hotels and restaurants monitoring their own reputation; developers building travel features; AI agent builders wiring Tripadvisor in as an MCP or SDK tool; automation engineers running alerts inside n8n, Zapier or Make; travel media building destination pages; and analysts benchmarking hospitality markets. Same API for all of them.
Why do I have to call /locations first?
+
Because Tripadvisor keys everything on its own geo_id and location_id, and neither can be derived from a place name, address or coordinates. Resolving the name is genuinely step one rather than a convenience wrapper.
What is the difference between geo_id and location_id?
+
geo_id identifies a destination — a city, region or country — and is what the search endpoint takes. location_id identifies an individual business such as a hotel or restaurant, and is what location detail and reviews take. The lookup returns whichever applies, with a type field saying which.
How is this different from the Tripadvisor Content API?
+
Tripadvisor's own Content API is partner-gated, requires an approved commercial agreement, and limits how many reviews you may retrieve and how they must be displayed. This needs no agreement and returns full review pages.
How much does a Tripadvisor request cost?
+
Every Tripadvisor endpoint costs 2 credits, above the 1-credit norm on most Scavio platforms. New accounts get 50 free credits on signup, so 25 Tripadvisor calls. Paid plans start at $30 per month for 7,000 credits.
Do reviews include per-aspect scores?
+
Location detail carries the five-bucket rating histogram and per-aspect scores. Individual reviews carry title, full text, rating, published date and trip date, which is what you need to attribute a score move to a period.
What does the response look like?
+
The API wraps the payload under a data key and adds credits_used and credits_remaining. The lookup returns results with pos, type, name, geo_id, location_id, url, latitude, longitude and category.
Which languages and tools are supported?
+
Official Python (pip install scavio) and JavaScript/TypeScript (npm i scavio) SDKs, a remote MCP server at mcp.scavio.dev for AI agents, and an n8n community node. Any language can call the REST endpoints directly with an HTTP client.
Is scraping Tripadvisor data legal?
+
Scavio returns publicly available listing and review data and does not authenticate as a user. Reviews are written by individuals, so privacy and republication considerations apply. Talk to your own counsel for your specific use case.
Explore more of Scavio
Booking.com API
Property search, rates and guest reviews.
Airbnb API
Stays, the price ledger and review bodies.
Google Hotels API
Properties and vendor rates.
Yelp API
Local search, histograms and full reviews.
MCP server
Every platform as a callable tool for agents.
Pricing
Credit packs and plans, no per-platform surcharge.
Start pulling Tripadvisor data today
50 free credits on signup, no card. Your first request is a POST with a place name.