Appearance
리뷰 조회
브랜드에 속한 매장들의 리뷰 목록을 반환합니다. 리뷰 작성일 최신순입니다.
GET /partner/v1/brands/{brand_code}/reviewsRequest
bash
curl -H 'x-partner-api-key: YOUR_API_KEY' \
'https://api.lemong.ai/partner/v1/brands/BRAND100/reviews?from=2026-08-01&to=2026-08-31&limit=50'쿼리 파라미터
| 파라미터 | 타입 | 설명 |
|---|---|---|
from | YYYY-MM-DD | 리뷰 작성일 시작 (KST 기준, 포함) |
to | YYYY-MM-DD | 리뷰 작성일 끝 (KST 기준, 포함) |
platform_shop_id | string | 특정 매장만 |
platform | enum | 특정 플랫폼만 |
rating_min | 0~5 | 별점 하한 (포함) |
rating_max | 0~5 | 별점 상한 (포함) |
replied | true/false | 답변 상태로 필터 |
critical | true/false | 불만족 리뷰만 / 제외 |
handled | true/false | 대응 완료 여부 |
keyword | string | 리뷰 본문 또는 주문 메뉴 검색 |
page | number | 기본 1 |
limit | number | 기본 20, 최대 100 |
rating_min / rating_max는 소수점을 내린 값(ex.4.5 → 4)으로 비교합니다 (0.5점만 예외로 1점으로 처리함). 별점 없는 리뷰는 0으로 취급하므로, rating_min=1 을 주면 제외되고 rating_max=0 을 주면 별점 없는 리뷰만 조회됩니다.
keyword는 리뷰 본문(content)과 주문 메뉴(menus) 중 한 곳이라도 포함하면 조회됩니다. 부분 일치이며 최대 50자입니다.
bash
curl -H 'x-partner-api-key: YOUR_API_KEY' \
'https://api.lemong.ai/partner/v1/brands/BRAND100/reviews?from=2026-08-01&to=2026-08-31&keyword=%EB%B0%B0%EB%8B%AC'WARNING
keyword는 인덱스를 타지 않아 다른 필터보다 느립니다. 기간을 좁혀서 호출해 주세요.
Response
json
{
"status": "SUCCESS",
"status_code": 200,
"message": "OK",
"data": {
"items": [
{
"review_id": "1234567890",
"platform_shop_id": "123456789",
"shop_name": "몽도시락 강남점",
"platform": "BAEMIN",
"date": "2026-08-12T18:24:11+09:00",
"content": "배달이 늦었지만 음식은 맛있었어요",
"rating": 3,
"menus": ["제육도시락", "콜라"],
"reply_status": "REPLIED",
"reply_content": "늦어져 죄송합니다. 다음엔 더 빠르게 준비하겠습니다.",
"reply_date": "2026-08-12T20:10:33+09:00",
"is_critical": true,
"is_handled": true
},
{
"review_id": "12345678901",
"platform_shop_id": "12345678",
"shop_name": "몽도시락 강남점",
"platform": "NAVER",
"date": "2026-08-11T12:03:52+09:00",
"content": "",
"rating": 4.5,
"menus": null,
"reply_status": "NOT_REPLIED",
"reply_content": null,
"reply_date": null,
"is_critical": false,
"is_handled": false
}
],
"page": 1,
"limit": 50,
"has_next": true
}
}Description
| 필드 | 타입 | 설명 |
|---|---|---|
review_id | string | 리뷰 식별자. 단건 조회 경로에 사용 |
platform_shop_id | string | 플랫폼 측 매장 id. 매장 조회 결과의 같은 필드와 매칭 |
shop_name | string | 매장명 |
platform | enum | 플랫폼 |
date | string (KST) | 리뷰 작성일 |
content | string | 리뷰 원문. 텍스트 없는 별점 리뷰는 빈 문자열 |
rating | float | null | 별점 1~5. 별점 없는 리뷰는 null |
menus | string[] | 주문 메뉴 |
reply_status | enum | 답변 상태 |
reply_content | string | null | 답변 내용. 미답변이면 null |
reply_date | string (KST) | null | 답변 일시. 미답변이면 null |
is_critical | boolean | 불만족 리뷰 여부 |
is_handled | boolean | 대응 여부 — 답변 게시 또는 부정 리뷰 알림 발송 |
platform 값
| 값 | 플랫폼 |
|---|---|
BAEMIN | 배달의민족 |
CPEATS | 쿠팡이츠 |
YOGIYO | 요기요 |
DDANGYO | 땡겨요 |
NAVER | 네이버 플레이스 |
MUKKEBI | 먹깨비 |
reply_status 값
| 값 | 의미 |
|---|---|
REPLIED | 답변완료 |
NOT_REPLIED | 미답변 |
TIP
리뷰는 플랫폼에서 수집하므로 작성 직후 바로 조회되지 않습니다. 주기적으로 수집하기를 참고하세요.
댓글몽 화면의 미답변/답변완료 탭과 같은 기준입니다. 점주가 플랫폼에서 직접 단 답변도 답변완료로 잡히며, reply_content에 내용이 함께 나갑니다. 댓글 작성 예약 혹은 실패 상태는 미답변으로 판단합니다.
rating
별점은 1.0 ~ 5.0점 입니다. 4.5와 같은 0.5점 단위의 소수점이 올 수 있습니다. 별점 없이 텍스트만 등록된 리뷰는 null 입니다.
부정 리뷰(is_critical) 판정 기준
댓글몽 BIZ의 불만족 리뷰 관리 화면과 동일한 기준입니다.
- 별점이 브랜드에 설정된 불만족 별점 구간에 드는 경우. 이때 별점은 소수점을 내린 값(
4.5→4)으로 비교합니다. - 리뷰 내용으로 AI가 부정 리뷰로 판단한 경우.
두 조건은 OR이며 둘 중 하나만 부합하여도 true로 판단합니다. 별점이 높아도 AI의 판단이 부정이면 true이고, 별점이 없는 리뷰는 AI의 판단으로만 판정됩니다.
critical필터도 같은 조건을 씁니다.
Error Case
json
{
"status": "PARTNER_API_BRAND_NOT_FOUND",
"status_code": 404,
"message": "요청을 처리할 수 없습니다."
}status_code | status | 이 API 에서 발생하는 경우 |
|---|---|---|
| 400 | PARTNER_API_INVALID_PARAMETER | 날짜 형식 오류, 별점/불리언 값 오류, keyword 50자 초과 |
| 401 | PARTNER_API_KEY_REQUIRED | x-partner-api-key 헤더 누락 |
| 401 | PARTNER_API_KEY_INVALID | 등록되지 않은 키 |
| 401 | PARTNER_API_KEY_INACTIVE | 폐기된 키 |
| 401 | PARTNER_API_KEY_EXPIRED | 만료된 키 |
| 403 | PARTNER_API_FORBIDDEN | 비활성화된 협력사 (담당자 문의) |
| 404 | PARTNER_API_BRAND_NOT_FOUND | brand_code 가 없거나 이 키의 범위 밖 |
| 404 | PARTNER_API_NOT_FOUND | 잘못된 URL 경로 |
| 429 | PARTNER_API_RATE_LIMITED | 호출 제한 초과 (분당 100회) |
| 500 | PARTNER_API_INTERNAL_ERROR | 서버 오류 |