Wire it up. See the schema.
- 100 free requests on signup
- Every endpoint included
- No credit card required
- Same schema as paid
A quick demo might save your team weeks of engineering work.
Resources
Free Tools
Pull guest reviews, ratings, multi-provider prices, search results, and property details from TripAdvisor as clean JSON.
curl "https://api.stayapi.com/v1/tripadvisor/search" \ -G \ -H "x-api-key: $STAYAPI_KEY" \ -d "geo_id=293916" \ -d "check_in=2026-06-18" \ -d "check_out=2026-06-20" \ -d "adults=2" \ -d "rooms=1" \ -d "limit=10" \ -d "sort=BEST_VALUE"
curl "https://api.stayapi.com/v1/tripadvisor/hotel/details/8622290" \ -G \ -H "x-api-key: $STAYAPI_KEY"
curl "https://api.stayapi.com/v1/tripadvisor/hotel/prices/305165" \ -G \ -H "x-api-key: $STAYAPI_KEY" \ -d "check_in=2026-06-18" \ -d "check_out=2026-06-20" \ -d "adults=2" \ -d "rooms=1" \ -d "currency=USD"
curl "https://api.stayapi.com/v1/tripadvisor/hotel/reviews/305165" \ -G \ -H "x-api-key: $STAYAPI_KEY" \ -d "page=1" \ -d "per_page=10"
{
"success": true,
"geo_id": 293916,
"hotels": [
{
"location_id": 8950960,
"name": "Hotel Clover Asoke",
"rating": 4.5,
"review_count": 2345,
"price": {
"minimum": 85,
"maximum": 210
},
"property_type": "HOTEL",
"neighborhood": "Asoke",
"merchandising_labels": [
"Travellers' Choice"
]
}
]
}
{
"success": true,
"location_id": 8622290,
"data": {
"name": "Cassia Phuket",
"url": "/Hotel_Review-g2400063-d8622290-Reviews-Cassia_Phuket.html",
"phone": "00 66 76 356 999",
"coordinates": {
"latitude": 8.000494,
"longitude": 98.29666
},
"address": "64-64/1 Moo 4, Bang Tao Beach, Choeng Thale, Phuket 83110 Thailand",
"place_type": "ACCOMMODATION",
"special_offer": {
"heading": "25% off plus family perks!",
"details": "Take a family trip with 25% off and kids stay and dine for free. Room includes breakfast."
}
}
}
{
"success": true,
"location_id": 305165,
"pricing_summary": {
"lowest_price": "$140",
"pricing_complete": true,
"has_member_rates": false
},
"available_offers": [
{
"provider": "Priceline",
"price_per_night": "$140",
"total_stay_price": "$304",
"is_lowest_price": true,
"rooms_remaining": 2,
"taxes_value": 13
},
{
"provider": "Booking.com",
"price_per_night": "$173",
"total_stay_price": "$380",
"is_lowest_price": false,
"taxes_value": 17
}
]
}
{
"success": true,
"location_id": 305165,
"total_count": 336,
"reviews": [
{
"id": 874521963,
"rating": 5,
"title": "Exceptional luxury hotel with outstanding service",
"text": "From the moment we arrived, we were treated like royalty. The staff went above and beyond.",
"language": "en",
"published_date": "2026-04-10",
"helpful_votes": 8,
"user": {
"display_name": "Sarah M",
"hometown": "London, UK",
"contribution_count": 47
},
"trip_info": {
"stay_date": "2026-03-15",
"trip_type": "COUPLES"
}
}
],
"pagination": {
"page": 1,
"per_page": 10,
"total_pages": 34,
"has_next": true
}
}
Trusted by hospitality teams at
TripAdvisor has no open data API for the reviews, ratings, and competing rates that revenue and product teams actually need. The usual answer is a scraping stack: headless browsers, rotating proxies, GraphQL replays, and a parser that breaks every time the page changes.
StayAPI is that layer, run for you. You send a location_id or a TripAdvisor URL and get structured JSON back: review text and bubble ratings, prices from Priceline, Booking.com, Agoda and other providers side by side, search results by destination, and the full property profile. The same data, the same shape, on every call.
x-api-key in, JSON out. Reviews, ratings, prices, search, and details behind one base URL. No SDK to install.
Fetching, parsing, GraphQL handling, and proxy rotation are ours. You consume normalized JSON and never touch a headless browser.
Every call hits TripAdvisor live, so ratings, review counts, and provider prices are current to the request, not a stale nightly snapshot.
Each returns normalized JSON in the same shape. Click any endpoint for parameters, an example response, and a live playground.
The same endpoints, pointed at different jobs. These are the ones we see most.
Stream new TripAdvisor reviews into your dashboard, ordered most-recent-first, and run sentiment or topic clustering on the text and trip types.
Track a property's bubble rating and review count over time, and benchmark them against the comp set using the same fields for every hotel.
Pull TripAdvisor's multi-provider prices per date and compare Priceline, Booking.com, Agoda and others against your own rate to catch parity slips.
Power a search experience with live TripAdvisor inventory by destination, dates, price range, and rating, sorted by best value or traveler ranking.
Resolve a destination to its geo_id, pull every hotel in it, and score rank, rating, and price across the whole market in one pass.
Feed structured TripAdvisor reviews and provider prices into an LLM tool call so your agent answers from live data, not stale embeddings.
Flat monthly plans, every endpoint included on every plan. 1 request = 1 credit. No per-endpoint multipliers, no surprise overages.
Wire it up. See the schema.
Kick the tires in production.
Small prod workloads and growing apps.
Daily pulls in production.
Above 100k / month, annual terms, white-glove onboarding.
Every plan ships every endpoint. Same uptime, same schema, same response time.
Don't see your question? Email us at info@stayapi.com.
TripAdvisor runs a Content API for licensed partners, but it is gated, contract-bound, and not built for pulling full review text, ratings history, or competing provider rates. StayAPI gives you that data over plain REST with a key you get in 30 seconds.
Call /v1/tripadvisor/hotel/reviews/{location_id} (or resolve the ID from a URL with location/extract-id). You get paginated review text, ratings, trip type, reviewer profile, and stay dates as JSON, most recent first. See the reviews endpoint docs.
Yes. Search and details return the property's bubble rating and review_count, and each review carries its own rating plus category scores for value, service, and cleanliness. Track them per call to benchmark a hotel against its comp set.
It is the numeric ID TripAdvisor uses for a hotel, the number after d in a hotel URL (for example 305165 in /Hotel_Review-g1224250-d305165-...). Pass it to details, prices, and reviews. Don't have one? Use location/extract-id or the -from-url endpoints to skip the lookup.
You get 100 free requests on signup, every endpoint included, no credit card. After that it is flat monthly plans starting at $49. One request equals one credit, with no per-endpoint multipliers.
Both end with live TripAdvisor data in your stack. The fast path is on the left.
100 free requests after sign up. Fastest way to see if the schema fits.
Start free15 minutes. Volume + endpoint mix. Walk out with a quote.
Book a demo