API TripAdvisor Restaurants
Stato di salute dell'API
- Operatività nelle ultime 24 ore
- Normale
- Buono / normale
- Disponibile
- Limitato
- Quasi del tutto inattivo
Ultime 24 ore
Ultimi 30 giorni
Trova ristoranti su TripAdvisor per parola chiave con cucine, valutazione, numero di recensioni, posizione in città, fascia di prezzo e contatti. Disponibilità dei tavoli, menu e orari di apertura attuali non sono confermati.
Invia POST https://api.everyinfra.com/api/v1/social con platform impostato su tripadvisor e action impostato su restaurants. Prezzo $1.39 per 1.000 richieste ($0.001389 per chiamata). Le chiamate non riuscite e i risultati vuoti non vengono addebitati. Sincrona. Per i job più lenti, aggiungi "mode": "async" al corpo della richiesta, recupera il job_id ed esegui il polling.
Stessi parametri e campi di search, ma restituisce solo ristoranti.
Prompt per l'AI
#Aiutami a scrivere uno script di raccolta dei dati con l'endpoint TripAdvisor Restaurants di EveryInfra (tripadvisor/restaurants).
Come funziona l'endpoint:
- Richiesta: POST https://api.everyinfra.com/api/v1/social con l'header Authorization: Bearer <chiave API>. Leggi la chiave dalla variabile d'ambiente EVERYINFRA_API_KEY e non scriverla mai direttamente nel codice.
- Nel corpo della richiesta imposta platform su tripadvisor e action su restaurants, e inserisci i parametri in params.
- Parametri obbligatori:
- keyword: Stringa di ricerca per individuare un luogo. L'azione search cerca tra hotel, ristoranti e attrazioni, mentre restaurants e attractions limitano la ricerca alla rispettiva categoria.
- Parametri facoltativi:
- content_type: Filtra le foto del luogo per provenienza. I valori consentiti sono from_everyone (tutte le foto), from_management (caricate dal gestore) e from_travelers (caricate dai visitatori). (valori consentiti: from_everyone / from_management / from_travelers)
- currency: Codice valuta per i prezzi dei luoghi mostrati, con usd come predefinito (tra le opzioni comuni ci sono eur, gbp e cny). (valori consentiti: aed / afn / all / amd / ars / aud / azn / bam)
- lang: Codice lingua di due lettere (ad es. en o zh) per search, profile, restaurants e attractions. L'azione reviews non accetta questo parametro. (valori consentiti: aa / ab / ae / af / ak / am / an / ar)
- limit: Numero massimo di righe da restituire in questa chiamata: un intero da 1 a 30. Se lo ometti, viene applicato il valore predefinito; una chiamata può restituire meno righe. (predefinito: 10)
- Restituisce un elenco di record. Campi principali di ogni record: id, name, category, url, text, rating, rating_scale, review_count, price_level, ranking, address, city; 21 campi in totale, elenco completo su https://api.everyinfra.com/api/v1/social/catalog?platform=tripadvisor.
- Esempio di corpo della richiesta:
{
"platform": "tripadvisor",
"action": "restaurants",
"params": {
"keyword": "Tokyo"
}
}
- Prezzo: $1.39 per 1.000 richieste; le richieste non riuscite e i risultati vuoti non vengono addebitati.
- Per decine o centinaia di target, aggiungi "mode": "async" al corpo: ricevi subito un job_id ed esegui il polling su GET https://api.everyinfra.com/api/v1/jobs/{job_id} per ottenere il risultato.
- In caso di 422, correggi la richiesta usando i nomi dei parametri e i valori consentiti suggeriti nell'errore; in caso di 429 o 503, attendi il tempo indicato da Retry-After e riprova.
Prima di scrivere il codice, chiedimi quali target mi servono, quanti, quali campi e quale formato di output voglio; poi conferma con me il piano e il costo indicativo.Parametri della richiesta
#| Nome | Posizione | Tipo | Obbligatorio | Predefinito | Descrizione |
|---|---|---|---|---|---|
Authorization | header | string | Sì | - | Bearer seguito dalla tua chiave API. Creala nella console; non inserirla mai in un URL o in un repository di codice. |
platform | body | string | Sì | tripadvisor | Identificativo della piattaforma, valore fisso. |
action | body | string | Sì | restaurants | Identificativo della funzionalità, valore fisso. |
keyword | body.params | string | Sì | - | Stringa di ricerca per individuare un luogo. L'azione search cerca tra hotel, ristoranti e attrazioni, mentre restaurants e attractions limitano la ricerca alla rispettiva categoria. Aggiungere il nome della città aiuta a distinguere locali con lo stesso nome. Questo parametro non esegue ricerche full-text nelle recensioni. |
content_type | body.params | string (enum) | No | - | Filtra le foto del luogo per provenienza. I valori consentiti sono from_everyone (tutte le foto), from_management (caricate dal gestore) e from_travelers (caricate dai visitatori). Non filtra le categorie di luoghi come hotel, ristoranti o attrazioni: per un tipo di luogo specifico scegli l'azione corrispondente.Valori consentitifrom_everyonefrom_managementfrom_travelers |
currency | body.params | string (enum) | No | - | Codice valuta per i prezzi dei luoghi mostrati, con usd come predefinito (tra le opzioni comuni ci sono eur, gbp e cny). L'enumerazione completa dello schema è mantenuta, ma i codici storici supportati potrebbero non restituire prezzi attivi in tempo reale. Questo parametro non cambia la valuta di fatturazione dell'API.Valori consentitiaedafnallamdarsaudaznbambdtbgnbhdbifbndbobbrlbwpbynbzdcadcdfchfclpcnycopcrccveczkdjfdkkdopdzdeekegpernetbeurgbpgelghsgnfgtqhkdhnlhrkhufidrilsinriqdirriskjmdjodjpykeskhrkmfkrwkwdkztlbplkrltllvllydmadmdlmgamkdmmkmopmurmxnmyrmznnadngnnionoknprnzdomrpabpenphppkrplnpygqarronrsdrubrwfsarsdgseksgdsossypthbtndtoptryttdtwdtzsuahugxusduyuuzsvefvndxafxofyerzarzmkzwl |
lang | body.params | string (enum) | No | - | Codice lingua di due lettere (ad es. en o zh) per search, profile, restaurants e attractions. L'azione reviews non accetta questo parametro.Valori consentitiaaabaeafakamanarasavayazbabebgbhbibmbnbobrbscacechcocrcscucvcydadedveeeleneoeseteufafffifjfofrfygagdglgngugvhahehihohrhthuhyhziaidieigiiikioisitiuiwjajvkakgkikjkkklkmknkokrkskukvkwkylalblglilnloltlulvmgmhmimkmlmnmrmsmtmynanbndnengnlnnnonrnvnyocojomorospapiplpsptqurmrnrorurwsascsdsesgsiskslsmsnsosqsrssstsusvswtatetgthtitktltntotrtstttwtyugukuruzvevivowawoxhyiyozazh |
limit | body.params | integer (1–30) | No | 10 | Numero massimo di righe da restituire in questa chiamata: un intero da 1 a 30. Se lo ometti, viene applicato il valore predefinito; una chiamata può restituire meno righe. I valori più alti restituiscono 422 prima di qualsiasi addebito. |
Esempi di codice
#curl -X POST 'https://api.everyinfra.com/api/v1/social' \
-H "Authorization: Bearer $EVERYINFRA_API_KEY" \
-H 'Content-Type: application/json' \
--data-raw '{
"platform": "tripadvisor",
"action": "restaurants",
"params": {
"keyword": "Tokyo"
}
}'Definizione OpenAPI (JSON)Gli esempi leggono la chiave dalla variabile d'ambiente EVERYINFRA_API_KEY; il codice copiato non contiene mai la tua chiave.
Esempio di risposta
#{ "id": "req_…", "platform": "tripadvisor", "action": "restaurants", "results": [ { "id": "3871559", "name": "Uobei Shibuya Dogenzaka", "category": "restaurant", "url": "https://www.tripadvisor.com/Restaurant_Review-g1066456-d3871559-Reviews-Uobei_Shibuya_Dogenzaka-Shibuya_Tokyo_Tokyo_Prefecture_Kanto.html", "rating": 4.4, "review_count": 1095, "price_level": "$", "ranking": "#29 of 7,216 Restaurants in Shibuya", "address": "2-29-11 Dogenzaka 1f, Shibuya, Tokyo Prefecture 150-0043", "city": "Shibuya", "country": "JP", "location": "Shibuya, Tokyo", "phone": "•••", "website": "http://www.genkisushi.co.jp/uobei/", "latitude": 35.659435, "longitude": 139.69792, "image_url": "https://media-cdn.tripadvisor.com/media/photo-o/2b/0d/8a/42/caption.jpg", "platform": "tripadvisor", "cuisines": [ "Japanese", "Seafood", "Fast Food" ], "rating_scale": 5 }, { "id": "13205866", "name": "Ore No Yakiniku, Ginza 4 Chome", "category": "restaurant", "url": "https://www.tripadvisor.com/Restaurant_Review-g14129573-d13205866-Reviews-Ore_No_Yakiniku_Ginza_4_Chome-Ginza_Chuo_Tokyo_Tokyo_Prefecture_Kanto.html", "rating": 4, "review_count": 21, "price_level": "$$", "ranking": "#303 of 3,106 Restaurants in Ginza", "address": "4-10-10 Ginza Sanno Building, basement 1st floor, Ginza, Tokyo Prefecture 104-0061", "city": "Ginza", "country": "JP", "location": "Ginza, Chuo", "phone": "•••", "website": "http://www.oreno.co.jp/restaurant/yakiniku_ginza4", "latitude": 35.67006, "longitude": 139.76701, "image_url": "https://media-cdn.tripadvisor.com/media/photo-o/31/bd/32/3b/4.jpg", "platform": "tripadvisor", "cuisines": [ "Barbecue", "Grill" ], "rating_scale": 5 } ], "count": 10, "billing": { "charged": …, "charged_usd": …, "balance_after_usd": …, … }, "quota": { … }}
Campi della risposta
#I dati di business si trovano in results. La tabella elenca i campi che un record può contenere; i valori che la piattaforma non mostra non vengono mai inventati.
| Campo | Significato |
|---|---|
id | ID univoco del record sulla piattaforma. È univoco solo all'interno di una piattaforma; gli ID possono ripetersi tra piattaforme diverse. |
name | Nome dell'oggetto stesso, per le funzionalità relative ad account, prodotti e attività. |
category | Nome della categoria secondo la tassonomia della piattaforma, non normalizzato tra piattaforme. |
url | Link al record sulla piattaforma. |
text | Testo del contenuto senza HTML, restituito per intero e mai troncato (su alcune piattaforme i risultati degli elenchi contengono solo un estratto; lo indicano le note sui campi della piattaforma). |
rating | Valutazione. La scala varia in base alla piattaforma: rating_scale nella stessa riga indica il valore massimo (di solito 5; Booking, Douban, iQIYI e NAVER usano 10). Converti con rating_scale prima di confrontare piattaforme diverse, altrimenti il confronto può risultare invertito. |
rating_scale | Valore massimo di rating nella stessa riga: 5 per le scale a cinque stelle, 10 per quelle a dieci punti. Presente solo se la riga ha una valutazione. |
review_count | Numero di recensioni, per le funzionalità relative a prodotti e attività. null significa non reso noto, non 0. |
price_level | Mantiene il significato attribuito dalla piattaforma |
ranking | Mantiene il significato attribuito dalla piattaforma |
address | Indirizzo completo, passato così com'è. |
city | Nome della città nella lingua della piattaforma, non normalizzato. |
country | Paese o regione: nome completo o codice ISO a seconda della piattaforma, non normalizzato. |
location | Descrizione della località passata così com'è; il formato varia in base alla piattaforma. |
phone | Numero di telefono di contatto, passato senza normalizzarne il formato. |
email | Indirizzo email di contatto, passato così com'è. |
website | Sito web esterno indicato dall'account o dall'attività. |
latitude | Mantiene il significato attribuito dalla piattaforma |
longitude | Mantiene il significato attribuito dalla piattaforma |
image_url | Link all'immagine. Le funzionalità con più immagini possono restituire un array image_urls. |
platform | Identificativo della piattaforma di origine, uguale a platform nella richiesta (ad esempio xiaohongshu, tiktok). |
cuisines | Mantiene il significato attribuito dalla piattaforma |
Errori e addebiti
#- 401
- Chiave mancante o non valida.
- 402
- Saldo insufficiente. Effettua prima una ricarica.
- 422
- Nome o valore del parametro non valido. Correggilo seguendo i suggerimenti dell'errore. Nessun addebito.
- 429
- Raggiunto il limite di richieste al minuto. Attendi il tempo indicato da Retry-After, poi riprova.
- 503
- Impossibile completare. L'importo trattenuto torna sul tuo saldo. Se l'esito è incerto, verificalo prima di riprovare.
- Risposta 200 vuota
- Nessun dato. Nessun addebito.