Apinoa Docs

Places

Find places on Tripadvisor.

View raw .mdx
GET | POST /v1/tripadvisor/places

Send parameters as a query string with GET, or as a JSON body with POST. Both are equivalent.

Request

curl "https://gateway.apinoa.com/v1/tripadvisor/places?q=hotels&category=hotels&near=Paris&country=US&limit=5" \
  -H "x-api-key: $APINOA_API_KEY"

Parameters

ParameterTypeRequiredNotes
categoryenumWhat to list: everything (default), restaurants, hotels, attractions (things to do, tours included), tours, destinations or airlines. all restaurants hotels attractions tours destinations airlines
countryenumThe market, as an ISO 3166 country code. US GB CA AU IN IE DE FR IT ES NL BR MX JP KR
cursorstringThe previous page's cursor. Pass it alone for the next page.
langstringInterface language.
limitinteger 1–120Results wanted (default 30, at most 120). More than one page is charged per page.
locationstringSearch as if from this point: lat,lng.
nearstringSearch around this place name, or a lat,lng point.
qstringThe query, search operators included.

The same parameters, and every response type, are in the OpenAPI document.

Response

Returns PlacesPage in data. A real response, shortened: arrays keep their first entries and long text is cut.

{
  "success": true,
  "data": {
    "engine": "tripadvisor",
    "query": "hotels",
    "outcome": "results",
    "near": "Paris",
    "country": "US",
    "lang": "en",
    "places": [
      {
        "id": "143336",
        "name": "Paris Las Vegas",
        "url": "https://www.tripadvisor.com/Hotel_Review-g45963-d143336-Reviews-Paris_Las_Vegas-Las_Vegas_Nevada.html",
        "categories": ["Hotel"],
        "rating": 3.9,
        "reviewCount": 40012,
        "photos": [
          "https://dynamic-media-cdn.tripadvisor.com/media/photo-o/2f/ac/a0/69/paris-las-vegas.jpg?w=1280&h=1103&s=1"
        ],
        "description": "Paris Las Vegas Hotel - A Caesars Rewards Destination. Experience everything you love about Paris, in the heart of the Las Vegas Strip. The city of lights shine…",
        "lang": "en",
        "ext": {
          "type": "hotel",
          "kind": "Hotel",
          "area": "Las Vegas, Nevada",
          "snippet": {
            "text": "But, I tought I scored a good deal on the site of Hotel Paris itself.",
            "highlights": [{"offset": 50, "length": 5}]
          },
          "mentions": 11474
        }
      },
      {
        "id": "228694",
        "name": "Hôtel Malte - Astotel",
        "url": "https://www.tripadvisor.com/Hotel_Review-g187147-d228694-Reviews-Hotel_Malte_Astotel-Paris_Ile_de_France.html",
        "categories": ["Hotel"],
        "rating": 4.9,
        "reviewCount": 3979,
        "photos": [
          "https://dynamic-media-cdn.tripadvisor.com/media/photo-o/33/44/57/47/breakfast-room.jpg?w=3100&h=2069&s=1"
        ],
        "description": "Located in the 2nd district next to the Stock Exchange, the Louvre and Place des Victoires, Hotel Malta provides a superb location for a memorable stay. Whether…",
        "lang": "en",
        "ext": {
          "type": "hotel",
          "kind": "Hotel",
          "area": "Paris, Ile-de-France, France",
          "snippet": {"text": "my favorite hotels in Paris.", "highlights": [{"offset": 12, "length": 6}]},
          "mentions": 1124
        }
      }
    ],
    "page": {"index": 1, "size": 30},
    "cursor": "mqcJOnHYbpBCunJIJ48vsmO-A5Os86AMsBlRwIKCGcjSCmu8wlAMK_qtGDrHUEyUilfZgT3-p7E8hFKOOKxWfDJYjjCqVQ5N8fTuGjLS6qvzKcKvxvsSJIjXemS4ncyeRCqsaRVN9KB5h_6R6P6vIFPoYJjWrTyO…",
    "fetchedAt": "2026-10-30T01:02:43.549Z",
    "ext": {
      "category": "hotels",
      "scope": {"type": "world"},
      "sections": [
        {
          "type": "listPreview",
          "contentType": "HOTELS",
          "title": "Hotels in Paris",
          "url": "https://www.tripadvisor.com/Hotels-g187147-Paris_Ile_de_France-Hotels.html",
          "geo": {
            "id": "187147",
            "name": "Paris",
            "url": "https://www.tripadvisor.com/Tourism-g187147-Paris_Ile_de_France-Vacations.html",
            "area": "Ile-de-France, France",
            "description": "Lingering over pain au chocolat in a sidewalk café, relaxing after a day of strolling along the Seine and marveling at icons like the Eiffel Tower and the Arc d…",
            "photo": "https://dynamic-media-cdn.tripadvisor.com/media/photo-o/17/15/6d/d6/paris.jpg?w=3575&h=2600&s=1"
          }
        }
      ]
    }
  }
}

Errors

StatusCodeMeaning
400INVALID_CURSORThe cursor is not one this operation returned. Start again without it.
400INVALID_PARAMSA parameter is missing, unknown or out of range, or the engine does not take it. The message names it.
401UNAUTHORIZEDThe x-api-key header is missing, or the key is revoked or unknown.
402INSUFFICIENT_BALANCEThe balance does not cover this call. Top up in the dashboard.
429MARKETPLACE_SATURATEDToo many concurrent calls. Retry after the Retry-After seconds.
502UPSTREAM_ERRORThe engine answered with something unusable. Retry with backoff.
503SERVICE_UNAVAILABLEA temporary failure. Retry with backoff.

Every code is listed in Errors. Failed calls are not billed.

Pricing

Price $0.0012 per call, plus $0.0012 for each extra call it makes — at most 3 more, so $0.0048 in total. List price; the rate steps down above 1,000 calls a day.

Notes

  • category picks what to list: restaurants, hotels, attractions, tours, destinations or airlines.
  • limit above one page reads further pages, one unit each.

On this page