{
  "info": {
    "_postman_id": "b6f1c0de-5a1e-4c7a-9d2e-0a7b3c4d5e61",
    "name": "TripAdvisor API",
    "description": "**Get your API key:** subscribe on RapidAPI at [https://rapidapi.com/DataCrawlLabs/api/tripadvisor35](https://rapidapi.com/DataCrawlLabs/api/tripadvisor35). Your key is shown there as `X-RapidAPI-Key`.\n\nSend your key in the `X-RapidAPI-Key` header. Outside this page, RapidAPI also needs `X-RapidAPI-Host: tripadvisor35.p.rapidapi.com`.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "item": [
    {
      "name": "Common",
      "item": [
        {
          "name": "The languages the texts can be returned in.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/common/languages",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "common",
                "languages"
              ],
              "variable": [],
              "query": []
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The languages you can send as `languageCode` to any endpoint.\n\n**Response**\n\n- `data.languages[].code` is the value to send as `languageCode`."
          }
        },
        {
          "name": "The currencies prices can be shown in.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/common/currencies",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "common",
                "currencies"
              ],
              "variable": [],
              "query": [
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The currencies you can send as `currencyCode` to any endpoint.\n\n**Response**\n\n- `data.majorCurrencies[]` are the main currencies.\n- `data.minorCurrencies[]` are the other currencies.\n- Each currency has its `code`, `name` and `symbol`."
          }
        },
        {
          "name": "Short previews of up to 10 places in one call.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/common/previews",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "common",
                "previews"
              ],
              "variable": [],
              "query": [
                {
                  "key": "items",
                  "value": "hotel:99332,restaurant:543689",
                  "disabled": false,
                  "description": "Comma list of `type:id`, e.g. `hotel:99332,restaurant:543689`.\n\n**Maximum 10 places per call.**"
                },
                {
                  "key": "currencyCode",
                  "value": "USD",
                  "disabled": false,
                  "description": "Currency of the prices, **3 letters** like `EUR`. The list is `GET /common/currencies`.\n\nDefault: `USD`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "One preview screen for each place you ask for, in the order you asked.\n\n**Notes**\n\n- Send at most 10 places per call. More than 10 returns `status: false` with a validation message.\n- One call to TripAdvisor returns one preview screen per requested place."
          }
        },
        {
          "name": "Whether the server is up.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/common/server-status",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "common",
                "server-status"
              ],
              "variable": [],
              "query": []
            },
            "auth": {
              "type": "noauth"
            },
            "description": "Tells you whether the server is up.\n\n**Response**\n\n- `data.server` is `online` when the server answers.\n- `data.timestamp` is the server time."
          }
        }
      ]
    },
    {
      "name": "Search",
      "item": [
        {
          "name": "About 10 suggestions grouped under headings: places, \"hotels in ...\", hotels, restaurants, tours. Each says where it leads.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/search/autocomplete",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "search",
                "autocomplete"
              ],
              "variable": [],
              "query": [
                {
                  "key": "query",
                  "value": "new york",
                  "disabled": false,
                  "description": "The text typed, e.g. `new york`.\n\n**Empty:** nearby places and recent searches."
                },
                {
                  "key": "latitude",
                  "value": "48.8566",
                  "disabled": false,
                  "description": "The user's position, **sent together with `longitude`** (both or neither). Makes the suggestions favour places near it.\n\nRange: `-90` to `90`."
                },
                {
                  "key": "longitude",
                  "value": "2.3522",
                  "disabled": false,
                  "description": "The user's position, **sent together with `latitude`**.\n\nRange: `-180` to `180`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "Suggestions while the user types. It works from the first letter.\n\n**Response**\n\n- Every result has a `route` with `page` and `params`. They are the inputs of the next endpoints:\n  - `AppList` with `{contentType, geoId}` is a list of a place (hotels, restaurants, things to do).\n  - `AppDetail` with `{contentId, contentType}` is one hotel, restaurant or tour.\n  - `AppSearch` with `{query}` is a full search.\n\n**Position** (`latitude` and `longitude`, send both or neither)\n\n- Suggestions favour places near the position. `query=hotel` in Paris suggests Paris hotels, in Tokyo Tokyo hotels.\n- It also adds a \"near me\" entry (group `Near you`). Its route holds your position, for `/places/nearby`.\n- Without a position the suggestions are not tied to the user.\n- An empty `query` returns only the \"Explore nearby\" entry, and needs a position."
          }
        },
        {
          "name": "Everything that matches a text, grouped (places, hotels, restaurants, things to do, tours), with tabs and \"show more\".",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/search/results",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "search",
                "results"
              ],
              "variable": [],
              "query": [
                {
                  "key": "query",
                  "value": "new york",
                  "disabled": false,
                  "description": "The text to search, e.g. `new york`."
                },
                {
                  "key": "updateToken",
                  "value": "",
                  "disabled": true,
                  "description": "Already set for you inside `next.params` of a tab or of `nextPage`.\n\n**You never build it:** just follow `next`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "A full search, with the results grouped under headers.\n\n**Response**\n\n- `groups[]` are the result groups.\n- Every result has a `next`, the call that opens it: `/hotels/details`, `/restaurants/details`, `/attractions/details`, `/tours/details` or `/places/overview`.\n- `tabs[]` is the category bar: All Results, Destinations, Hotels, Things to Do, Restaurants, Forums.\n- `currentTab` names the selected tab.\n\n**How the tabs work**\n\n- Exactly one tab has `selected: true`. The `groups[]` of the same answer are the results of that tab, so you already have them.\n- Every other tab has a `next`. Call it (it is this same endpoint, with your `query` and the tab's token already filled in) to get that tab's results.\n- The selected tab has `next: null` because you are already on it. That is not an error. To leave it, call the `next` of any other tab.\n- On a first search the selected tab is always All Results, the top matches of every category. After you open Hotels, All Results gets a `next` that takes you back.\n\n**More results**\n\n- Inside a category tab, `nextPage` (\"Show more\") has a `next` that returns the following 10 results. Keep calling the `nextPage.next` of each answer until `nextPage` is `null`.\n- On All Results `nextPage` is always `null` and `hint` says so. TripAdvisor's own \"Show more\" on that tab returns the same ten results again, so it is not offered. Open a category tab to see more.\n\n**Notes**\n\n- You never need to read or copy a token. Only follow `next`. The `updateToken` parameter is how that call carries it.\n- A token belongs to the query it came from."
          }
        }
      ]
    },
    {
      "name": "Home",
      "item": [
        {
          "name": "The place a position is in, shortcuts, and rows of ideas such as getaways and top-rated hotels.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/home",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "home"
              ],
              "variable": [],
              "query": [
                {
                  "key": "latitude",
                  "value": "40.7128",
                  "disabled": false,
                  "description": "Latitude, `-90` to `90`."
                },
                {
                  "key": "longitude",
                  "value": "-74.006",
                  "disabled": false,
                  "description": "Longitude, `-180` to `180`."
                },
                {
                  "key": "currencyCode",
                  "value": "USD",
                  "disabled": false,
                  "description": "Currency of the prices, **3 letters** like `EUR`. The list is `GET /common/currencies`.\n\nDefault: `USD`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                },
                {
                  "key": "waitForComplete",
                  "value": "true",
                  "disabled": true,
                  "description": "- `true` (default): unfinished screens (prices still loading) are polled until complete, so one call may use several provider calls.\n- `false`: return the first answer as it is."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "Ideas for a start page, for a position.\n\n**Response**\n\n- `data.place` is the place the position is in. Its `geoId` goes into the `/places` endpoints.\n- `data.links` are shortcuts such as \"Things to do in Paris\".\n- `data.shelves[]` are rows with a title. Each row is a list of cards with the same keys:\n  - `type`: `geo`, `hotel`, `restaurant`, `attraction` or `attraction_product`\n  - `title`, `rating`, `texts`, `badge`, `photo`, `saved`\n  - `description`, for example \"From $28 / adult\"\n  - `route`, the next call\n\n**Notes**\n\n- Some rows follow the position (weekend getaways), others are worldwide picks."
          }
        }
      ]
    },
    {
      "name": "Places",
      "item": [
        {
          "name": "The place id and name for a GPS position.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/places/locate",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "places",
                "locate"
              ],
              "variable": [],
              "query": [
                {
                  "key": "latitude",
                  "value": "40.7128",
                  "disabled": false,
                  "description": "Latitude, `-90` to `90`."
                },
                {
                  "key": "longitude",
                  "value": "-74.006",
                  "disabled": false,
                  "description": "Longitude, `-180` to `180`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The place a position is in, with its `geoId`."
          }
        },
        {
          "name": "Hotels, things to do and restaurants of a place as rows of cards, forum topics, a map and filters.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/places/overview",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "places",
                "overview"
              ],
              "variable": [],
              "query": [
                {
                  "key": "geoId",
                  "value": "60763",
                  "disabled": false,
                  "description": "Place id, taken from `link.route.params.geoId` in the `/search` results."
                },
                {
                  "key": "currencyCode",
                  "value": "USD",
                  "disabled": false,
                  "description": "Currency of the prices, **3 letters** like `EUR`. The list is `GET /common/currencies`.\n\nDefault: `USD`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                },
                {
                  "key": "updateToken",
                  "value": "",
                  "disabled": true,
                  "description": "The `updateToken` of a tab, of `nextPage`, or of an unfinished screen from the previous answer.\n\n**Copy it from `next.params`**, do not build it."
                },
                {
                  "key": "waitForComplete",
                  "value": "true",
                  "disabled": true,
                  "description": "- `true` (default): unfinished screens (prices still loading) are polled until complete, so one call may use several provider calls.\n- `false`: return the first answer as it is."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The overview page of a place.\n\n**Parameter notes**\n\n- Take `geoId` from the `route.params` of the `/search` results.\n- The tabs carry `updateToken`s.\n\n**Response**\n\n- `data.results[]` are the places (hotels, restaurants, tours ...), each with `id`, `title`, `rating{value, reviewCount}`, `price`, `photos[]`, `labels[]`, `links[]`, `map{latitude, longitude, rankingText}` and `next`, the call that opens it.\n- Lists with several shelves (overview, restaurants, things to do) put them in `data.sections[]`.\n- `data.sort` has the selected order and all options.\n- `data.filters` is the filter menu and `data.appliedFilters` what was applied.\n- `data.dates` has the date limits and a price calendar.\n- `data.nextPage.next` is the call for the next page.\n- `data.ignoredFilters` lists the filters you asked for that TripAdvisor did not apply. If none could be applied, the answer is an error that lists the valid ids and values."
          }
        },
        {
          "name": "Hotels with rating, area, price and provider for your dates, sort options, filters, map pins and the next page.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/places/hotels",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "places",
                "hotels"
              ],
              "variable": [],
              "query": [
                {
                  "key": "geoId",
                  "value": "60763",
                  "disabled": false,
                  "description": "Place id, taken from `link.route.params.geoId` in the `/search` results."
                },
                {
                  "key": "checkIn",
                  "value": "2026-12-10",
                  "disabled": false,
                  "description": "Check-in day, `YYYY-MM-DD`.\n\nDefault: 30 days from today."
                },
                {
                  "key": "checkOut",
                  "value": "2026-12-11",
                  "disabled": false,
                  "description": "Check-out day, `YYYY-MM-DD`.\n\nDefault: the day after check-in. **At most 30 nights.**"
                },
                {
                  "key": "adults",
                  "value": "",
                  "disabled": true,
                  "description": "Adults in the room, `1` to `4` (TripAdvisor limit per room).\n\n**Needed when `children` is sent.** For more rooms use `rooms`."
                },
                {
                  "key": "children",
                  "value": "",
                  "disabled": true,
                  "description": "Ages of the children in the room, `0` to `17`, comma separated, at most 10, e.g. `5,7`.\n\n**Needs `adults`.**"
                },
                {
                  "key": "rooms",
                  "value": "2:5,7;1",
                  "disabled": false,
                  "description": "Several rooms, written `adults:childAges` per room and rooms separated by `;`.\n\nExample: `2:5,7;1` = room 1 with two adults and children aged 5 and 7, room 2 with one adult.\n\nAt most 8 rooms. **Cannot be combined with `adults` / `children`.**"
                },
                {
                  "key": "sort",
                  "value": "",
                  "disabled": true,
                  "description": "Sort id from `GET /places/filters` (`contentType=hotel`):\n\n- `BEST_VALUE`\n- `POPULARITY`\n- `PRICE_LOW_TO_HIGH`\n- `DISTANCE_FROM_CITY_CENTER`\n\nAn id the list does not have is **ignored**: the list stays in Best value order."
                },
                {
                  "key": "filters",
                  "value": "class:9566",
                  "disabled": false,
                  "description": "Filters written `id:value1,value2;id2:value`.\n\nThe filter ids and their values are listed in `data.filters` of the list itself (or `GET /places/filters`).\n\nIf **none** of the filters could be applied, the answer is an error that lists the valid ones."
                },
                {
                  "key": "currencyCode",
                  "value": "USD",
                  "disabled": false,
                  "description": "Currency of the prices, **3 letters** like `EUR`. The list is `GET /common/currencies`.\n\nDefault: `USD`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                },
                {
                  "key": "updateToken",
                  "value": "",
                  "disabled": true,
                  "description": "The `updateToken` of a tab, of `nextPage`, or of an unfinished screen from the previous answer.\n\n**Copy it from `next.params`**, do not build it."
                },
                {
                  "key": "waitForComplete",
                  "value": "true",
                  "disabled": true,
                  "description": "- `true` (default): unfinished screens (prices still loading) are polled until complete, so one call may use several provider calls.\n- `false`: return the first answer as it is."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The hotels of a place, with rating, area, price and provider for your dates.\n\n**Parameter notes**\n\n- Prices need dates and guests. Unfinished price screens are polled and merged, so the cards carry prices.\n- `currencyCode` sets the price currency.\n- `adults` (1-4), `children` (ages) or `rooms` set the party the prices are for.\n- `sort` sets the order. Sort ids and filter ids come from `/places/filters`.\n\n**Response**\n\n- `data.results[]` are the places (hotels, restaurants, tours ...), each with `id`, `title`, `rating{value, reviewCount}`, `price`, `photos[]`, `labels[]`, `links[]`, `map{latitude, longitude, rankingText}` and `next`, the call that opens it.\n- Lists with several shelves (overview, restaurants, things to do) put them in `data.sections[]`.\n- `data.sort` has the selected order and all options.\n- `data.filters` is the filter menu and `data.appliedFilters` what was applied.\n- `data.dates` has the date limits and a price calendar.\n- `data.nextPage.next` is the call for the next page.\n- `data.ignoredFilters` lists the filters you asked for that TripAdvisor did not apply. If none could be applied, the answer is an error that lists the valid ids and values."
          }
        },
        {
          "name": "Restaurants in named rows, filters and map pins.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/places/restaurants",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "places",
                "restaurants"
              ],
              "variable": [],
              "query": [
                {
                  "key": "geoId",
                  "value": "60763",
                  "disabled": false,
                  "description": "Place id, taken from `link.route.params.geoId` in the `/search` results."
                },
                {
                  "key": "partySize",
                  "value": "",
                  "disabled": true,
                  "description": "People at the table, `1` to `20`."
                },
                {
                  "key": "fullList",
                  "value": "false",
                  "disabled": true,
                  "description": "- `true`: the flat list of every place with sorting and paging (what \"View all\" opens).\n- `false` (default): the overview page of shelves such as Top attractions. Its \"View all\" links already carry `fullList=true`.\n\nNot needed with `filters` or for tours."
                },
                {
                  "key": "filters",
                  "value": "cuisine:9908",
                  "disabled": false,
                  "description": "Filters written `id:value1,value2;id2:value`.\n\nThe filter ids and their values are listed in `data.filters` of the list itself (or `GET /places/filters`).\n\nIf **none** of the filters could be applied, the answer is an error that lists the valid ones."
                },
                {
                  "key": "currencyCode",
                  "value": "USD",
                  "disabled": false,
                  "description": "Currency of the prices, **3 letters** like `EUR`. The list is `GET /common/currencies`.\n\nDefault: `USD`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                },
                {
                  "key": "updateToken",
                  "value": "",
                  "disabled": true,
                  "description": "The `updateToken` of a tab, of `nextPage`, or of an unfinished screen from the previous answer.\n\n**Copy it from `next.params`**, do not build it."
                },
                {
                  "key": "waitForComplete",
                  "value": "true",
                  "disabled": true,
                  "description": "- `true` (default): unfinished screens (prices still loading) are polled until complete, so one call may use several provider calls.\n- `false`: return the first answer as it is."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The restaurants of a place. Cuisines, dining options and filters come back in the same answer.\n\n**Parameter notes**\n\n- Filter ids come from `/places/filters`.\n\n**Response**\n\n- `data.results[]` are the places (hotels, restaurants, tours ...), each with `id`, `title`, `rating{value, reviewCount}`, `price`, `photos[]`, `labels[]`, `links[]`, `map{latitude, longitude, rankingText}` and `next`, the call that opens it.\n- Lists with several shelves (overview, restaurants, things to do) put them in `data.sections[]`.\n- `data.sort` has the selected order and all options.\n- `data.filters` is the filter menu and `data.appliedFilters` what was applied.\n- `data.dates` has the date limits and a price calendar.\n- `data.nextPage.next` is the call for the next page.\n- `data.ignoredFilters` lists the filters you asked for that TripAdvisor did not apply. If none could be applied, the answer is an error that lists the valid ids and values."
          }
        },
        {
          "name": "Attractions or tours in named rows, with ratings and \"from\" prices, filters and map pins.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/places/things-to-do",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "places",
                "things-to-do"
              ],
              "variable": [],
              "query": [
                {
                  "key": "geoId",
                  "value": "60763",
                  "disabled": false,
                  "description": "Place id, taken from `link.route.params.geoId` in the `/search` results."
                },
                {
                  "key": "contentType",
                  "value": "attraction",
                  "disabled": true,
                  "description": "- `attraction` (default): attractions and sights.\n- `attraction_product`: tours, tickets and activities.\n\nUse the `contentType` of the link you followed."
                },
                {
                  "key": "startDate",
                  "value": "2026-12-10",
                  "disabled": false,
                  "description": "Day of the visit, `YYYY-MM-DD`.\n\nDefault: 1 day from today."
                },
                {
                  "key": "fullList",
                  "value": "false",
                  "disabled": true,
                  "description": "- `true`: the flat list of every place with sorting and paging (what \"View all\" opens).\n- `false` (default): the overview page of shelves such as Top attractions. Its \"View all\" links already carry `fullList=true`.\n\nNot needed with `filters` or for tours."
                },
                {
                  "key": "filters",
                  "value": "category:42",
                  "disabled": false,
                  "description": "Filters written `id:value1,value2;id2:value`.\n\nThe filter ids and their values are listed in `data.filters` of the list itself (or `GET /places/filters`).\n\nIf **none** of the filters could be applied, the answer is an error that lists the valid ones."
                },
                {
                  "key": "currencyCode",
                  "value": "USD",
                  "disabled": false,
                  "description": "Currency of the prices, **3 letters** like `EUR`. The list is `GET /common/currencies`.\n\nDefault: `USD`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                },
                {
                  "key": "updateToken",
                  "value": "",
                  "disabled": true,
                  "description": "The `updateToken` of a tab, of `nextPage`, or of an unfinished screen from the previous answer.\n\n**Copy it from `next.params`**, do not build it."
                },
                {
                  "key": "waitForComplete",
                  "value": "true",
                  "disabled": true,
                  "description": "- `true` (default): unfinished screens (prices still loading) are polled until complete, so one call may use several provider calls.\n- `false`: return the first answer as it is."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The things to do of a place: attractions, tours and tickets.\n\n**Parameter notes**\n\n- Filter ids come from `/places/filters`.\n\n**Response**\n\n- `data.results[]` are the places (hotels, restaurants, tours ...), each with `id`, `title`, `rating{value, reviewCount}`, `price`, `photos[]`, `labels[]`, `links[]`, `map{latitude, longitude, rankingText}` and `next`, the call that opens it.\n- Lists with several shelves (overview, restaurants, things to do) put them in `data.sections[]`.\n- `data.sort` has the selected order and all options.\n- `data.filters` is the filter menu and `data.appliedFilters` what was applied.\n- `data.dates` has the date limits and a price calendar.\n- `data.nextPage.next` is the call for the next page.\n- `data.ignoredFilters` lists the filters you asked for that TripAdvisor did not apply. If none could be applied, the answer is an error that lists the valid ids and values.\n\n**Notes**\n\n- Two kinds of result come back: `contentType` attraction (a place you visit, details in `/attractions`) and `attraction_product` (a tour, ticket or activity, details in `/tours`).\n- A tour is not an attraction. Use `/tours` for anything with `contentType` attraction_product."
          }
        },
        {
          "name": "Every sort order and filter (with its choices) a list accepts.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/places/filters",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "places",
                "filters"
              ],
              "variable": [],
              "query": [
                {
                  "key": "geoId",
                  "value": "60763",
                  "disabled": false,
                  "description": "Place id, taken from `link.route.params.geoId` in the `/search` results."
                },
                {
                  "key": "contentType",
                  "value": "restaurant",
                  "disabled": false,
                  "description": "One of `hotel`, `restaurant`, `attraction`."
                },
                {
                  "key": "filters",
                  "value": "",
                  "disabled": true,
                  "description": "Filters written `id:value1,value2;id2:value`.\n\nThe filter ids and their values are listed in `data.filters` of the list itself (or `GET /places/filters`).\n\nIf **none** of the filters could be applied, the answer is an error that lists the valid ones."
                },
                {
                  "key": "currencyCode",
                  "value": "USD",
                  "disabled": false,
                  "description": "Currency of the prices, **3 letters** like `EUR`. The list is `GET /common/currencies`.\n\nDefault: `USD`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "Only the menus of a list: how it can be sorted and filtered.\n\n**Response**\n\n- `sort.options[]` are the sort options. Send the id as `sort` to the hotel list.\n- `filters.filters[]` are the filters with their values. Send the ids and values as `filters`.\n- `appliedFilters` shows which values are selected when you send `filters`.\n\n**Notes**\n\n- Pass the `geoId` and the `contentType` of the list.\n- Filters differ per kind of list. A filter id of one kind (for example `cuisine`, restaurants only) is an error for another."
          }
        },
        {
          "name": "Places around a GPS position as map pins with name, distance, opening state and price.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/places/nearby",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "places",
                "nearby"
              ],
              "variable": [],
              "query": [
                {
                  "key": "latitude",
                  "value": "40.7128",
                  "disabled": false,
                  "description": "Latitude, `-90` to `90`."
                },
                {
                  "key": "longitude",
                  "value": "-74.006",
                  "disabled": false,
                  "description": "Longitude, `-180` to `180`."
                },
                {
                  "key": "contentType",
                  "value": "",
                  "disabled": true,
                  "description": "One of `attraction`, `hotel`, `restaurant`."
                },
                {
                  "key": "filters",
                  "value": "",
                  "disabled": true,
                  "description": "Filters written `id:value1,value2;id2:value`.\n\nThe filter ids and their values are listed in `data.filters` of the list itself (or `GET /places/filters`).\n\nIf **none** of the filters could be applied, the answer is an error that lists the valid ones."
                },
                {
                  "key": "radiusKm",
                  "value": "2",
                  "disabled": true,
                  "description": "Radius in km, `0.1` to `50`.\n\nDefault: `2`."
                },
                {
                  "key": "timeZone",
                  "value": "UTC",
                  "disabled": true,
                  "description": "Time zone name.\n\nDefault: `UTC`."
                },
                {
                  "key": "currencyCode",
                  "value": "USD",
                  "disabled": false,
                  "description": "Currency of the prices, **3 letters** like `EUR`. The list is `GET /common/currencies`.\n\nDefault: `USD`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                },
                {
                  "key": "updateToken",
                  "value": "",
                  "disabled": true,
                  "description": "The `updateToken` of a tab, of `nextPage`, or of an unfinished screen from the previous answer.\n\n**Copy it from `next.params`**, do not build it."
                },
                {
                  "key": "waitForComplete",
                  "value": "true",
                  "disabled": true,
                  "description": "- `true` (default): unfinished screens (prices still loading) are polled until complete, so one call may use several provider calls.\n- `false`: return the first answer as it is."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The places around a position, for an \"Explore nearby\" map.\n\n**Response**\n\n- `data.mapSections[].mapItems[]` are the pins of the map, each with its id, position, name and photo.\n\n**Parameter notes**\n\n- Narrow the pins with `filters`. The \"near me\" entry of `/search/autocomplete` hands you the ids, for example `cuisine:10641` shows only that cuisine."
          }
        }
      ]
    },
    {
      "name": "Hotels",
      "item": [
        {
          "name": "Photos, rating, address, offers, amenities, about text and health and safety.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/hotels/details",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "hotels",
                "details"
              ],
              "variable": [],
              "query": [
                {
                  "key": "hotelId",
                  "value": "99332",
                  "disabled": false,
                  "description": "Hotel id, e.g. `99332`."
                },
                {
                  "key": "checkIn",
                  "value": "2026-12-10",
                  "disabled": false,
                  "description": "Check-in day, `YYYY-MM-DD`.\n\nDefault: 30 days from today."
                },
                {
                  "key": "checkOut",
                  "value": "2026-12-11",
                  "disabled": false,
                  "description": "Check-out day, `YYYY-MM-DD`.\n\nDefault: the day after check-in. **At most 30 nights.**"
                },
                {
                  "key": "adults",
                  "value": "",
                  "disabled": true,
                  "description": "Adults in the room, `1` to `4` (TripAdvisor limit per room).\n\n**Needed when `children` is sent.** For more rooms use `rooms`."
                },
                {
                  "key": "children",
                  "value": "",
                  "disabled": true,
                  "description": "Ages of the children in the room, `0` to `17`, comma separated, at most 10, e.g. `5,7`.\n\n**Needs `adults`.**"
                },
                {
                  "key": "rooms",
                  "value": "2:5,7;1",
                  "disabled": false,
                  "description": "Several rooms, written `adults:childAges` per room and rooms separated by `;`.\n\nExample: `2:5,7;1` = room 1 with two adults and children aged 5 and 7, room 2 with one adult.\n\nAt most 8 rooms. **Cannot be combined with `adults` / `children`.**"
                },
                {
                  "key": "currencyCode",
                  "value": "USD",
                  "disabled": false,
                  "description": "Currency of the prices, **3 letters** like `EUR`. The list is `GET /common/currencies`.\n\nDefault: `USD`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                },
                {
                  "key": "updateToken",
                  "value": "",
                  "disabled": true,
                  "description": "The `updateToken` of a tab, of `nextPage`, or of an unfinished screen from the previous answer.\n\n**Copy it from `next.params`**, do not build it."
                },
                {
                  "key": "waitForComplete",
                  "value": "true",
                  "disabled": true,
                  "description": "- `true` (default): unfinished screens (prices still loading) are polled until complete, so one call may use several provider calls.\n- `false`: return the first answer as it is."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The page of one hotel.\n\n**Parameter notes**\n\n- `hotelId` is `link.route.params.contentId` in the lists and search results (`contentType` hotel)."
          }
        },
        {
          "name": "Room prices by provider for your dates, with a complete link to each deal.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/hotels/prices",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "hotels",
                "prices"
              ],
              "variable": [],
              "query": [
                {
                  "key": "hotelId",
                  "value": "99332",
                  "disabled": false,
                  "description": "Hotel id, e.g. `99332`."
                },
                {
                  "key": "checkIn",
                  "value": "2026-12-10",
                  "disabled": false,
                  "description": "Check-in day, `YYYY-MM-DD`.\n\nDefault: 30 days from today."
                },
                {
                  "key": "checkOut",
                  "value": "2026-12-11",
                  "disabled": false,
                  "description": "Check-out day, `YYYY-MM-DD`.\n\nDefault: the day after check-in. **At most 30 nights.**"
                },
                {
                  "key": "adults",
                  "value": "",
                  "disabled": true,
                  "description": "Adults in the room, `1` to `4` (TripAdvisor limit per room).\n\n**Needed when `children` is sent.** For more rooms use `rooms`."
                },
                {
                  "key": "children",
                  "value": "",
                  "disabled": true,
                  "description": "Ages of the children in the room, `0` to `17`, comma separated, at most 10, e.g. `5,7`.\n\n**Needs `adults`.**"
                },
                {
                  "key": "rooms",
                  "value": "2:5,7;1",
                  "disabled": false,
                  "description": "Several rooms, written `adults:childAges` per room and rooms separated by `;`.\n\nExample: `2:5,7;1` = room 1 with two adults and children aged 5 and 7, room 2 with one adult.\n\nAt most 8 rooms. **Cannot be combined with `adults` / `children`.**"
                },
                {
                  "key": "currencyCode",
                  "value": "USD",
                  "disabled": false,
                  "description": "Currency of the prices, **3 letters** like `EUR`. The list is `GET /common/currencies`.\n\nDefault: `USD`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                },
                {
                  "key": "updateToken",
                  "value": "",
                  "disabled": true,
                  "description": "The `updateToken` of a tab, of `nextPage`, or of an unfinished screen from the previous answer.\n\n**Copy it from `next.params`**, do not build it."
                },
                {
                  "key": "waitForComplete",
                  "value": "true",
                  "disabled": true,
                  "description": "- `true` (default): unfinished screens (prices still loading) are polled until complete, so one call may use several provider calls.\n- `false`: return the first answer as it is."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The booking deals of one hotel for your dates and guests.\n\n**Response**\n\n- `data.offers[]` are `{provider, available, price{display, total, rate, taxes, fees, currency}, conditions[], url, logo}`.\n- Bookable deals come first, cheapest first.\n- Sites with nothing for these dates have `available: false` and `url: null`.\n- `url` is a complete link (`https://www.tripadvisor.com/Commerce?...`) that opens the deal. TripAdvisor redirects it to the booking site, so it is not the address of the booking site itself.\n\n**Parameter notes**\n\n- Use the same `hotelId`, dates and guests as in `/hotels/details`."
          }
        },
        {
          "name": "Every amenity of the hotel, grouped.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/hotels/amenities",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "hotels",
                "amenities"
              ],
              "variable": [],
              "query": [
                {
                  "key": "hotelId",
                  "value": "99332",
                  "disabled": false,
                  "description": "Hotel id, e.g. `99332`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The amenities of one hotel, in groups.\n\n**Response**\n\n- `data.groups[]` are `{title, icon, items[]}` (Parking, Internet, Room features ...).\n- `data.count` is the number of items.\n- Same shape as `amenities` in `/hotels/details`."
          }
        }
      ]
    },
    {
      "name": "Restaurants",
      "item": [
        {
          "name": "Photos, rating, cuisines, menu, opening hours, about and reservation options.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/restaurants/details",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "restaurants",
                "details"
              ],
              "variable": [],
              "query": [
                {
                  "key": "restaurantId",
                  "value": "543689",
                  "disabled": false,
                  "description": "Restaurant id, e.g. `543689`."
                },
                {
                  "key": "partySize",
                  "value": "",
                  "disabled": true,
                  "description": "People at the table, `1` to `20`."
                },
                {
                  "key": "reservationTime",
                  "value": "",
                  "disabled": true,
                  "description": "Wanted table time, like `2026-12-31T20:00:00`."
                },
                {
                  "key": "currencyCode",
                  "value": "USD",
                  "disabled": false,
                  "description": "Currency of the prices, **3 letters** like `EUR`. The list is `GET /common/currencies`.\n\nDefault: `USD`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                },
                {
                  "key": "updateToken",
                  "value": "",
                  "disabled": true,
                  "description": "The `updateToken` of a tab, of `nextPage`, or of an unfinished screen from the previous answer.\n\n**Copy it from `next.params`**, do not build it."
                },
                {
                  "key": "waitForComplete",
                  "value": "true",
                  "disabled": true,
                  "description": "- `true` (default): unfinished screens (prices still loading) are polled until complete, so one call may use several provider calls.\n- `false`: return the first answer as it is."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The page of one restaurant.\n\n**Parameter notes**\n\n- `restaurantId` is `link.route.params.contentId` in the lists and search results (`contentType` restaurant)."
          }
        },
        {
          "name": "The full menu: sections, dishes, descriptions and prices.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/restaurants/menu",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "restaurants",
                "menu"
              ],
              "variable": [],
              "query": [
                {
                  "key": "restaurantId",
                  "value": "12425739",
                  "disabled": false,
                  "description": "Restaurant id, e.g. `543689`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The full menu of one restaurant.\n\n**Response**\n\n- `data.tabs[].sections[]` are the sections of the menu (Antipasti, Pasta ...). Each has `items[]` with `{name, description, prices[{text, label}]}`.\n- `data.itemCount` is the number of items.\n- `data.providedBy` says who supplied the menu (for example the restaurant or TheFork), with `providedByImage`.\n\n**Notes**\n\n- Some menus reach us obfuscated by TripAdvisor. They are decoded, so every text is plain.\n- Prices are the restaurant's own text in its own currency (for example US$17.00), not `currencyCode`.\n- TripAdvisor has no separate menu call, so this uses one restaurant-page call.\n- A restaurant without a menu on TripAdvisor returns `status: false`.\n- The same menu is also in `data.menu` of `/restaurants/details`, whose `menu.next` points here."
          }
        },
        {
          "name": "Opening hours for the week.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/restaurants/hours",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "restaurants",
                "hours"
              ],
              "variable": [],
              "query": [
                {
                  "key": "restaurantId",
                  "value": "543689",
                  "disabled": false,
                  "description": "Restaurant id, e.g. `543689`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The opening hours of one restaurant.\n\n**Response**\n\n- `data.week[]` is `{day, status, hours[]}` for every day, with the hours as TripAdvisor writes them (for example 11:30 AM - 11:00 PM).\n- `data.serving` are the meals (Lunch • Dinner).\n- Same block as `openingHours` in `/restaurants/details`.\n\n**Notes**\n\n- A place without opening hours returns `status: false`."
          }
        },
        {
          "name": "The About section: description, cuisines, features.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/restaurants/about",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "restaurants",
                "about"
              ],
              "variable": [],
              "query": [
                {
                  "key": "restaurantId",
                  "value": "543689",
                  "disabled": false,
                  "description": "Restaurant id, e.g. `543689`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The \"About\" text of one restaurant.\n\n**Response**\n\n- `data.tabs[].blocks[]` are the sections of the text. Every block has the same keys:\n  - `title`, `icon`\n  - `lines[]`, list items such as cuisines or features\n  - `text` and `html`\n  - `awards`, `place`, `rating`, `disclaimer`\n  - `contacts[]`, website and phone\n- `data.place.next` leads to the details page."
          }
        }
      ]
    },
    {
      "name": "Attractions",
      "item": [
        {
          "name": "Photos, rating, tickets and tours, opening hours and about.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/attractions/details",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "attractions",
                "details"
              ],
              "variable": [],
              "query": [
                {
                  "key": "attractionId",
                  "value": "107466",
                  "disabled": false,
                  "description": "Attraction id."
                },
                {
                  "key": "startDate",
                  "value": "2026-12-10",
                  "disabled": false,
                  "description": "Day of the visit, `YYYY-MM-DD`.\n\nDefault: 1 day from today."
                },
                {
                  "key": "currencyCode",
                  "value": "USD",
                  "disabled": false,
                  "description": "Currency of the prices, **3 letters** like `EUR`. The list is `GET /common/currencies`.\n\nDefault: `USD`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                },
                {
                  "key": "updateToken",
                  "value": "",
                  "disabled": true,
                  "description": "The `updateToken` of a tab, of `nextPage`, or of an unfinished screen from the previous answer.\n\n**Copy it from `next.params`**, do not build it."
                },
                {
                  "key": "waitForComplete",
                  "value": "true",
                  "disabled": true,
                  "description": "- `true` (default): unfinished screens (prices still loading) are polled until complete, so one call may use several provider calls.\n- `false`: return the first answer as it is."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The page of one attraction.\n\n**Parameter notes**\n\n- `attractionId` is `link.route.params.contentId` in the lists and search results (`contentType` attraction).\n\n**Notes**\n\n- A tour is not an attraction. Use `/tours` for anything with `contentType` attraction_product."
          }
        },
        {
          "name": "Opening hours for the week.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/attractions/hours",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "attractions",
                "hours"
              ],
              "variable": [],
              "query": [
                {
                  "key": "attractionId",
                  "value": "107466",
                  "disabled": false,
                  "description": "Attraction id."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The opening hours of one attraction.\n\n**Response**\n\n- `data.week[]` is `{day, status, hours[]}`, the same shape as `/restaurants/hours`.\n\n**Notes**\n\n- A place without opening hours returns `status: false`."
          }
        },
        {
          "name": "The About section.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/attractions/about",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "attractions",
                "about"
              ],
              "variable": [],
              "query": [
                {
                  "key": "attractionId",
                  "value": "107466",
                  "disabled": false,
                  "description": "Attraction id."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The \"About\" text of one attraction.\n\n**Response**\n\n- `data.tabs[].blocks[]` are the sections of the text. Every block has the same keys:\n  - `title`, `icon`\n  - `lines[]`, list items such as cuisines or features\n  - `text` and `html`\n  - `awards`, `place`, `rating`, `disclaimer`\n  - `contacts[]`, website and phone\n- `data.place.next` leads to the details page."
          }
        },
        {
          "name": "Tickets or tours of an attraction with prices, filters and paging.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/attractions/availability",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "attractions",
                "availability"
              ],
              "variable": [],
              "query": [
                {
                  "key": "attractionId",
                  "value": "104365",
                  "disabled": false,
                  "description": "Attraction id."
                },
                {
                  "key": "state",
                  "value": "",
                  "disabled": false,
                  "description": "One of `tickets`, `tours`."
                },
                {
                  "key": "filters",
                  "value": "",
                  "disabled": true,
                  "description": "Filters written `id:value1,value2;id2:value`.\n\nThe filter ids and their values are listed in `data.filters` of the list itself (or `GET /places/filters`).\n\nIf **none** of the filters could be applied, the answer is an error that lists the valid ones."
                },
                {
                  "key": "currencyCode",
                  "value": "USD",
                  "disabled": false,
                  "description": "Currency of the prices, **3 letters** like `EUR`. The list is `GET /common/currencies`.\n\nDefault: `USD`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                },
                {
                  "key": "updateToken",
                  "value": "",
                  "disabled": true,
                  "description": "The `updateToken` of a tab, of `nextPage`, or of an unfinished screen from the previous answer.\n\n**Copy it from `next.params`**, do not build it."
                },
                {
                  "key": "waitForComplete",
                  "value": "true",
                  "disabled": true,
                  "description": "- `true` (default): unfinished screens (prices still loading) are polled until complete, so one call may use several provider calls.\n- `false`: return the first answer as it is."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The tours or the tickets of one attraction.\n\n**state `tours`**\n\n- `data.results[]` are the tours that visit the attraction. They are the same cards as the place lists, with a price.\n- `data.filters` is the filter menu (duration, language, price ...).\n- Page through `data.nextPage`.\n\n**state `tickets`**\n\n- `data.tickets[]` are the tickets of the attraction: `{id, name, description, price, rating, availability.next, details.next}`.\n- Many attractions have none.\n\n**Notes**\n\n- Nothing found returns `status: false`.\n- A filter value that contains a comma is written with a backslash: `filters=duration:1\\,60`."
          }
        }
      ]
    },
    {
      "name": "Tours",
      "item": [
        {
          "name": "Photos, rating, what is included, options and prices for a tour or ticket.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/tours/details",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "tours",
                "details"
              ],
              "variable": [],
              "query": [
                {
                  "key": "tourId",
                  "value": "11455174",
                  "disabled": false,
                  "description": "Either form works:\n\n- Tour id, e.g. `11455174`\n- Product id, e.g. `AP_7081NYCDAY`"
                },
                {
                  "key": "startDate",
                  "value": "2026-12-10",
                  "disabled": false,
                  "description": "Day of the visit, `YYYY-MM-DD`.\n\nDefault: 1 day from today."
                },
                {
                  "key": "currencyCode",
                  "value": "USD",
                  "disabled": false,
                  "description": "Currency of the prices, **3 letters** like `EUR`. The list is `GET /common/currencies`.\n\nDefault: `USD`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                },
                {
                  "key": "updateToken",
                  "value": "",
                  "disabled": true,
                  "description": "The `updateToken` of a tab, of `nextPage`, or of an unfinished screen from the previous answer.\n\n**Copy it from `next.params`**, do not build it."
                },
                {
                  "key": "waitForComplete",
                  "value": "true",
                  "disabled": true,
                  "description": "- `true` (default): unfinished screens (prices still loading) are polled until complete, so one call may use several provider calls.\n- `false`: return the first answer as it is."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The page of one tour.\n\n**Parameter notes**\n\n- `tourId` is `link.route.params.contentId` in the lists and search results (`contentType` attraction_product), or the product id that starts with `AP_` (for example `AP_7081NYCDAY`).\n\n**Notes**\n\n- A tour is not an attraction. Use `/tours` for anything with `contentType` attraction_product."
          }
        },
        {
          "name": "Highlights, itinerary and inclusions of a tour.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/tours/about",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "tours",
                "about"
              ],
              "variable": [],
              "query": [
                {
                  "key": "tourId",
                  "value": "11455174",
                  "disabled": false,
                  "description": "Tour id, e.g. `11455174`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The \"About\" text of one tour.\n\n**Response**\n\n- Every block has the same keys: `title`, `icon`, `bulleted`, `text`, `html`, `lines`, `place`, `contacts`, `rating`, `awards`, `disclaimer`, `extra`.\n\n**Parameter notes**\n\n- `tourId` is the number of the tour."
          }
        },
        {
          "name": "The options of a tour with start times, prices by age and availability.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/tours/availability",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "tours",
                "availability"
              ],
              "variable": [],
              "query": [
                {
                  "key": "productCode",
                  "value": "7081NYCDAY",
                  "disabled": false,
                  "description": "Code of the tour option, e.g. `7081NYCDAY`.\n\nIt is `availability.options[].route.params.contentId` of `GET /tours/details`."
                },
                {
                  "key": "startDate",
                  "value": "2026-12-10",
                  "disabled": false,
                  "description": "Day of the tour, `YYYY-MM-DD`.\n\nDefault: tomorrow."
                },
                {
                  "key": "adults",
                  "value": "2",
                  "disabled": true,
                  "description": "Travellers aged 13 to 99, `1` to `30`.\n\nDefault: `2`."
                },
                {
                  "key": "children",
                  "value": "0",
                  "disabled": true,
                  "description": "Travellers aged 3 to 12.\n\nDefault: `0`."
                },
                {
                  "key": "infants",
                  "value": "0",
                  "disabled": true,
                  "description": "Travellers aged 0 to 2.\n\nDefault: `0`."
                },
                {
                  "key": "currencyCode",
                  "value": "USD",
                  "disabled": false,
                  "description": "Currency of the prices, **3 letters** like `EUR`. The list is `GET /common/currencies`.\n\nDefault: `USD`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                },
                {
                  "key": "updateToken",
                  "value": "",
                  "disabled": true,
                  "description": "The `updateToken` of a tab, of `nextPage`, or of an unfinished screen from the previous answer.\n\n**Copy it from `next.params`**, do not build it."
                },
                {
                  "key": "waitForComplete",
                  "value": "true",
                  "disabled": true,
                  "description": "- `true` (default): unfinished screens (prices still loading) are polled until complete, so one call may use several provider calls.\n- `false`: return the first answer as it is."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The dates, start times and prices of one tour.\n\n**Parameter notes**\n\n- `productCode` is `availability.options[].route.params.contentId` of `/tours/details`, for example `7081NYCDAY`.\n- The date and the party come from this request: adults at least 1, adults + children + infants at most 30.\n\n**Response**\n\n- Every start time has the same keys: `available: true` with price fields, or `available: false` with those fields `null`."
          }
        },
        {
          "name": "Every stop of a tour with position, duration, rating and photos.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/tours/itinerary",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "tours",
                "itinerary"
              ],
              "variable": [],
              "query": [
                {
                  "key": "tourId",
                  "value": "11455174",
                  "disabled": false,
                  "description": "Tour id, e.g. `11455174`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "Every stop of a tour, with position, duration, rating and photos."
          }
        }
      ]
    },
    {
      "name": "Reviews",
      "item": [
        {
          "name": "Reviews of a place with the rating summary, filters and paging.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/reviews/list",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "reviews",
                "list"
              ],
              "variable": [],
              "query": [
                {
                  "key": "contentType",
                  "value": "",
                  "disabled": false,
                  "description": "One of `hotel`, `restaurant`, `attraction`, `attraction_product`."
                },
                {
                  "key": "locationId",
                  "value": "99332",
                  "disabled": false,
                  "description": "Place id, e.g. `99332`."
                },
                {
                  "key": "filters",
                  "value": "months:January;rating:5",
                  "disabled": false,
                  "description": "Filters written `id:value1,value2;id2:value`.\n\nThe filter ids and their values are listed in `data.filters` of the list itself (or `GET /places/filters`).\n\nIf **none** of the filters could be applied, the answer is an error that lists the valid ones."
                },
                {
                  "key": "offset",
                  "value": "0",
                  "disabled": false,
                  "description": "Start of the page, **multiples of 20** (`20`, `40` ...).\n\nOnly works **together with the `updateToken` of `nextPage`** (the call `nextPage.next` already holds). Without an `updateToken` the first page comes back."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                },
                {
                  "key": "updateToken",
                  "value": "",
                  "disabled": true,
                  "description": "The `updateToken` of a tab, of `nextPage`, or of an unfinished screen from the previous answer.\n\n**Copy it from `next.params`**, do not build it."
                },
                {
                  "key": "waitForComplete",
                  "value": "true",
                  "disabled": true,
                  "description": "- `true` (default): unfinished screens (prices still loading) are polled until complete, so one call may use several provider calls.\n- `false`: return the first answer as it is."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The reviews of a hotel, restaurant, attraction or tour.\n\n**Response**\n\n- `data.reviews[]` each have `id, title, text, rating, written, visited, tripType, helpful, subratings[], ownerResponse, photos[], author{name, hometown, contributions, username, next}`.\n- `data.summary` has the total, the rating and the 5-star distribution.\n- `data.filters` is the filter menu. Its ids work in `filters`.\n- `data.nextPage.next` is the call for the next page. It carries `offset` and `updateToken`.\n\n**Parameter notes**\n\n- `locationId` is the place id.\n- `offset` only works together with the `updateToken` of `nextPage`."
          }
        },
        {
          "name": "The languages, months and traveller types you can filter reviews by, with counts.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/reviews/filters",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "reviews",
                "filters"
              ],
              "variable": [],
              "query": [
                {
                  "key": "contentType",
                  "value": "",
                  "disabled": false,
                  "description": "One of `hotel`, `restaurant`, `attraction`."
                },
                {
                  "key": "locationId",
                  "value": "99332",
                  "disabled": false,
                  "description": "Place id, e.g. `99332`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The review sort and filter menu of one place, with counts (languages, months, traveller types ...).\n\n**Response**\n\n- `data.filters[]` are `{id, title, kind, options[{value, title, count, selected}]}`. The counts are this place's.\n\n**Notes**\n\n- Only the menu. Nothing here changes with a chosen filter, so there is no `filters` parameter.\n- To filter, pass `id:value` pairs in `filters` of `/reviews/list`."
          }
        },
        {
          "name": "One full review with the owner response.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/reviews/detail",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "reviews",
                "detail"
              ],
              "variable": [],
              "query": [
                {
                  "key": "contentType",
                  "value": "",
                  "disabled": false,
                  "description": "One of `hotel`, `restaurant`, `attraction`, `attraction_product`."
                },
                {
                  "key": "locationId",
                  "value": "99332",
                  "disabled": false,
                  "description": "Place id, e.g. `99332`."
                },
                {
                  "key": "reviewId",
                  "value": "1",
                  "disabled": false,
                  "description": "Review id (`rid`)."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "One review.\n\n**Parameter notes**\n\n- `reviewId` is the `id` of a review in `/reviews/list` or `/reviews/tips`.\n\n**Response**\n\n- `data.review` has the same keys as a review in the list."
          }
        },
        {
          "name": "The AI summary of what guests say, by topic, with the reviews for the chosen topic.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/reviews/summary",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "reviews",
                "summary"
              ],
              "variable": [],
              "query": [
                {
                  "key": "contentType",
                  "value": "",
                  "disabled": false,
                  "description": "One of `hotel`, `attraction`."
                },
                {
                  "key": "locationId",
                  "value": "99332",
                  "disabled": false,
                  "description": "Place id, e.g. `99332`."
                },
                {
                  "key": "activeTab",
                  "value": "Location",
                  "disabled": true,
                  "description": "Topic.\n\nDefault: `Location`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The AI summary of the reviews, by topic.\n\n**Response**\n\n- `data.topics[]` is the menu: `{topic, opinion, icon, summary, selected, next}`. `next` is the call that loads that topic.\n- `data.reviews` are the reviews behind the requested topic: `{topic, count, items[]}`. TripAdvisor loads them for one topic per call.\n\n**Parameter notes**\n\n- `activeTab` is exact and case-sensitive.\n  - Hotels: Location, Atmosphere, Rooms, Value, Cleanliness, Noise level, Service, Amenities.\n  - Attractions: Atmosphere, Location, Booking, Duration, Wait, Audience, Facility, Staff."
          }
        },
        {
          "name": "Questions and answers about the place.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/reviews/questions",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "reviews",
                "questions"
              ],
              "variable": [],
              "query": [
                {
                  "key": "contentType",
                  "value": "",
                  "disabled": false,
                  "description": "One of `hotel`, `restaurant`, `attraction`, `attraction_product`."
                },
                {
                  "key": "locationId",
                  "value": "99332",
                  "disabled": false,
                  "description": "Place id, e.g. `99332`."
                },
                {
                  "key": "offset",
                  "value": "0",
                  "disabled": false,
                  "description": "Start of the page, **multiples of 20** (`0`, `20`, `40` ...).\n\nOr send the `updateToken` of `nextPage`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                },
                {
                  "key": "updateToken",
                  "value": "",
                  "disabled": true,
                  "description": "The `updateToken` of a tab, of `nextPage`, or of an unfinished screen from the previous answer.\n\n**Copy it from `next.params`**, do not build it."
                },
                {
                  "key": "waitForComplete",
                  "value": "true",
                  "disabled": true,
                  "description": "- `true` (default): unfinished screens (prices still loading) are polled until complete, so one call may use several provider calls.\n- `false`: return the first answer as it is."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The questions asked about a place, with the number of answers.\n\n**Response**\n\n- `data.questions[]` are `{id, text, written, answerCount, next}`. `next` opens `/reviews/question`.\n- Page with `data.nextPage.next` (`offset` and `updateToken`)."
          }
        },
        {
          "name": "One question with all its answers.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/reviews/question",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "reviews",
                "question"
              ],
              "variable": [],
              "query": [
                {
                  "key": "contentType",
                  "value": "",
                  "disabled": false,
                  "description": "One of `hotel`, `restaurant`, `attraction`, `attraction_product`."
                },
                {
                  "key": "locationId",
                  "value": "99332",
                  "disabled": false,
                  "description": "Place id, e.g. `99332`."
                },
                {
                  "key": "questionId",
                  "value": "1",
                  "disabled": false,
                  "description": "Question id."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "One question with its answers.\n\n**Parameter notes**\n\n- `questionId` is the `id` of a question in `/reviews/questions`.\n\n**Response**\n\n- `data.question` is the question.\n- `data.answers[]` are the answers. Each has the author, with a link to their profile."
          }
        },
        {
          "name": "Tips from travellers.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/reviews/tips",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "reviews",
                "tips"
              ],
              "variable": [],
              "query": [
                {
                  "key": "contentType",
                  "value": "",
                  "disabled": false,
                  "description": "One of `hotel`, `restaurant`, `attraction`, `attraction_product`."
                },
                {
                  "key": "locationId",
                  "value": "99332",
                  "disabled": false,
                  "description": "Place id, e.g. `99332`."
                },
                {
                  "key": "offset",
                  "value": "0",
                  "disabled": false,
                  "description": "Start of the page, **multiples of 20** (`0`, `20`, `40` ...).\n\nOr send the `updateToken` of `nextPage`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                },
                {
                  "key": "updateToken",
                  "value": "",
                  "disabled": true,
                  "description": "The `updateToken` of a tab, of `nextPage`, or of an unfinished screen from the previous answer.\n\n**Copy it from `next.params`**, do not build it."
                },
                {
                  "key": "waitForComplete",
                  "value": "true",
                  "disabled": true,
                  "description": "- `true` (default): unfinished screens (prices still loading) are polled until complete, so one call may use several provider calls.\n- `false`: return the first answer as it is."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The insider tips of travellers for a place.\n\n**Response**\n\n- `data.tips[]` are `{id, tip, written, visited, author, next}`. `next` opens the full review in `/reviews/detail`.\n- Page with `data.nextPage.next`."
          }
        }
      ]
    },
    {
      "name": "Media",
      "item": [
        {
          "name": "Photo and video albums of a place, one page of photos at a time.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/media/albums",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "media",
                "albums"
              ],
              "variable": [],
              "query": [
                {
                  "key": "locationId",
                  "value": "99332",
                  "disabled": false,
                  "description": "Place id, e.g. `99332`."
                },
                {
                  "key": "albumId",
                  "value": "",
                  "disabled": true,
                  "description": "Album id, from `data.albums[].id` (e.g. `-150` = all photos)."
                },
                {
                  "key": "galleryConfig",
                  "value": "mvqa",
                  "disabled": true,
                  "description": "One of `mvqa` (default), `ar`, `rrap`, `apdapv`."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                },
                {
                  "key": "updateToken",
                  "value": "",
                  "disabled": true,
                  "description": "The `updateToken` of a tab, of `nextPage`, or of an unfinished screen from the previous answer.\n\n**Copy it from `next.params`**, do not build it."
                },
                {
                  "key": "waitForComplete",
                  "value": "true",
                  "disabled": true,
                  "description": "- `true` (default): unfinished screens (prices still loading) are polled until complete, so one call may use several provider calls.\n- `false`: return the first answer as it is."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The photo and video albums of a place.\n\n**Response**\n\n- `data.albums[]` lists the albums with `photoCount`.\n- `data.photos[]` are the photos and videos of the selected album, 50 per page. `type` is `photo` or `video`.\n  - Photos have `photo.sizes`.\n  - Videos have `video.thumbnails` and `video.sources` (m3u8 and mp4).\n- `data.nextPage.next` is the call for the next 50 photos.\n\n**Parameter notes**\n\n- `albumId` opens another album. It is an `id` from `data.albums` and can be negative (`-150` = All photos)."
          }
        }
      ]
    },
    {
      "name": "Profiles",
      "item": [
        {
          "name": "A traveller: badges, stats, overview.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/profiles/details",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "profiles",
                "details"
              ],
              "variable": [],
              "query": [
                {
                  "key": "username",
                  "value": "umrodrigocunha",
                  "disabled": false,
                  "description": "TripAdvisor username."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The profile of a traveller.\n\n**Parameter notes**\n\n- `username` is in a review (`data.reviews[].ownerResponse.username`, or the profile link of a review in `/reviews/list`).\n\n**Response**\n\n- Each review has a `next` for the review and for the place."
          }
        },
        {
          "name": "Reviews written by a traveller.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/profiles/reviews",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "profiles",
                "reviews"
              ],
              "variable": [],
              "query": [
                {
                  "key": "username",
                  "value": "umrodrigocunha",
                  "disabled": false,
                  "description": "TripAdvisor username."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                },
                {
                  "key": "updateToken",
                  "value": "",
                  "disabled": true,
                  "description": "The `updateToken` of a tab, of `nextPage`, or of an unfinished screen from the previous answer.\n\n**Copy it from `next.params`**, do not build it."
                },
                {
                  "key": "waitForComplete",
                  "value": "true",
                  "disabled": true,
                  "description": "- `true` (default): unfinished screens (prices still loading) are polled until complete, so one call may use several provider calls.\n- `false`: return the first answer as it is."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The reviews a traveller wrote.\n\n**Response**\n\n- Every review has the same keys. `next` opens the review or the place.\n\n**Notes**\n\n- Next page: pass `data.nextPage.updateToken` as `updateToken`. `data.nextPage` is `null` on the last page."
          }
        },
        {
          "name": "Photos posted by a traveller.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/profiles/photos",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "profiles",
                "photos"
              ],
              "variable": [],
              "query": [
                {
                  "key": "username",
                  "value": "umrodrigocunha",
                  "disabled": false,
                  "description": "TripAdvisor username."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                },
                {
                  "key": "updateToken",
                  "value": "",
                  "disabled": true,
                  "description": "The `updateToken` of a tab, of `nextPage`, or of an unfinished screen from the previous answer.\n\n**Copy it from `next.params`**, do not build it."
                },
                {
                  "key": "waitForComplete",
                  "value": "true",
                  "disabled": true,
                  "description": "- `true` (default): unfinished screens (prices still loading) are polled until complete, so one call may use several provider calls.\n- `false`: return the first answer as it is."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The photos a traveller shared.\n\n**Notes**\n\n- Next page: pass `data.nextPage.updateToken` as `updateToken`. It is `null` on the last page."
          }
        },
        {
          "name": "Badges and achievements.",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "X-RapidAPI-Key",
                "value": "{{rapidApiKey}}"
              },
              {
                "key": "X-RapidAPI-Host",
                "value": "{{rapidApiHost}}"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/profiles/achievements",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "profiles",
                "achievements"
              ],
              "variable": [],
              "query": [
                {
                  "key": "username",
                  "value": "umrodrigocunha",
                  "disabled": false,
                  "description": "TripAdvisor username."
                },
                {
                  "key": "languageCode",
                  "value": "en_IN",
                  "disabled": false,
                  "description": "Language of the texts, like `fr_FR`. The list is `GET /common/languages`.\n\nDefault: `en_IN`."
                }
              ]
            },
            "auth": {
              "type": "noauth"
            },
            "description": "The badges and achievements of a traveller."
          }
        }
      ]
    }
  ],
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://tripadvisor35.p.rapidapi.com/api/v1"
    },
    {
      "key": "rapidApiKey",
      "value": ""
    },
    {
      "key": "rapidApiHost",
      "value": "tripadvisor35.p.rapidapi.com"
    }
  ]
}