Tripadvisor Scraper avatar

Tripadvisor Scraper

Try for free

Pay $3.00 for 1,000 results

Go to Store
Tripadvisor Scraper

Tripadvisor Scraper

maxcopell/tripadvisor
Try for free

Pay $3.00 for 1,000 results

This unofficial Tripadvisor API is a data extraction tool able to get data on hotels, restaurants, things to do, vacation rentals, attractions, tours, and public trips. Get pricing, contact details, amenities, awards, ratings, and more. Download your data in Excel, JSON, CSV, and other formats.

You can access the Tripadvisor Scraper programmatically from your own applications by using the Apify API. You can choose the language preference from below. To use the Apify API, you’ll need an Apify account and your API token, found in Integrations settings in Apify Console.

1{
2  "openapi": "3.0.1",
3  "info": {
4    "version": "0.0",
5    "x-build-id": "SZsHjDxHnzA1oXXds"
6  },
7  "servers": [
8    {
9      "url": "https://api.apify.com/v2"
10    }
11  ],
12  "paths": {
13    "/acts/maxcopell~tripadvisor/run-sync-get-dataset-items": {
14      "post": {
15        "operationId": "run-sync-get-dataset-items-maxcopell-tripadvisor",
16        "x-openai-isConsequential": false,
17        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
18        "tags": [
19          "Run Actor"
20        ],
21        "requestBody": {
22          "required": true,
23          "content": {
24            "application/json": {
25              "schema": {
26                "$ref": "#/components/schemas/inputSchema"
27              }
28            }
29          }
30        },
31        "parameters": [
32          {
33            "name": "token",
34            "in": "query",
35            "required": true,
36            "schema": {
37              "type": "string"
38            },
39            "description": "Enter your Apify token here"
40          }
41        ],
42        "responses": {
43          "200": {
44            "description": "OK"
45          }
46        }
47      }
48    },
49    "/acts/maxcopell~tripadvisor/runs": {
50      "post": {
51        "operationId": "runs-sync-maxcopell-tripadvisor",
52        "x-openai-isConsequential": false,
53        "summary": "Executes an Actor and returns information about the initiated run in response.",
54        "tags": [
55          "Run Actor"
56        ],
57        "requestBody": {
58          "required": true,
59          "content": {
60            "application/json": {
61              "schema": {
62                "$ref": "#/components/schemas/inputSchema"
63              }
64            }
65          }
66        },
67        "parameters": [
68          {
69            "name": "token",
70            "in": "query",
71            "required": true,
72            "schema": {
73              "type": "string"
74            },
75            "description": "Enter your Apify token here"
76          }
77        ],
78        "responses": {
79          "200": {
80            "description": "OK",
81            "content": {
82              "application/json": {
83                "schema": {
84                  "$ref": "#/components/schemas/runsResponseSchema"
85                }
86              }
87            }
88          }
89        }
90      }
91    },
92    "/acts/maxcopell~tripadvisor/run-sync": {
93      "post": {
94        "operationId": "run-sync-maxcopell-tripadvisor",
95        "x-openai-isConsequential": false,
96        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
97        "tags": [
98          "Run Actor"
99        ],
100        "requestBody": {
101          "required": true,
102          "content": {
103            "application/json": {
104              "schema": {
105                "$ref": "#/components/schemas/inputSchema"
106              }
107            }
108          }
109        },
110        "parameters": [
111          {
112            "name": "token",
113            "in": "query",
114            "required": true,
115            "schema": {
116              "type": "string"
117            },
118            "description": "Enter your Apify token here"
119          }
120        ],
121        "responses": {
122          "200": {
123            "description": "OK"
124          }
125        }
126      }
127    }
128  },
129  "components": {
130    "schemas": {
131      "inputSchema": {
132        "type": "object",
133        "properties": {
134          "query": {
135            "title": "Search Query",
136            "type": "string",
137            "description": "You can enter a location name or a keyword here. If you search for a location, the scraper will take the first 'Location' type result and scrape hotels, restaurants, attractions, and vacation rentals for that location. If you search for a keyword, the scraper will only scrape places directly listed on the search results page (it won't crawl destinations listed among those results)."
138          },
139          "startUrls": {
140            "title": "Start URLs",
141            "type": "array",
142            "description": "URLs to start with instead of a location name. You can use URLs with search query included (containing 'Search?q='), tourism URLs or URLs pointing to a concrete hotel, restaurant, attraction or vacation rental (containing 'Hotel_Review', 'Restaurant_Review', 'Attraction_Review' or 'VacationRentalReview'). URLs of **public** trips are supported as well. The Actor can also handle category URLs for all 4 kinds of places, including search filters. Just note that the Actor also scrapes nearby results for hotels and vacation rentals. You can tell them apart from results strictly matching the search filters using `isNearbyResult` output field.",
143            "items": {
144              "type": "object",
145              "required": [
146                "url"
147              ],
148              "properties": {
149                "url": {
150                  "type": "string",
151                  "title": "URL of a web page",
152                  "format": "uri"
153                }
154              }
155            }
156          },
157          "maxItemsPerQuery": {
158            "title": "Max results (per search query/start URL) ",
159            "minimum": 1,
160            "type": "integer",
161            "description": "Limit the number of places to be scraped per search query/start URL. If you want to set a limit across all search queries use 'Options' -> 'Maximum charged results'. Set this field to a value larger than `3000` to activate the *'deeper city search'*."
162          },
163          "includeTags": {
164            "title": "Include review tags",
165            "type": "boolean",
166            "description": "Include review tags",
167            "default": true
168          },
169          "includeNearbyResults": {
170            "title": "Include nearby results",
171            "type": "boolean",
172            "description": "If checked, the results will include not only results strictly matching your search criteria but also their nearby results. This feature is currently available only for hotels, vacation rentals and restaurants.",
173            "default": false
174          },
175          "includeAttractions": {
176            "title": "Include things to do",
177            "type": "boolean",
178            "description": "If checked, the results will include attractions/things to do for a given location.",
179            "default": true
180          },
181          "includeRestaurants": {
182            "title": "Include restaurants",
183            "type": "boolean",
184            "description": "If checked, the results will include restaurants for a given location.",
185            "default": true
186          },
187          "includeHotels": {
188            "title": "Include hotels",
189            "type": "boolean",
190            "description": "If checked, the results will include hotels for a given location. Note that Tripadvisor promotes both hotels and vacation rentals in a `Hotels` category. When you decide to skip vacation rentals, the total number of results may be smaller than the website advertises for a given `Hotels` category. Whereas when you check the `includeVacationRentals` field, vacation rentals will be extracted from both `Hotels` category and their separate `Vacation Rentals` category.",
191            "default": true
192          },
193          "includeVacationRentals": {
194            "title": "Include vacation rentals",
195            "type": "boolean",
196            "description": "If checked, the results will include vacation rentals for a given location. Note that Tripadvisor promotes both hotels and vacation rentals in a `Hotels` category. When you decide to skip vacation rentals, the total number of results may be smaller than the website advertises for a given `Hotels` category. Whereas when you check this field, vacation rentals will be extracted from both `Hotels` category and their separate `Vacation Rentals` category.",
197            "default": false
198          },
199          "checkInDate": {
200            "title": "Hotel check-in date (YYYY-MM-DD)",
201            "type": "string",
202            "description": "Hotel rooms prices will be calculated for this check-in date. You can also use relative dates like '3 days', '1 week' or '3 months' (you need to use the JSON input editor for this).",
203            "default": ""
204          },
205          "checkOutDate": {
206            "title": "Hotel check-out date (YYYY-MM-DD)",
207            "type": "string",
208            "description": "Hotel rooms prices will be calculated for this check-out date. You can also use relative dates like '3 days', '1 week' or '3 months' (you need to use the JSON input editor for this)",
209            "default": ""
210          },
211          "includePriceOffers": {
212            "title": "Include price offers for hotels",
213            "type": "boolean",
214            "description": "Check this field if you want to extract price offers for hotel listings. Note that the available offers depend on `checkInDate` and `checkOutDate` values.",
215            "default": false
216          },
217          "includeAiReviewsSummary": {
218            "title": "Include AI reviews summary",
219            "type": "boolean",
220            "description": "Check this field if you want to extract AI reviews summary for hotel listings. Note that the AI reviews summary is available only for some hotels. Also, note that extracting AI summaries increases the number of request retries, leading to slower runs.",
221            "default": false
222          },
223          "language": {
224            "title": "Language",
225            "enum": [
226              "en",
227              "ab",
228              "aa",
229              "af",
230              "ak",
231              "sq",
232              "am",
233              "ar",
234              "an",
235              "hy",
236              "as",
237              "av",
238              "ae",
239              "ay",
240              "az",
241              "bm",
242              "ba",
243              "eu",
244              "be",
245              "bn",
246              "bh",
247              "bi",
248              "bs",
249              "br",
250              "bg",
251              "my",
252              "ca",
253              "ch",
254              "ce",
255              "ny",
256              "zh",
257              "cv",
258              "kw",
259              "co",
260              "cr",
261              "hr",
262              "cs",
263              "da",
264              "dv",
265              "nl",
266              "eo",
267              "et",
268              "ee",
269              "fo",
270              "fj",
271              "fi",
272              "fr",
273              "ff",
274              "gl",
275              "ka",
276              "de",
277              "el",
278              "gn",
279              "gu",
280              "ht",
281              "ha",
282              "he",
283              "iw",
284              "hz",
285              "hi",
286              "ho",
287              "hu",
288              "ia",
289              "id",
290              "ie",
291              "ga",
292              "ig",
293              "ik",
294              "io",
295              "is",
296              "it",
297              "iu",
298              "ja",
299              "jv",
300              "kl",
301              "kn",
302              "kr",
303              "ks",
304              "kk",
305              "km",
306              "ki",
307              "rw",
308              "ky",
309              "kv",
310              "kg",
311              "ko",
312              "ku",
313              "kj",
314              "la",
315              "lb",
316              "lg",
317              "li",
318              "ln",
319              "lo",
320              "lt",
321              "lu",
322              "lv",
323              "gv",
324              "mk",
325              "mg",
326              "ms",
327              "ml",
328              "mt",
329              "mi",
330              "mr",
331              "mh",
332              "mn",
333              "na",
334              "nv",
335              "nb",
336              "nd",
337              "ne",
338              "ng",
339              "nn",
340              "no",
341              "ii",
342              "nr",
343              "oc",
344              "oj",
345              "cu",
346              "om",
347              "or",
348              "os",
349              "pa",
350              "pi",
351              "fa",
352              "pl",
353              "ps",
354              "pt",
355              "qu",
356              "rm",
357              "rn",
358              "ro",
359              "ru",
360              "sa",
361              "sc",
362              "sd",
363              "se",
364              "sm",
365              "sg",
366              "sr",
367              "gd",
368              "sn",
369              "si",
370              "sk",
371              "sl",
372              "so",
373              "st",
374              "es",
375              "su",
376              "sw",
377              "ss",
378              "sv",
379              "ta",
380              "te",
381              "tg",
382              "th",
383              "ti",
384              "bo",
385              "tk",
386              "tl",
387              "tn",
388              "to",
389              "tr",
390              "ts",
391              "tt",
392              "tw",
393              "ty",
394              "ug",
395              "uk",
396              "ur",
397              "uz",
398              "ve",
399              "vi",
400              "vo",
401              "wa",
402              "cy",
403              "wo",
404              "fy",
405              "xh",
406              "yi",
407              "yo",
408              "za"
409            ],
410            "type": "string",
411            "description": "Select the desired language",
412            "default": "en"
413          },
414          "currency": {
415            "title": "Currency",
416            "enum": [
417              "USD",
418              "CAD",
419              "EUR",
420              "AED",
421              "AFN",
422              "ALL",
423              "AMD",
424              "ARS",
425              "AUD",
426              "AZN",
427              "BAM",
428              "BDT",
429              "BGN",
430              "BHD",
431              "BIF",
432              "BND",
433              "BOB",
434              "BRL",
435              "BWP",
436              "BYN",
437              "BZD",
438              "CDF",
439              "CHF",
440              "CLP",
441              "CNY",
442              "COP",
443              "CRC",
444              "CVE",
445              "CZK",
446              "DJF",
447              "DKK",
448              "DOP",
449              "DZD",
450              "EEK",
451              "EGP",
452              "ERN",
453              "ETB",
454              "GBP",
455              "GEL",
456              "GHS",
457              "GNF",
458              "GTQ",
459              "HKD",
460              "HNL",
461              "HRK",
462              "HUF",
463              "IDR",
464              "ILS",
465              "INR",
466              "IQD",
467              "IRR",
468              "ISK",
469              "JMD",
470              "JOD",
471              "JPY",
472              "KES",
473              "KHR",
474              "KMF",
475              "KRW",
476              "KWD",
477              "KZT",
478              "LBP",
479              "LKR",
480              "LTL",
481              "LVL",
482              "LYD",
483              "MAD",
484              "MDL",
485              "MGA",
486              "MKD",
487              "MMK",
488              "MOP",
489              "MUR",
490              "MXN",
491              "MYR",
492              "MZN",
493              "NAD",
494              "NGN",
495              "NIO",
496              "NOK",
497              "NPR",
498              "NZD",
499              "OMR",
500              "PAB",
501              "PEN",
502              "PHP",
503              "PKR",
504              "PLN",
505              "PYG",
506              "QAR",
507              "RON",
508              "RSD",
509              "RUB",
510              "RWF",
511              "SAR",
512              "SDG",
513              "SEK",
514              "SGD",
515              "SOS",
516              "SYP",
517              "THB",
518              "TND",
519              "TOP",
520              "TRY",
521              "TTD",
522              "TWD",
523              "TZS",
524              "UAH",
525              "UGX",
526              "UYU",
527              "UZS",
528              "VEF",
529              "VND",
530              "XAF",
531              "XOF",
532              "YER",
533              "ZAR",
534              "ZMK",
535              "ZWL"
536            ],
537            "type": "string",
538            "description": "Select the desired currency",
539            "default": "USD"
540          },
541          "locationFullName": {
542            "title": "Search",
543            "type": "string",
544            "description": "This is the location name as you would enter it in a Tripadvisor search. The scraper takes the first 'Location' type result as the desired location. Insert countries, cities, or neighborhoods."
545          }
546        }
547      },
548      "runsResponseSchema": {
549        "type": "object",
550        "properties": {
551          "data": {
552            "type": "object",
553            "properties": {
554              "id": {
555                "type": "string"
556              },
557              "actId": {
558                "type": "string"
559              },
560              "userId": {
561                "type": "string"
562              },
563              "startedAt": {
564                "type": "string",
565                "format": "date-time",
566                "example": "2025-01-08T00:00:00.000Z"
567              },
568              "finishedAt": {
569                "type": "string",
570                "format": "date-time",
571                "example": "2025-01-08T00:00:00.000Z"
572              },
573              "status": {
574                "type": "string",
575                "example": "READY"
576              },
577              "meta": {
578                "type": "object",
579                "properties": {
580                  "origin": {
581                    "type": "string",
582                    "example": "API"
583                  },
584                  "userAgent": {
585                    "type": "string"
586                  }
587                }
588              },
589              "stats": {
590                "type": "object",
591                "properties": {
592                  "inputBodyLen": {
593                    "type": "integer",
594                    "example": 2000
595                  },
596                  "rebootCount": {
597                    "type": "integer",
598                    "example": 0
599                  },
600                  "restartCount": {
601                    "type": "integer",
602                    "example": 0
603                  },
604                  "resurrectCount": {
605                    "type": "integer",
606                    "example": 0
607                  },
608                  "computeUnits": {
609                    "type": "integer",
610                    "example": 0
611                  }
612                }
613              },
614              "options": {
615                "type": "object",
616                "properties": {
617                  "build": {
618                    "type": "string",
619                    "example": "latest"
620                  },
621                  "timeoutSecs": {
622                    "type": "integer",
623                    "example": 300
624                  },
625                  "memoryMbytes": {
626                    "type": "integer",
627                    "example": 1024
628                  },
629                  "diskMbytes": {
630                    "type": "integer",
631                    "example": 2048
632                  }
633                }
634              },
635              "buildId": {
636                "type": "string"
637              },
638              "defaultKeyValueStoreId": {
639                "type": "string"
640              },
641              "defaultDatasetId": {
642                "type": "string"
643              },
644              "defaultRequestQueueId": {
645                "type": "string"
646              },
647              "buildNumber": {
648                "type": "string",
649                "example": "1.0.0"
650              },
651              "containerUrl": {
652                "type": "string"
653              },
654              "usage": {
655                "type": "object",
656                "properties": {
657                  "ACTOR_COMPUTE_UNITS": {
658                    "type": "integer",
659                    "example": 0
660                  },
661                  "DATASET_READS": {
662                    "type": "integer",
663                    "example": 0
664                  },
665                  "DATASET_WRITES": {
666                    "type": "integer",
667                    "example": 0
668                  },
669                  "KEY_VALUE_STORE_READS": {
670                    "type": "integer",
671                    "example": 0
672                  },
673                  "KEY_VALUE_STORE_WRITES": {
674                    "type": "integer",
675                    "example": 1
676                  },
677                  "KEY_VALUE_STORE_LISTS": {
678                    "type": "integer",
679                    "example": 0
680                  },
681                  "REQUEST_QUEUE_READS": {
682                    "type": "integer",
683                    "example": 0
684                  },
685                  "REQUEST_QUEUE_WRITES": {
686                    "type": "integer",
687                    "example": 0
688                  },
689                  "DATA_TRANSFER_INTERNAL_GBYTES": {
690                    "type": "integer",
691                    "example": 0
692                  },
693                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
694                    "type": "integer",
695                    "example": 0
696                  },
697                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
698                    "type": "integer",
699                    "example": 0
700                  },
701                  "PROXY_SERPS": {
702                    "type": "integer",
703                    "example": 0
704                  }
705                }
706              },
707              "usageTotalUsd": {
708                "type": "number",
709                "example": 0.00005
710              },
711              "usageUsd": {
712                "type": "object",
713                "properties": {
714                  "ACTOR_COMPUTE_UNITS": {
715                    "type": "integer",
716                    "example": 0
717                  },
718                  "DATASET_READS": {
719                    "type": "integer",
720                    "example": 0
721                  },
722                  "DATASET_WRITES": {
723                    "type": "integer",
724                    "example": 0
725                  },
726                  "KEY_VALUE_STORE_READS": {
727                    "type": "integer",
728                    "example": 0
729                  },
730                  "KEY_VALUE_STORE_WRITES": {
731                    "type": "number",
732                    "example": 0.00005
733                  },
734                  "KEY_VALUE_STORE_LISTS": {
735                    "type": "integer",
736                    "example": 0
737                  },
738                  "REQUEST_QUEUE_READS": {
739                    "type": "integer",
740                    "example": 0
741                  },
742                  "REQUEST_QUEUE_WRITES": {
743                    "type": "integer",
744                    "example": 0
745                  },
746                  "DATA_TRANSFER_INTERNAL_GBYTES": {
747                    "type": "integer",
748                    "example": 0
749                  },
750                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
751                    "type": "integer",
752                    "example": 0
753                  },
754                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
755                    "type": "integer",
756                    "example": 0
757                  },
758                  "PROXY_SERPS": {
759                    "type": "integer",
760                    "example": 0
761                  }
762                }
763              }
764            }
765          }
766        }
767      }
768    }
769  }
770}

🌴 Scrape Tripadvisor hotels, restaurants, and things to do OpenAPI definition

OpenAPI is a standard for designing and describing RESTful APIs, allowing developers to define API structure, endpoints, and data formats in a machine-readable way. It simplifies API development, integration, and documentation.

OpenAPI is effective when used with AI agents and GPTs by standardizing how these systems interact with various APIs, for reliable integrations and efficient communication.

By defining machine-readable API specifications, OpenAPI allows AI models like GPTs to understand and use varied data sources, improving accuracy. This accelerates development, reduces errors, and provides context-aware responses, making OpenAPI a core component for AI applications.

You can download the OpenAPI definitions for Tripadvisor Scraper from the options below:

If you’d like to learn more about how OpenAPI powers GPTs, read our blog post.

You can also check out our other API clients:

Developer
Maintained by Apify

Actor Metrics

  • 1.2k monthly users

  • 95 stars

  • 98% runs succeeded

  • 12 days response time

  • Created in Nov 2019

  • Modified 3 days ago

Categories