/api/v1/places매장 검색
키워드·지역·카테고리·신뢰도로 정제된 매장(원셋)을 검색합니다. 기본 정렬은 discovery(질의 적합·최신성·교차검증·완성도를 함께 보는 추천 정렬)이며 페이지네이션됩니다. fields로 받을 필드를 고르세요.
인증 필요 (Bearer / X-API-Key 헤더 권장)
체험존에서 실행 →파라미터
keywordstring선택상호·주소·메뉴명 부분검색 · 예시:버거킹region_codestring선택행정동 코드business_categorystring선택카테고리(restaurant/cafe…) · 예시:restaurantmin_confidencenumber선택최소 신뢰도(0~1) · 예시:0.6sortstring선택discovery(기본·유일) — 추천 정렬. 좌표가 없어 distance는 쓸 수 없습니다. 응답 meta.sort는 '실제로 적용된' 정렬이라 넓은 검색에서는 reviews로 낮아질 수 있습니다. · 예시:discoveryrecommended_forstring선택상황으로 좁히기(콤마, 모두 포함). 자연어도 해석됨: 회식→group_dining, 혼밥→solo_dining, 상견례→formal_gathering. 값: solo_dining·date·group_dining·family·business_meeting·formal_gathering·late_night 등. 전체·별칭은 /api/v1/meta. · 예시:group_diningatmospherestring선택분위기(콤마). quiet·lively·view·cozy·trendy·spacious·traditional·clean·work_study·rainy_mood. 조용한→quiet 같은 자연어도 해석. · 예시:quietparkingboolean선택주차 확인된 곳만. 세부 유형은 parking_type. · 예시:trueparking_typestring선택주차 유형: onsite·valet·partner·nearby·none. 발렛→valet 등 자연어 해석. · 예시:onsitereservableboolean선택예약 가능한 곳만(크롤 확인 + 유미 파트너 매장 포함). · 예시:truepayment_methodsstring선택결제수단 모두 포함(콤마). cash·card·naver_pay·kakao_pay·toss_pay·zero_pay·alipay·wechat_pay 등. · 예시:alipayservesstring선택제공 품목(콤마). coffee·alcohol·dessert·vegetarian·vegan. · 예시:alcoholdietarystring선택식단(콤마). vegan_options·vegetarian_options·fully_vegan·mixed_group_suitable. 자연어도 해석(비건/vegan/plant-based→vegan_options, 채식/vegetarian→vegetarian_options, 혼합식단/mixed→mixed_group_suitable). '비건 친구랑 같이 먹을 곳'은 mixed_group_suitable — 비건 '식사'가 확인된 곳만 걸린다(비건 음료뿐인 카페는 제외). · 예시:vegan_optionsforeign_languagesstring선택외국어 응대 가능 언어(ISO 639-1, 콤마·모두 포함). en·zh·ja·es·de·fr. 사장님이 확인한 값. '영어→en, 일본어→ja' 같은 자연어도 해석. 예: 외국인 손님용 '영어 되는 곳'. · 예시:enpet_friendlyboolean선택그 밖의 boolean presence 필터의 예. 파라미터만 붙이면 =true(있다고 확인된 곳만). 지원 목록 전체(wifi·private_room·outdoor_seating·group_friendly·takeout·delivery·corkage_free·has_promotion 등)는 /api/v1/meta의 filters.boolean. · 예시:trueopen_atstring선택그 시각(또는 그 시간대)에 영업하는 곳만(한국시간). 한 시각: 2026-08-26T19:00 · '2026-08-26 19:00' · '19:00'(오늘) · 'now'. 식사 시간대: 'lunch'·'점심'(11:00~14:00) · 'dinner'·'저녁'(17:30~21:00) · breakfast · brunch · late_night, 직접 범위 '11:00-14:00', 날짜와 조합 '2026-08-29 lunch'. 상대 날짜는 오늘·내일·모레(today/tomorrow)만 해석합니다(그 밖은 절대 날짜로 보내세요). 시간대는 그 구간에 **일부라도** 영업하면 통과하며 응답 meta.openAt.window로 해석한 범위를 돌려줍니다. 정기 영업시간·라스트오더·브레이크타임 기준이며 자정 넘김 영업도 처리합니다. 임시휴무·만석은 알 수 없습니다. 영업시간이 확인되지 않은 매장은 기본 제외되고 meta.openAt.unknownHoursExcluded로 알립니다. · 예시:2026-08-26T19:00include_unknown_hoursboolean선택open_at 전용 탈출구. true면 영업시간이 확인되지 않은 매장도 함께 반환합니다(그 매장은 '그 시각에 영업한다'가 아니라 '모름'입니다). · 예시:truereservation_channelstring선택예약 경로(콤마 = OR): yumi(유미 API로 바로 예약 — POST /api/v1/reservations) · external(외부 예약 링크) · phone(전화). '예약을 받는다'와 '그 시각에 자리가 있다'는 다른 문제입니다 — 실제 좌석 가능 여부는 예약 요청으로만 확인됩니다. · 예시:yumifieldsstring선택받을 필드 선택(Field Mask). 콤마 구분 · 등급명(core/contact_hours/quality/edge/media)·all·개별 필드명. 미지정 시 core. 호출 토큰 = 요청 필드 중 최고 등급(요청당 과금, page_size 무관). 사장님 업로드 사진은 photos(media, 최상위 단가 8 — 매장·메뉴 이미지 URL)로 받고, 목록에선 photoCount(quality)로 개수만 싸게 볼 수 있습니다. recommendedFor에는 solo_dining, late_night, late_night_eatery 같은 상황 태그가 포함될 수 있습니다. · 예시:core,rating,accessHintspageinteger선택페이지(기본 1) · 예시:1page_sizeinteger선택페이지당 개수(최대 100). 토큰에 영향 없음(요청당 과금). 일반 API는 최대 5,000개 결과창까지만 접근하며, 그 이상은 Bulk Export. · 예시:20
응답 예시
json
{
"success": true,
"data": [
{
"id": "11892345",
"name": "콩부자 홍제점",
"category": "restaurant",
"categoryLabel": "국밥",
"location": {
"lat": 37.5891,
"lng": 126.9436
},
"address": {
"road": "서울 서대문구 통일로 450",
"jibun": "서울 서대문구 홍제동 330"
},
"regionCode": "1141011100",
"confidence": 0.64,
"sourceCount": 2,
"possiblyClosed": false,
"lastSeenAt": "2026-06-18T03:00:00.000Z"
}
],
"meta": {
"total": 5,
"page": 1,
"pageSize": 20,
"totalPages": 1
}
}