GET/api/v4/review-phrases

리뷰 문구 목록 조회

사업장의 리뷰에서 고객이 가장 많이 사용하는 문구를 각 문구의 리뷰 통계와 함께 반환합니다.

API 키가 필요합니다. 헤더 형식과 키 교체는 인증을 참고하세요.

매개변수

쿼리

이름유형필수설명기본값
locationIdsstring선택JSON 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.—
siteUrlsstring선택JSON array of review sources to include, e.g. `["maps.google.com"]`.—
startDatestring선택Only count reviews on or after this date (`YYYY-MM-DD`).—
endDatestring선택Only count reviews on or before this date (`YYYY-MM-DD`).—
searchStringstring선택Only return phrases containing this substring.—
phraseCountinteger선택Maximum number of phrases to return.—
categoriesstring선택JSON array of interaction categories to include (see the interaction attributes reference).—
ratingFiltersstring선택JSON array of star ratings to include, e.g. `[1,2]` to mine only unhappy reviews.—
responseStatusstring선택JSON array of `RESPONDED` / `PENDING` to restrict by whether the review has an owner reply.—
sortOrderstring선택One of `NEWEST_FIRST`, `OLDEST_FIRST`, `LAST_RESPONDED`, `LOWEST_RATING`, `HIGHEST_RATING`.—
categorystring선택Deprecated single-value form of `categories`. Kept for v4 compatibility; prefer `categories`.—
ratingFilterinteger선택Deprecated single-value form of `ratingFilters`. Kept for v4 compatibility; prefer `ratingFilters`.—

응답

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`).

사업장의 리뷰 텍스트에서 반복적으로 나타나는 문구를 각 문구가 포함된 리뷰만을 대상으로 산출한 리뷰 통계와 함께 반환합니다. 이를 통해 "고객이 계속 언급하는 내용은 무엇이며, 그 언급은 긍정적인가 부정적인가?"라는 질문에 답할 수 있습니다.

data.newReviewPhrases는 페이지가 나뉜 응답이 아니라 최상위 배열입니다. phraseCount를 사용하여 배열의 길이를 제한합니다.

각 항목에는 다음이 포함됩니다:

  • reviewPhrase: 문구 자체입니다.
  • phraseStats.stats: 상호작용 분석 조회와 동일한 { name, value, delta } 구조이며, 해당 문구가 포함된 리뷰만을 대상으로 산출한 통계에 백분율이 아닌 절대 변화량을 담은 abs 필드가 추가됩니다.

모든 필터는 선택 사항이며 함께 적용할 수 있으므로, 이 엔드포인트는 리뷰 텍스트 검색에도 쓸 수 있습니다. ratingFilters=[1,2]를 startDate와 함께 사용하면 지난 한 달 동안의 불만 사항을 반복 빈도순으로 확인할 수 있습니다.

사용 사례: "주요 불만 사항" 패널

사업장의 불만 사항 패널을 만들려면 ratingFilters=[1,2], 90일 전으로 설정한 startDate, phraseCount=10을 사용하여 이 엔드포인트를 호출합니다. 결과는 평점이 낮은 리뷰에 가장 자주 나타나는 문구 10개입니다. 각 문구에서 overall-rating의 phraseStats를 확인하면 해당 문구가 실제로 이례적인지 아니면 단순히 흔히 쓰이는 표현인지 알 수 있으며, delta는 상황이 악화되고 있는지를 나타냅니다.

쿼리 값은 JSON으로 파싱되므로, 배열은 쿼리 문자열에 JSON 형식으로 넣습니다: ?ratingFilters=[1,2]&siteUrls=["maps.google.com"].

위 응답은 예시입니다.

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