메인 콘텐츠로 건너뛰기
Place Lookup으로 AI 엔진이 매장, 지점, 병원 하나를 어떻게 보여주는지 확인합니다. 엔진은 각자 지도 DB의 장소 정보를 보여줍니다. Gemini, Copilot, Google 검색 결과 페이지는 Google 지도 정보를, 네이버 AI 탭은 네이버 플레이스 정보를, ChatGPT는 Yelp, Tripadvisor, Google 지도 같은 피드의 정보를 보여줍니다. 조회 결과는 엔진마다 어떤 장소 정보를 썼고 무엇이 틀렸는지 알려주므로, 어느 등록 정보를 고쳐야 하는지 알 수 있습니다.

조회 제출

조회는 엔진마다 질문 두 개를 보냅니다. 질문 하나가 그 엔진의 일반 태스크이고, 응답이 그 목록을 돌려줍니다.
lookup.status가 COMPLETED가 될 때까지 GET /v1/place-lookup/{id}로 조회를 읽습니다. 대부분의 조회는 2분 안에 끝나므로 5~10초 간격으로 폴링하세요. 조회는 webhook을 보내지 않습니다. 요청 스키마는 API 레퍼런스에 있습니다.

요청 필드

다른 필드는 webhook을 포함해 400 VALIDATION_ERROR를 반환합니다.

조회가 묻는 방식

엔진마다 질문 두 개를 보냅니다. ChatGPT, Gemini, Copilot에는 매장을 지도로 보여달라고 묻고, 두 번째 질문에는 주소를 붙입니다. Google 검색 결과 페이지에서는 매장 위치를 검색하고, 이어서 매장 핀 좌표에서 매장 이름을 검색합니다. 네이버 AI 탭에는 매장 위치를 묻고, 이어서 매장 이름을 묻습니다. KR 매장은 한국어로 묻습니다. ChatGPT의 두 번째 질문만 영어 Show {name} on a map입니다. ChatGPT가 영어 질문에 한국 매장의 장소 카드를 더 자주 보여주기 때문입니다. place.address가 없으면 두 번째 질문에 주소를 붙이는 엔진은 첫 질문을 한 번 더 묻습니다. place.location이 없으면 KR 밖에서는 Google의 두 번째 검색에 주소를 붙입니다. 결과의 via[]에 실제로 보낸 질문이 그대로 있습니다.

결과 읽기

Canlis 조회의 주요 필드만 남기면 아래와 같습니다.
ChatGPT는 이 레스토랑의 Yelp 정보를 보여줬습니다. Gemini와 Copilot은 같은 Place ID의 같은 Google 지도 정보를 보여줬습니다. Google 검색 결과 페이지는 두 질문 모두 장소를 보여주지 않아 found가 false입니다.

engines[]

record

issues

대표번호처럼 체인의 모든 지점이 함께 쓰는 번호는 비교하지 않습니다.

summary와 credits

lookup.status는 모든 엔진이 끝나기 전에는 PROCESSING, 끝나면 COMPLETED입니다. 결과는 읽을 때마다 저장된 답변으로 다시 판정하고, 조회는 태스크가 끝난 뒤 24시간 동안 읽을 수 있습니다.

조회 다시 보내기

질문마다 키가 {lookup id}:{engine}:{ask}인 태스크입니다. 예: canlis-2026-10:GEMINI:2. 같은 요청을 같은 idempotencyKey로 다시 보내면 이미 있는 태스크를 돌려주고, 크레딧이 부족해 거절된 질문처럼 아직 태스크가 없는 질문을 보냅니다. 같은 id로 다른 매장, 국가, 엔진 목록을 보내면 409 RESOURCE_ALREADY_EXISTS를 반환하고 아무것도 만들지 않습니다. 나중에 같은 매장을 다시 조회하려면 새 idempotencyKey를 쓰세요.

요금제 동시 실행 한도

질문 하나가 요금제 동시 실행 한도에서 태스크 하나로 셉니다. 조회는 요금제에 남은 자리만큼 질문을 시작하고, 나머지는 tasks[]에서 status: "PENDING"으로 기다립니다.
기다리는 질문은 실행 중인 태스크가 끝나는 대로 1분 안에, 또는 조회를 다음에 읽을 때 저절로 시작합니다. 요청 한 번으로 조회 전체가 실행됩니다. 동시 실행 태스크가 2개인 Free 요금제에서는 질문을 두 개씩 실행해 몇 분이 걸립니다. 유료 요금제는 동시 실행 태스크 50개부터라 계정에 자리가 있으면 조회 전체가 한 번에 시작합니다. 엔진 대기열이 가득 찼거나 키가 하루 크레딧 한도를 다 쓴 동안에도 질문이 기다립니다. 질문의 가격은 질문이 시작될 때 보류합니다. 그 전에 조회를 보낸 키가 폐기되거나 만료되면 기다리던 질문은 API_KEY_INACTIVE로 FAILED가 되고 0크레딧입니다. 크레딧과 한도를 참고하세요.

오류와 과금

국가 기본 엔진에 모두 묻는 조회는 10크레딧입니다. 질문마다 그 몫을 냅니다. KR은 질문 10개에 1크레딧씩, 그 밖의 국가는 질문 8개에 1.25크레딧씩입니다. 엔진을 일부만 고른 조회는 보낸 질문만큼만 냅니다. 질문의 가격은 제출할 때 보류하고 완료되면 청구하며, 실패한 질문은 0입니다. 크레딧과 한도를 참고하세요.

제출 시 거절

모든 질문이 거절되면 첫 거절이 그 상태 그대로 응답이 되고, 아무것도 만들어지지 않습니다. 예: 402 INSUFFICIENT_CREDITS, 403 KEY_SCOPE_DENIED. 일부 질문이 들어가면 응답은 200이고, 거절된 질문은 tasks[]에 error를 담습니다.

조회 읽기

계정에서 쓴 적 없는 id와 태스크가 24시간 기간을 지난 조회에는 GET /v1/place-lookup/{id}가 404 RESOURCE_NOT_FOUND를 반환합니다. 실패한 질문은 via[]에 status: "FAILED"와 코드로 시작하는 error를 보여줍니다. 예: ENGINE_NO_RESULT. 코드는 그 엔진 태스크의 코드와 같고, 시작하기 전에 끝난 대기 질문은 API_KEY_INACTIVE나 INSUFFICIENT_CREDITS를 담습니다. 오류를 참고하세요.

다음 단계

ChatGPT

ChatGPT가 보여주는 장소 카드, map.

배치와 그리드

매장 주변 격자의 모든 지점에서 같은 프롬프트를 묻습니다.