GET/api/v4/review-phrases

Elenca le espressioni nelle recensioni

Restituisce le espressioni più usate dai clienti nelle recensioni di una sede, ciascuna con le proprie statistiche sulle recensioni.

Richiede una chiave API. Consulta Autenticazione per il formato dell’header e la rotazione delle chiavi.

Parametri

Query

NomeTipoObbligatorioDescrizionePredefinito
locationIdsstringfacoltativoJSON array of location IDs to aggregate over, e.g. `[1800289,1800290]`. Query values are JSON-parsed, so a bare single ID also works. Omit to cover every location the key can read.—
siteUrlsstringfacoltativoJSON array of review sources to include, e.g. `["maps.google.com"]`.—
startDatestringfacoltativoOnly count reviews on or after this date (`YYYY-MM-DD`).—
endDatestringfacoltativoOnly count reviews on or before this date (`YYYY-MM-DD`).—
searchStringstringfacoltativoOnly return phrases containing this substring.—
phraseCountintegerfacoltativoMaximum number of phrases to return.—
categoriesstringfacoltativoJSON array of interaction categories to include (see the interaction attributes reference).—
ratingFiltersstringfacoltativoJSON array of star ratings to include, e.g. `[1,2]` to mine only unhappy reviews.—
responseStatusstringfacoltativoJSON array of `RESPONDED` / `PENDING` to restrict by whether the review has an owner reply.—
sortOrderstringfacoltativoOne of `NEWEST_FIRST`, `OLDEST_FIRST`, `LAST_RESPONDED`, `LOWEST_RATING`, `HIGHEST_RATING`.—
categorystringfacoltativoDeprecated single-value form of `categories`. Kept for v4 compatibility; prefer `categories`.—
ratingFilterintegerfacoltativoDeprecated single-value form of `ratingFilters`. Kept for v4 compatibility; prefer `ratingFilters`.—

Risposte

200Phrases with their per-phrase review stats. Response key `newReviewPhrases`, a top-level array.
Response
{  "data": {    "newReviewPhrases": [      {        "reviewPhrase": "friendly staff",        "phraseStats": {          "stats": [            { "name": "total-reviews", "value": 46, "delta": 12.5, "abs": 5 },            { "name": "overall-rating", "value": 4.7, "delta": 1.1, "abs": 0.05 }          ]        }      },      {        "reviewPhrase": "long wait",        "phraseStats": {          "stats": [            { "name": "total-reviews", "value": 11, "delta": 37.5, "abs": 3 },            { "name": "overall-rating", "value": 2.9, "delta": -8.4, "abs": -0.27 }          ]        }      }    ]  }}
401Unauthenticated, missing or invalid API key.
403The key is valid but not permitted to read one of the requested locations (`SY90003`).

Restituisce le espressioni ricorrenti nel testo delle recensioni di una sede, ciascuna con le statistiche relative al sottoinsieme di recensioni che la contengono. Risponde alla domanda "che cosa continuano a menzionare i clienti e queste menzioni sono positive o negative?".

data.newReviewPhrases è un array di primo livello, non una risposta paginata. Usa phraseCount per limitarne la lunghezza.

Ogni voce contiene:

  • reviewPhrase: l'espressione stessa.
  • phraseStats.stats: la stessa struttura { name, value, delta } di Ottieni le analisi delle interazioni, calcolata solo sulle recensioni che contengono quell'espressione, più un campo abs che riporta la variazione assoluta (anziché percentuale).

Tutti i filtri sono facoltativi e combinabili, quindi la route funge anche da ricerca testuale nelle recensioni: ratingFilters=[1,2] con startDate restituisce le lamentele dell'ultimo mese, ordinate in base alla frequenza con cui ricorrono.

Caso d'uso: un pannello delle "lamentele più frequenti"

Per creare un pannello delle lamentele per una sede, chiama questa route con ratingFilters=[1,2], un valore startDate risalente a 90 giorni fa e phraseCount=10. Il risultato è costituito dalle dieci espressioni che compaiono più spesso nelle recensioni con valutazioni basse. Leggere phraseStats per overall-rating per ciascuna espressione ti indica se si tratta di un'effettiva anomalia o semplicemente di lessico comune, mentre delta indica se la situazione sta peggiorando.

Poiché i valori della query vengono interpretati come JSON, gli array vanno inseriti nella stringa di query in formato JSON: ?ratingFilters=[1,2]&siteUrls=["maps.google.com"].

La risposta riportata sopra è un esempio.

Request
curl -X GET 'https://listingsapi.com/api/v4/review-phrases' \  -H "Authorization: API $LISTINGSAPI_KEY"