alliances
Airline alliance membership (Star Alliance, oneworld, SkyTeam) and cross-alliance booking relationships. Maps which loyalty…
TripAdvisor Content API for hotel ratings, restaurant search, attraction reviews, rankings, and nearby locations. Use when evaluating hotels or researching destinations. 5K calls/month.
$ npx -y skills add borski/travel-hacking-toolkit --skill tripadvisor --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/tripadvisorContext preview
The summary Claude sees to decide when to auto-load this skill.
TripAdvisor Content API for hotel ratings, restaurant search, attraction reviews, rankings, and nearby locations. Use when evaluating hotels or researching destinations. 5K calls/month.
name: tripadvisor description: TripAdvisor Content API for hotel ratings, restaurant search, attraction reviews, rankings, and nearby locations. Use when evaluating hotels or researching destinations. 5K calls/month. category: destinations summary: Hotel ratings, restaurant search, attraction reviews, nearby search. 5K calls/month. api_key: TripAdvisor license: MIT compatibility: opencode metadata: type: integration platform: any
Search and retrieve hotel, restaurant, and attraction data from TripAdvisor. Ratings, rankings, reviews, photos, amenities, subratings, trip types, awards.
**Base URL:** `https://api.content.tripadvisor.com/api/v1`
**Rate limit:** 50 calls per second.
**Monthly quota:** 5,000 API calls per month. Each curl request = 1 call. A full hotel lookup (search + details + reviews + photos) = 4 calls. Budget accordingly. Prefer search + details (2 calls) and only fetch reviews/photos when specifically needed.
**API limits:** Up to 10 results per search. Up to 5 reviews and 5 photos per location.
> **First-time setup gotcha:** TripAdvisor requires whitelisting your outbound IP at https://www.tripadvisor.com/developers before the key works. Without this, every call returns `User is not authorized to access this resource with an explicit deny`. This is the #1 first-time failure mode. **Whitelist before troubleshooting auth or quotas.** > > - **How to find your current IP:** `curl ifconfig.me` > - **Propagation:** changes take 1-5 minutes (AWS edge cache). > - **Multi-IP:** residential CGNAT, VPN exits, and different networks each need their own entry. > - **No Referer alternative:** the free tier requires IP whitelisting; HTTP Referer restriction is not available. > - **Verify which key is which:** the developer portal shows the last 4 chars only (e.g. "Ends in 11D7"), so you can confirm without exposing the secret.
Set `TRIPADVISOR_API_KEY` in your `.env` file:
# In .env (gitignored) TRIPADVISOR_API_KEY=your_key_here
Then source it before calling:
export $(grep TRIPADVISOR_API_KEY .env | xargs)
| Response | Meaning | Fix | |---|---|---| | `User is not authorized to access this resource with an explicit deny` | IP not on allowlist | Whitelist current IP at the developer portal, wait 1-5 min | | `Forbidden` / 403 with no body | Bad or expired key | Regenerate key | | `429 Too Many Requests` | Hit monthly quota (5,000 calls) | Wait until next month or upgrade tier |
Find locations by name. Returns up to 10 results.
curl -s "https://api.content.tripadvisor.com/api/v1/location/search?key=$TRIPADVISOR_API_KEY&searchQuery=NOFO+Hotel+Stockholm&category=hotels&language=en"
**Parameters:**
| Param | Required | Description | |-------|----------|-------------| | `searchQuery` | Yes | Text search query (name of hotel, restaurant, city) | | `category` | No | Filter: `hotels`, `restaurants`, `attractions`, `geos` | | `phone` | No | Phone number filter (any format, no leading +) | | `address` | No | Address filter | | `latLong` | No | Lat/long pair, e.g. `59.3127,18.0716` | | `radius` | No | Radius from latLong (number) | | `radiusUnit` | No | `km`, `mi`, or `m` | | `language` | No | Default `en`. Supports 40+ languages. |
**Response shape:**
{
"data": [
{
"location_id": "237656",
"name": "Nofo Hotel",
"address_obj": {
"street1": "Tjarhovsgatan 11",
"city": "Stockholm",
"country": "Sweden",
"postalcode": "116 21",
"address_string": "Tjarhovsgatan 11, Stockholm 116 21 Sweden"
}
}
]
}Get comprehensive info for a location by ID. This is the richest endpoint.
curl -s "https://api.content.tripadvisor.com/api/v1/location/{locationId}/details?key=$TRIPADVISOR_API_KEY&language=en¤cy=USD"**Parameters:**
| Param | Required | Description | |-------|----------|-------------| | `locationId` | Yes (path) | TripAdvisor location ID from search | | `language` | No | Default `en` | | `currency` | No | ISO 4217 code, default `USD` |
**Response includes:**
Get up to 5 most recent reviews.
curl -s "https://api.content.tripadvisor.com/api/v1/location/{locationId}/reviews?key=$TRIPADVISOR_API_KEY&language=en"**Parameters:**
| Param | Required | Description | |-------|----------|-------------| | `locationId` | Yes (path) | TripAdvisor location ID | | `language` | No | Default `en` | | `limit` | No | Number of results (max 5 on free tier) | | `offset` | No | Index of first result |
**Response shape:**
{
"data": [
{
"id": 123456,
"lang": "en",
"location_id": "237656",
"published_date": "2026-03-15T00:00:00-04:00",
"rating": 5,
"text": "Review text...",
"title": "Review title",
"trip_type": "Couples",
"travel_date": "2026-03",
"user": { "username": "traveler123" },
"subratings": {}
}AI-powered travel hacking with points, miles, and award flights. Drop-in skills and MCP servers for OpenCode, Claude Code, and Codex. Ask your AI to find you a 60,000-mile business class flight to Tokyo.
Airline alliance membership (Star Alliance, oneworld, SkyTeam) and cross-alliance booking relationships. Maps which loyalty…
Check American Airlines AAdvantage balance, elite status, and loyalty points via Patchright. Handles email 2FA with 6-box code…
Search Amex travel portal for cash prices, MR points pricing, IAP discounts, and FHR/THC hotel benefits via Patchright. Use when…
Search Atlas Obscura for weird, wonderful, and hidden gem places near any destination. Find the interesting stuff, not boring…
Find the cheapest award dates for a route over a date range. Searches seats.aero across all programs, groups by date, and shows a…
Per-program rules for placing award flights on hold before transferring points. Covers programs with holds (AA, Lufthansa, Flying…