모든 준비를 마쳤습니다!

개발을 시작하려면 개발자 문서로 이동하세요.

Google Places API Web Service 활성화

개발을 시작하기 위해 Google Developers Console에서 우선적으로 해야 할 일을 몇 가지 소개하겠습니다.

  1. 프로젝트 생성 또는 선택
  2. Google Places API Web Service 활성화
  3. 적합한 키 생성
계속

장소 검색

Google Places API Web Service를 사용하면 시설, 주요 관심 지점, 지리적 위치 등 다양한 범주의 장소 정보를 쿼리할 수 있습니다. 인접도나 텍스트 문자열로 장소를 검색할 수 있습니다. 장소 검색은 장소 목록과 함께 각 장소에 대한 개요 정보를 반환합니다. 추가 정보는 장소 세부정보 쿼리를 통해 확인할 수 있습니다.

주변 검색 요청

이전 버전 Places API에서는 주변 검색을 장소 검색이라 지칭했습니다.

주변 검색을 사용하면 지정된 영역 내 장소를 검색할 수 있습니다. 키워드를 제공하거나 검색 중인 장소 유형을 지정하여 검색 요청 범위를 좁힐 수 있습니다.

주변 검색 요청은 다음 형식의 HTTP URL입니다.

https://maps.googleapis.com/maps/api/place/nearbysearch/output?parameters

여기서 output은 다음 값 중 하나입니다.

  • json(권장)은 출력을 JSON(JavaScript Object Notation) 형식으로 나타냅니다.
  • xml은 출력을 XML로 나타냅니다.

주변 검색 요청을 시작하기 위해서는 특정 매개변수가 필요합니다. URL 표준 형식과 마찬가지로, 모든 매개변수는 앰퍼샌드(&) 문자를 사용하여 구분합니다.

필수 매개변수

  • key — 애플리케이션의 API 키. 이 키는 할당량 관리 목적으로 애플리케이션을 식별하고 이 애플리케이션에서 추가한 장소를 앱에서 즉시 사용할 수 있도록 합니다. 자세한 내용은 키 가져오기를 참조하세요.
  • location — 장소 정보를 검색할 위치의 위도/경도. 위도, 경도로 지정해야 합니다.
  • radius — 거리를 미터 단위로 정의하며, 이 안에서 장소 결과가 반환됩니다. 허용되는 최대 반경은 50,000미터입니다. rankby=distance(아래의 선택적 매개변수 참조)가 지정된 경우 radius가 포함돼서는 안됩니다.
  • rankby=distance(아래의 선택적 매개변수 참조)가 지정된 경우 하나 이상의 keyword, name 또는 type이 필요합니다.

선택적 매개변수

  • keyword — Google이 색인을 생성한 이 지역의 모든 콘텐츠와 비교할 검색어. 여기에는 이름, 유형, 주소뿐만 아니라 고객 리뷰와 타사 콘텐츠 등이 포함되어 있습니다.
  • language — 결과를 반환하는 데 사용되는 언어를 나타내는 언어 코드(가능한 경우). 검색은 또한 선택한 언어로도 편중되며, 선택한 언어로 된 결과에는 더 높은 순위가 부여될 수도 있습니다. 지원되는 언어 목록 및 관련 코드를 참조하세요. 지원되는 언어는 자주 업데이트되므로 목록이 완전하지 않을 수 있습니다.
  • minpricemaxprice(선택 항목) — 지정된 가격 범위의 장소로 결과를 제한합니다. 유효 값은 0(가장 저렴함)부터 4(가장 비쌈)의 범위로 표시됩니다. 특정 값이 나타내는 정확한 금액은 지역별로 다릅니다.
  • name — Google이 이 장소에 대해 인덱싱된 모든 콘텐츠와 일치하는 단어입니다. keyword와 같습니다. 이제 name 필드는 장소 이름에만 제한되지 않습니다. 이 필드의 값은 keyword 필드 값과 결합되고 동일한 검색 문자열에 포함되어 전달됩니다. 모든 검색어에 keyword 매개변수만 사용하도록 권장합니다.
  • opennow — 쿼리 전송 시에 영업 중인 장소만 반환합니다. 이 매개변수를 쿼리에 포함하는 경우, Google Places 데이터베이스에 개점 시간을 지정하지 않은 장소는 반환되지 않습니다.
  • rankyby — 결과가 표시되는 순서를 지정합니다. radius(상기 필수 매개변수에서 설명)를 지정할 경우 rankby를 포함해야 합니다. 가능한 값은 다음과 같습니다.
    • prominence(기본설정): 이 옵션은 유명도에 따라 결과를 정렬합니다. 지정된 영역 내 유명도가 높은 장소에 높은 순위가 부여됩니다. 유명도는 Google 색인에서 장소 순위, 전체 인기도 및 기타 요인의 영향을 받을 수 있습니다.
    • distance. 이 옵션은 지정된 location으로부터의 거리를 기준으로 오름차순으로 검색 결과를 편중합니다. distance를 지정하면 keyword, name 또는 type 중 하나 이상이 필요합니다.
  • type — 지정된 유형과 일치하는 장소로 결과를 제한합니다. 하나의 유형만 지정할 수 있습니다(하나 이상의 유형을 지정하면 첫 번째 항목 이후의 모든 유형은 무시합니다). 지원 유형 목록을 참조하세요.
  • types(지원 중단) — 지정된 유형 중 하나 이상과 일치하는 장소로 결과를 제한합니다. 파이프 기호로 유형을 구분합니다.
    예: type1|type2|etc
  • pagetoken — 이전에 실행한 검색의 다음 결과 20개를 반환합니다. pagetoken 매개변수를 설정하면 이전에 사용한 동일한 매개변수로 검색이 실행됩니다. 그러면 pagetoken을 제외한 모든 매개변수가 무시됩니다.
  • zagatselected(지원 중단) — 이 매개변수를 추가하여(연관된 값 없이 매개변수 이름만 추가) Zagat 선정 사업체 위치로 검색을 제한합니다. 이 매개변수는 true 또는 false 값을 포함해서는 안됩니다. zagatselected 매개변수는 시험용이며 프리미엄 플랜 라이선스가 있는 Google Places API 고객에게만 제공됩니다.

Google Maps API Premium Plan 고객 참고: 요청에 API 키를 포함해야 합니다. 요청에 client 또는 signature 매개변수를 포함해서는 안 됩니다

주변 검색 예시

다음은 호주 시드니의 한 지점에서 500미터 반경 내에 있는 장소 중에 'cruise'가 포함된 'restaurant' 유형의 장소를 검색하도록 요청하는 예시입니다.

https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=-33.8670522,151.1957362&radius=500&type=restaurant&keyword=cruise&key=YOUR_API_KEY

참고: 애플리케이션에서 요청이 제대로 작동하려면 이 예시의 키를 본인의 API 키로 대체해야 합니다.

텍스트 검색 요청

Google Places API 텍스트 검색 서비스는 '뉴욕의 피자 가게,' '오타와 주변의 신발 가게' 또는 '123 메인 스트리트'와 같이 문자열에 기반하여 장소 그룹에 대한 정보를 반환하는 웹 서비스입니다. 이 서비스는 설정된 텍스트 문자열 및 모든 위치 편중과 일치하는 장소 목록을 반환합니다.

이 서비스는 자동화된 시스템에서 모호한 주소 쿼리를 할 때 특히 유용하며, 문자열에서 주소가 아닌 구성 요소는 사업체 및 주소와 일치할 수 있습니다. 예를 들어, 모호한 주소 쿼리는 불완전한 주소, 형식이 잘못된 주소, 사업체 이름과 같이 주소가 아닌 구성 요소가 포함된 요청 등이 있습니다.

검색 응답에는 장소 목록이 포함됩니다. 장소 세부정보 요청을 전송하면 응답에서 모든 장소에 관한 세부정보를 확인할 수 있습니다.

Google Places 검색 서비스는 동일한 사용 제한을 공유합니다. 하지만 텍스트 검색 서비스는 10 배수가 적용됩니다. 즉, 각 텍스트 검색 요청은 할당량에서 10개의 요청으로 계산됩니다. Google Places API를 Google Maps API Premium Plan 계약의 일부로 구매한 경우, 그 배수는 다를 수 있습니다. 자세한 내용은 Google Maps API Premium Plan 문서를 참조하세요.

장소 텍스트 검색 요청은 다음 형식의 HTTP URL입니다.

https://maps.googleapis.com/maps/api/place/textsearch/output?parameters

여기서 output은 다음 값 중 하나입니다.

  • json(권장)은 출력을 JSON(JavaScript Object Notation) 형식으로 나타냅니다.
  • xml은 출력을 XML로 나타냅니다.

검색 요청을 시작하기 위해서는 특정 매개변수가 필요합니다. URL 표준 형식과 마찬가지로, 모든 매개변수는 앰퍼샌드(&) 문자를 사용하여 구분합니다.

필수 매개변수

  • query — 검색할 텍스트 문자열입니다(예: '레스토랑' 또는 '123 메인 스트리트'). Google Places 서비스는 문자열을 기준으로 일치 가능성이 높은 항목을 반환하고, 감지된 관련성을 기준으로 검색 결과를 정렬합니다. 검색 요청에서 type 매개변수도 사용할 경우 이 매개변수는 선택 항목이 됩니다.
  • key — 애플리케이션의 API 키. 이 키는 할당량 관리 목적으로 애플리케이션을 식별하고 이 애플리케이션에서 추가한 장소를 앱에서 즉시 사용할 수 있도록 합니다. API 프로젝트를 생성하고 자신의 키를 얻는 방법에 대한 자세한 내용은 Google Places API Web Service의 키 가져오기를 참조하세요.

선택적 매개변수

  • location — 장소 정보를 검색할 위치의 위도/경도. 위도, 경도로 지정해야 합니다. location 매개변수를 지정하는 경우 radius 매개변수도 함께 지정해야 합니다.
  • radius — 미터 단위로 거리를 정의하며, 장소 결과가 이 범위 이내로 편중됩니다. 허용되는 최대 반경은 50,000미터입니다. 이 지역에 속하는 결과는 검색반경을 벗어나는 결과보다 순위가 높게 지정되지만, 유명도가 높은 결과의 경우 검색반경에 속하지 않더라도 포함될 수 있습니다.
  • language — 결과를 반환하는 데 사용되는 언어를 나타내는 언어 코드(가능한 경우). 검색은 또한 선택한 언어로도 편중되며, 선택한 언어로 된 결과에는 더 높은 순위가 부여될 수도 있습니다. 지원되는 언어 목록 및 관련 코드를 참조하세요. 지원되는 언어는 자주 업데이트되므로 목록이 완전하지 않을 수 있습니다.
  • minpricemaxprice(선택 항목) — 지정된 가격 수준의 장소로 결과를 제한합니다. 유효 값은 0(가장 저렴함)부터 4(가장 비쌈)의 범위로 표시됩니다. 특정 값이 나타내는 정확한 금액은 지역별로 다릅니다.
  • opennow — 쿼리 전송 시에 영업 중인 장소만 반환합니다. 이 매개변수를 쿼리에 포함하는 경우, Google Places 데이터베이스에 개점 시간을 지정하지 않은 장소는 반환되지 않습니다.
  • pagetoken — 이전에 실행한 검색의 다음 결과 20개를 반환합니다. pagetoken 매개변수를 설정하면 이전에 사용한 동일한 매개변수로 검색이 실행됩니다. 그러면 pagetoken을 제외한 모든 매개변수가 무시됩니다.
  • type — 지정된 유형과 일치하는 장소로 결과를 제한합니다. 하나의 유형만 지정할 수 있습니다(하나 이상의 유형을 지정하면 첫 번째 항목 이후의 모든 유형은 무시합니다). 지원 유형 목록을 참조하세요.
  • types(지원 중단) — 지정된 유형 중 하나 이상과 일치하는 장소로 결과를 제한합니다. 파이프 기호로 유형을 구분합니다(type1|type2|etc).
  • zagatselected(지원 중단) — 이 매개변수를 추가하여(연관된 값 없이 매개변수 이름만 추가) Zagat 선정 사업체 위치로 검색을 제한합니다. 이 매개변수는 true 또는 false 값을 포함해서는 안됩니다. zagatselected 매개변수는 시험용이며 프리미엄 플랜 라이선스가 있는 Google Places API 고객에게만 제공됩니다.

locationradius 매개변수를 전달하여 지정한 원 내로 결과를 편중할 수 있습니다. 이렇게 하면 Google 장소 서비스에서 원 내의 결과를 우선적으로 표시하도록 지시합니다. 하지만 여전히 정의한 영역을 벗어난 결과가 표시될 수도 있습니다.

Google Maps API Premium Plan 고객 참고: 요청에 API 키를 포함해야 합니다. 요청에 client 또는 signature 매개변수를 포함해서는 안 됩니다

텍스트 검색 예시

참고: 애플리케이션에서 요청이 제대로 작동하려면 이 예시의 키를 본인의 API 키로 대체해야 합니다.

예시 1: 다음 예시는 시드니 주변 레스토랑을 검색합니다.

https://maps.googleapis.com/maps/api/place/textsearch/xml?query=restaurants+in+Sydney&key=YOUR_API_KEY

예시 2: 다음 예시는 불완전한 주소 검색을 보여줍니다. 이 경우, 도시 또는 주, 국가 정보를 포함하지 않는 도로 주소를 사용합니다.

https://maps.googleapis.com/maps/api/place/textsearch/json?query=123+main+street&key=YOUR_API_KEY

예시 3: 다음 예시는 샘플 2와 동일한 불완전 주소 검색을 보여줍니다. 관심 지역에 결과를 편중시키기 위해 locationradius 매개변수를 포함하였습니다. 샘플 2와 샘플 3의 결과를 비교해보세요.

https://maps.googleapis.com/maps/api/place/textsearch/json?query=123+main+street&location=42.3675294,-71.186966&radius=10000&key=YOUR_API_KEY

레이더 검색 요청

Google Places API 레이더 검색을 사용하면 동시에 200개의 장소를 검색할 수 있지만, 일반적으로 텍스트 검색이나 주변 검색 요청으로 반환되는 결과보다는 상세하지 않습니다. 레이더 검색을 사용하면 사용자가 지역 내 관심 지점을 식별하는 데 도움을 주는 애플리케이션을 개발할 수 있습니다.

검색 응답은 최대 200개의 장소를 포함하며, 각 장소에 대해 제공되는 정보는 다음에 한합니다.

  • 지리 좌표가 담긴 geometry 필드.
  • 장소에 관한 추가 정보를 얻기 위해 장소 세부정보 요청에 사용하는 place_id. 장소 ID에 대한 자세한 내용은 장소 ID 개요를 참조하세요.
  • 지원이 중단되는 reference 매개변수. 이 페이지의 사용 중단 알림을 참조하세요.

레이더 검색 요청은 다음 형식의 HTTP URL입니다.

https://maps.googleapis.com/maps/api/place/radarsearch/output?parameters

여기서 output은 다음 값 중 하나입니다.

  • json(권장)은 출력을 JSON(JavaScript Object Notation) 형식으로 나타냅니다.
  • xml은 출력을 XML로 나타냅니다.

검색 요청을 시작하기 위해서는 특정 매개변수가 필요합니다. URL 표준 형식과 마찬가지로, 모든 매개변수는 앰퍼샌드(&) 문자를 사용하여 구분합니다.

필수 매개변수

  • key — 애플리케이션의 API 키. 이 키는 할당량 관리 목적으로 애플리케이션을 식별하고 이 애플리케이션에서 추가한 장소를 앱에서 즉시 사용할 수 있도록 합니다. API 프로젝트를 생성하고 자신의 키를 얻는 방법에 대한 자세한 내용은 Google Places API Web Service의 키 가져오기를 참조하세요.
  • location — 장소 정보를 검색할 위치의 위도/경도. 위도, 경도로 지정해야 합니다.
  • radius — 거리를 미터 단위로 정의하며, 이 안에서 장소 결과가 반환됩니다. 허용되는 최대 반경은 50,000미터입니다.
  • 레이더 검색 요청에는 keyword, name 또는 type 중 최소한 하나를 포함해야 합니다.

선택적 매개변수

  • keyword — Google이 색인을 생성한 이 지역의 모든 콘텐츠와 비교할 검색어. 여기에는 이름, 유형, 주소뿐만 아니라 고객 리뷰와 타사 콘텐츠 등이 포함되어 있습니다.
  • language — 결과를 반환하는 데 사용되는 언어를 나타내는 언어 코드(가능한 경우). 검색은 또한 선택한 언어로도 편중되며, 선택한 언어로 된 결과에는 더 높은 순위가 부여될 수도 있습니다. 지원되는 언어 목록 및 관련 코드를 참조하세요. 지원되는 언어는 자주 업데이트되므로 목록이 완전하지 않을 수 있습니다.
  • minpricemaxprice(선택 항목) — 지정된 가격 수준의 장소로 결과를 제한합니다. 유효 값은 0(가장 저렴함)부터 4(가장 비쌈)의 범위로 표시됩니다. 특정 값이 나타내는 정확한 금액은 지역별로 다릅니다.
  • name — Google이 이 장소에 대해 인덱싱된 모든 콘텐츠와 일치하는 단어입니다. keyword와 같습니다. 이제 name 필드는 장소 이름에만 제한되지 않습니다. 이 필드의 값은 keyword 필드 값과 결합되고 동일한 검색 문자열에 포함되어 전달됩니다. 모든 검색어에 keyword 매개변수만 사용하도록 권장합니다.
  • opennow — 쿼리 전송 시에 영업 중인 장소만 반환합니다. 이 매개변수를 쿼리에 포함하는 경우, Google Places 데이터베이스에 개점 시간을 지정하지 않은 장소는 반환되지 않습니다.
  • type — 지정된 유형과 일치하는 장소로 결과를 제한합니다. 하나의 유형만 지정할 수 있습니다(하나 이상의 유형을 지정하면 첫 번째 항목 이후의 모든 유형은 무시합니다). 지원 유형 목록을 참조하세요.
  • types(지원 중단) — 지정된 유형 중 하나 이상과 일치하는 장소로 결과를 제한합니다. 파이프 기호로 유형을 구분합니다(type1|type2|etc).
  • zagatselected(지원 중단) — 이 매개변수를 추가하여(연관된 값 없이 매개변수 이름만 추가) Zagat 선정 사업체 위치로 검색을 제한합니다. 이 매개변수는 true 또는 false 값을 포함해서는 안됩니다. zagatselected 매개변수는 시험용이며 프리미엄 플랜 라이선스가 있는 Google Places API 고객에게만 제공됩니다.

Google Maps API Premium Plan 고객 참고: 요청에 API 키를 포함해야 합니다. 요청에 client 또는 signature 매개변수를 포함해서는 안 됩니다

레이더 검색 예시

참고: 애플리케이션에서 요청이 제대로 작동하려면 이 예시의 키를 본인의 API 키로 대체해야 합니다.

예시 1: 다음 예시는 영국 런던 인근의 박물관 목록을 반환합니다.

https://maps.googleapis.com/maps/api/place/radarsearch/json?location=51.503186,-0.126446&radius=5000&type=museum&key=YOUR_API_KEY

예시 2: keywordtype 매개변수의 조합을 사용해 더 정확한 쿼리를 수행할 수 있습니다. 다음 예시는 채식 메뉴를 제공한다고 다른 사용자가 설명한 파리 내 레스토랑과 카페를 보여줍니다.

https://maps.googleapis.com/maps/api/place/radarsearch/json?location=48.859294,2.347589&radius=5000&type=cafe&keyword=vegetarian&key=YOUR_API_KEY

검색 응답

검색 응답은 URL 요청 경로내 output 플래그에서 표시한 형식으로 반환됩니다.

다음 예시는 주변 검색 응답을 보여줍니다. 텍스트 검색 응답은 주변 검색 응답과 유사하지만 vicinity 속성 대신 formatted_address를 반환한다는 점에서 차이가 있습니다. 상기의 설명과 같이 레이더 검색은 제한적인 필드만 포함합니다.

JSON
{
   "html_attributions" : [],
   "results" : [
      {
         "geometry" : {
            "location" : {
               "lat" : -33.870775,
               "lng" : 151.199025
            }
         },
         "icon" : "http://maps.gstatic.com/mapfiles/place_api/icons/travel_agent-71.png",
         "id" : "21a0b251c9b8392186142c798263e289fe45b4aa",
         "name" : "Rhythmboat Cruises",
         "opening_hours" : {
            "open_now" : true
         },
         "photos" : [
            {
               "height" : 270,
               "html_attributions" : [],
               "photo_reference" : "CnRnAAAAF-LjFR1ZV93eawe1cU_3QNMCNmaGkowY7CnOf-kcNmPhNnPEG9W979jOuJJ1sGr75rhD5hqKzjD8vbMbSsRnq_Ni3ZIGfY6hKWmsOf3qHKJInkm4h55lzvLAXJVc-Rr4kI9O1tmIblblUpg2oqoq8RIQRMQJhFsTr5s9haxQ07EQHxoUO0ICubVFGYfJiMUPor1GnIWb5i8",
               "width" : 519
            }
         ],
         "place_id" : "ChIJyWEHuEmuEmsRm9hTkapTCrk",
         "scope" : "GOOGLE",
         "alt_ids" : [
            {
               "place_id" : "D9iJyWEHuEmuEmsRm9hTkapTCrk",
               "scope" : "APP"
            }
         ],
         "reference" : "CoQBdQAAAFSiijw5-cAV68xdf2O18pKIZ0seJh03u9h9wk_lEdG-cP1dWvp_QGS4SNCBMk_fB06YRsfMrNkINtPez22p5lRIlj5ty_HmcNwcl6GZXbD2RdXsVfLYlQwnZQcnu7ihkjZp_2gk1-fWXql3GQ8-1BEGwgCxG-eaSnIJIBPuIpihEhAY1WYdxPvOWsPnb2-nGb6QGhTipN0lgaLpQTnkcMeAIEvCsSa0Ww",
         "types" : [ "travel_agency", "restaurant", "food", "establishment" ],
         "vicinity" : "Pyrmont Bay Wharf Darling Dr, Sydney"
      },
      {
         "geometry" : {
            "location" : {
               "lat" : -33.866891,
               "lng" : 151.200814
            }
         },
         "icon" : "http://maps.gstatic.com/mapfiles/place_api/icons/restaurant-71.png",
         "id" : "45a27fd8d56c56dc62afc9b49e1d850440d5c403",
         "name" : "Private Charter Sydney Habour Cruise",
         "photos" : [
            {
               "height" : 426,
               "html_attributions" : [],
               "photo_reference" : "CnRnAAAAL3n0Zu3U6fseyPl8URGKD49aGB2Wka7CKDZfamoGX2ZTLMBYgTUshjr-MXc0_O2BbvlUAZWtQTBHUVZ-5Sxb1-P-VX2Fx0sZF87q-9vUt19VDwQQmAX_mjQe7UWmU5lJGCOXSgxp2fu1b5VR_PF31RIQTKZLfqm8TA1eynnN4M1XShoU8adzJCcOWK0er14h8SqOIDZctvU",
               "width" : 640
            }
         ],
         "place_id" : "ChIJqwS6fjiuEmsRJAMiOY9MSms",
         "scope" : "GOOGLE",
         "reference" : "CpQBhgAAAFN27qR_t5oSDKPUzjQIeQa3lrRpFTm5alW3ZYbMFm8k10ETbISfK9S1nwcJVfrP-bjra7NSPuhaRulxoonSPQklDyB-xGvcJncq6qDXIUQ3hlI-bx4AxYckAOX74LkupHq7bcaREgrSBE-U6GbA1C3U7I-HnweO4IPtztSEcgW09y03v1hgHzL8xSDElmkQtRIQzLbyBfj3e0FhJzABXjM2QBoUE2EnL-DzWrzpgmMEulUBLGrtu2Y",
         "types" : [ "restaurant", "food", "establishment" ],
         "vicinity" : "Australia"
      },
      {
         "geometry" : {
            "location" : {
               "lat" : -33.870943,
               "lng" : 151.190311
            }
         },
         "icon" : "http://maps.gstatic.com/mapfiles/place_api/icons/restaurant-71.png",
         "id" : "30bee58f819b6c47bd24151802f25ecf11df8943",
         "name" : "Bucks Party Cruise",
         "opening_hours" : {
            "open_now" : true
         },
         "photos" : [
            {
               "height" : 600,
               "html_attributions" : [],
               "photo_reference" : "CnRnAAAA48AX5MsHIMiuipON_Lgh97hPiYDFkxx_vnaZQMOcvcQwYN92o33t5RwjRpOue5R47AjfMltntoz71hto40zqo7vFyxhDuuqhAChKGRQ5mdO5jv5CKWlzi182PICiOb37PiBtiFt7lSLe1SedoyrD-xIQD8xqSOaejWejYHCN4Ye2XBoUT3q2IXJQpMkmffJiBNftv8QSwF4",
               "width" : 800
            }
         ],
         "place_id" : "ChIJLfySpTOuEmsRsc_JfJtljdc",
         "scope" : "GOOGLE",
         "reference" : "CoQBdQAAANQSThnTekt-UokiTiX3oUFT6YDfdQJIG0ljlQnkLfWefcKmjxax0xmUpWjmpWdOsScl9zSyBNImmrTO9AE9DnWTdQ2hY7n-OOU4UgCfX7U0TE1Vf7jyODRISbK-u86TBJij0b2i7oUWq2bGr0cQSj8CV97U5q8SJR3AFDYi3ogqEhCMXjNLR1k8fiXTkG2BxGJmGhTqwE8C4grdjvJ0w5UsAVoOH7v8HQ",
         "types" : [ "restaurant", "food", "establishment" ],
         "vicinity" : "37 Bank St, Pyrmont"
      },
      {
         "geometry" : {
            "location" : {
               "lat" : -33.867591,
               "lng" : 151.201196
            }
         },
         "icon" : "http://maps.gstatic.com/mapfiles/place_api/icons/travel_agent-71.png",
         "id" : "a97f9fb468bcd26b68a23072a55af82d4b325e0d",
         "name" : "Australian Cruise Group",
         "opening_hours" : {
            "open_now" : true
         },
         "photos" : [
            {
               "height" : 242,
               "html_attributions" : [],
               "photo_reference" : "CnRnAAAABjeoPQ7NUU3pDitV4Vs0BgP1FLhf_iCgStUZUr4ZuNqQnc5k43jbvjKC2hTGM8SrmdJYyOyxRO3D2yutoJwVC4Vp_dzckkjG35L6LfMm5sjrOr6uyOtr2PNCp1xQylx6vhdcpW8yZjBZCvVsjNajLBIQ-z4ttAMIc8EjEZV7LsoFgRoU6OrqxvKCnkJGb9F16W57iIV4LuM",
               "width" : 200
            }
         ],
         "place_id" : "ChIJrTLr-GyuEmsRBfy61i59si0",
         "scope" : "GOOGLE",
         "reference" : "CoQBeQAAAFvf12y8veSQMdIMmAXQmus1zqkgKQ-O2KEX0Kr47rIRTy6HNsyosVl0CjvEBulIu_cujrSOgICdcxNioFDHtAxXBhqeR-8xXtm52Bp0lVwnO3LzLFY3jeo8WrsyIwNE1kQlGuWA4xklpOknHJuRXSQJVheRlYijOHSgsBQ35mOcEhC5IpbpqCMe82yR136087wZGhSziPEbooYkHLn9e5njOTuBprcfVw",
         "types" : [ "travel_agency", "restaurant", "food", "establishment" ],
         "vicinity" : "32 The Promenade, King Street Wharf 5, Sydney"
      }
   ],
   "status" : "OK"
}

JSON 응답은 최대 4개의 루트 요소를 포함합니다.

  • "status"는 요청의 메타데이터를 포함합니다. 아래의 상태 코드를 참조하세요.
  • "results"는 각 장소에 대한 정보와 함께 장소의 배열을 포함합니다. 결과에 대한 자세한 내용은 검색 결과를 참조하세요. Places API는 쿼리당 최대 20개의 establishment 결과를 반환합니다. 또한 요청 영역을 식별하기 위해 사용되는 political 관련 결과도 반환될 수 있습니다.
  • html_attributions는 사용자에게 표시되어야 하는 이 목록에 대한 특성 집합을 포함합니다.
  • next_page_token은 최대 20개의 추가 결과를 반환하는 데 사용할 수 있는 토큰을 포함합니다. 표시할 추가 결과가 없는 경우 next_page_token이 반환되지 않습니다. 최대 60개의 결과가 반환될 수 있습니다. next_page_token이 발급된 후 효력이 발생하기까지 약간의 지연이 있습니다.

JSON 응답 구문 분석에 대한 도움말은 Javascript로 JSON 처리를 참조하세요.

XML
<?xml version="1.0" encoding="UTF-8"?>
<PlaceSearchResponse>
 <status>OK</status>
 <result>
  <name>Rhythmboat Cruises</name>
  <vicinity>Pyrmont Bay Wharf Darling Dr, Sydney</vicinity>
  <type>travel_agency</type>
  <type>restaurant</type>
  <type>food</type>
  <type>establishment</type>
  <geometry>
   <location>
    <lat>-33.8707750</lat>
    <lng>151.1990250</lng>
   </location>
  </geometry>
  <icon>http://maps.gstatic.com/mapfiles/place_api/icons/travel_agent-71.png</icon>
  <place_id>ChIJyWEHuEmuEmsRm9hTkapTCrk</place_id>
  <scope>GOOGLE</scope>
  <alt_ids>
   <place_id>D9iJyWEHuEmuEmsRm9hTkapTCrk</place_id>
   <scope>APP</scope>
  </alt_ids>
  <reference>CoQBdAAAAChhtoQX_467esHavS0Sj9DrY306W3_uDXKmB2us8Eh7_dX7rDuln18i_uqocF_LmzRptuFr6WZs7aeBSLFq8VFmckxFjsXDaqMdd3gvxi_5dIwPTEugQQYG9oJA-YnYfPBvjGtuoMfNnjyU2GuxGRmJjCO77pEAbsTLq44eBG5jEhAvkKHCGqIzqgC9tdOb1dSqGhRA1hhG4pvILD5OEAq6W8L8sXbkug</reference>
  <id>21a0b251c9b8392186142c798263e289fe45b4aa</id>
  <opening_hours>
   <open_now>true</open_now>
  </opening_hours>
  <photo>
   <photo_reference>CnRnAAAAiRA8ls6lx5LTfLuHJtLYvz73LXIMa5EVsHz2OUjh70LBPBnIEULZ57w076gOuyCeJqP041_v-ek3I5C4IkqW7YgA0EBybwywfIcUXsj5W_qiJR2yaXHXI-FmDM6j1zaS0sJQnNJhe4Bl9W42Jx16phIQRmNOWKGIemKLgzNEPcCnmBoUGgr0gWQBwWd8HAseR-5ie3JYuIM</photo_reference>
   <width>519</width>
   <height>270</height>
  </photo>
 </result>
 <result>
  <name>Private Charter Sydney Habour Cruise</name>
  <vicinity>Australia</vicinity>
  <type>restaurant</type>
  <type>food</type>
  <type>establishment</type>
  <geometry>
   <location>
    <lat>-33.8668910</lat>
    <lng>151.2008140</lng>
   </location>
  </geometry>
  <icon>http://maps.gstatic.com/mapfiles/place_api/icons/restaurant-71.png</icon>
  <place_id>ChIJqwS6fjiuEmsRJAMiOY9MSms</place_id>
  <scope>GOOGLE</scope>
  <reference>CpQBhQAAAKGKrbbnAW3_eAypKW9bhAzAuSmaqAogs7MTFxsntDqCzt-gKD9nz-zqNsk0uJsl0yCUYpNYjHz_yzmh3J_4TTxpxIqdaq2uDvfoTYtvm8FkxMAkK3cS7k9t3Ze2aHRWnxlN9hczK2xlc5taDE7xAGOHF5Xe5IlVV1wV66sOrWrlHtGh47lqT9Id86eG2OmlVhIQo4djLtRkceg-zaYjULYEjRoUToVEyOUVCFfZMUs_E7ZLSzjFmcg</reference>
  <id>45a27fd8d56c56dc62afc9b49e1d850440d5c403</id>
  <photo>
   <photo_reference>CnRnAAAAUW97jpK2_C2Lh4jLPVKZlhyS84mqZxvVmWFdc6jdl3XxjzKbYdbJpz0PGW5eFRw6kTKYNZM9QvRf-csFegHILZxLCLJ-6ZnbdEXbVM4kBzOb-rhchJx1KC6LHs_vVWP8bK96569lFYRf7Hn8ylQrlhIQb69_dcZVwqQhREsHW6azWhoU0XMWqZMBBzx-hgpduAaeErOFg8E</photo_reference>
   <width>640</width>
   <height>426</height>
  </photo>
 </result>
 <result>
  <name>Bucks Party Cruise</name>
  <vicinity>37 Bank St, Pyrmont</vicinity>
  <type>restaurant</type>
  <type>food</type>
  <type>establishment</type>
  <geometry>
   <location>
    <lat>-33.8709430</lat>
    <lng>151.1903110</lng>
   </location>
  </geometry>
  <icon>http://maps.gstatic.com/mapfiles/place_api/icons/restaurant-71.png</icon>
  <place_id>ChIJLfySpTOuEmsRsc_JfJtljdc</place_id>
  <scope>GOOGLE</scope>
  <reference>CoQBdAAAAOMUoYamsekTDxBDVyKZ-E54VQ6HjirVzAZBBwz5gcn5KTfmemmwmOAtLcvRScp1NLQmj-fBYzEO2Gq_cO4Dc12PG0_twzDv9zq3KIyNQVuO-r0n1eQVj8Dlng-n4c1F2hMxufCNVp4-QfjMj81qXJm0invQMUc1xNgZRyiOpLe9EhDLn0KiVWEFKOURYsWrHRouGhR7YMJxYmFs-OXjKyzQKGdQXLrzPw</reference>
  <id>30bee58f819b6c47bd24151802f25ecf11df8943</id>
  <opening_hours>
   <open_now>true</open_now>
  </opening_hours>
  <photo>
   <photo_reference>CnRnAAAAjboYP9Ujxe5SmZFN5AJc42AWtpYFX9wYdqjcTXavXJlfoXdHPC2hErdbHcaeYJBNPV6CzoDc2RLw_w9HofGOhCWHtoAl9b3g8TZZjnZobnAHxoljUdgV8PXyd-pCO-QHKOtiKfIdUmF4HRj2QHj6OhIQhLNpoKNKP8MNjk90M4KGrhoUW2NyBgsWjRpUEoWlt0fD48BhEcQ</photo_reference>
   <width>800</width>
   <height>600</height>
  </photo>
 </result>
 <result>
  <name>Australian Cruise Group</name>
  <vicinity>32 The Promenade, King Street Wharf 5, Sydney</vicinity>
  <type>travel_agency</type>
  <type>restaurant</type>
  <type>food</type>
  <type>establishment</type>
  <geometry>
   <location>
    <lat>-33.8675910</lat>
    <lng>151.2011960</lng>
   </location>
  </geometry>
  <icon>http://maps.gstatic.com/mapfiles/place_api/icons/travel_agent-71.png</icon>
  <place_id>ChIJrTLr-GyuEmsRBfy61i59si0</place_id>
  <scope>GOOGLE</scope>
  <reference>CoQBeAAAAJZA0WY2pKnZ6nNnxNd_pSDA2NilDLfGDf7pTt7VssxB5tMYE7400w3HZHRav2unpKRhEp7lrh0yKcVdSfKYIz85k1SExoLGmYD8NIf1dPr8KlkRWOYZUTLGp623r5hAzEGk94mPleF4s50pWqLrhAzwvJb1tGj2ak-2PXQORkeTEhAfTj6tMFo_tRWZYOnYCxiVGhQA3n-KV7AW5MvJlGaIDHuLyyEBBA</reference>
  <id>a97f9fb468bcd26b68a23072a55af82d4b325e0d</id>
  <opening_hours>
   <open_now>true</open_now>
  </opening_hours>
  <photo>
   <photo_reference>CnRnAAAAhTkpwozMoZx_NXMkIrKdcEGe46BmPy3GPCfS-gkCK5PlR8rFDY9DtD_7wFYAIdhVoZz3I9QguRNbil5y37jTU-03GJ_LqVw_avSxFkT0g2kU0K5z2VYnAsgNsrbsK_EVglhg5PrDybC1tAVKCXSGsRIQOcdlAVnC1Qc46YLWjlqdyxoUL5JGZgczfo1jxLxhDeGs8OvBQCk</photo_reference>
   <width>200</width>
   <height>242</height>
  </photo>
 </result>
</PlaceSearchResponse>

XML 응답은 다음과 같은 단일 <PlaceSearchResponse> 요소와 최대 4개의 상위 요소로 구성됩니다.

  • <status>는 요청의 메타데이터를 포함합니다. 아래의 상태 코드를 참조하세요.
  • 0개 이상의<result> 요소가 있으며, 각 요소는 단일 시설에 대한 정보를 포함합니다. 이들 결과에 대한 정보는 주변 검색 결과를 참조하세요. Places API는 쿼리당 최대 20개의 establishment 결과를 반환합니다. 또한 요청 영역을 식별하기 위해 사용되는 political <type> 결과 또는 도로 관련 결과도 반환될 수 있습니다.
  • next_page_token은 최대 20개의 추가 결과를 반환하는 데 사용할 수 있는 토큰을 포함합니다. 표시할 추가 결과가 없는 경우 next_page_token이 반환되지 않습니다. 최대 60개의 결과가 반환될 수 있습니다. next_page_token은 최초 발행 2초 후에 활성화됩니다.
  • html_attributions는 사용자에게 표시되어야 하는 이 목록에 대한 특성 집합을 포함합니다.

상태 코드

검색 응답 객체의 "status" 필드는 요청의 상태를 포함합니다. 또한 요청이 실패한 원인을 추적하는 데 도움이 되는 디버깅 정보를 포함할 수 있습니다. "status" 필드는 다음 값을 포함할 수 있습니다.

  • OK는 오류가 발생되지 않았음을 나타냅니다. 장소가 성공적으로 감지되었고 최소 한 개 이상의 결과가 반환됩니다.
  • ZERO_RESULTS는 검색에 성공했지만 반환된 결과가 없음을 나타냅니다. 이는 멀리 떨어진 위치의 latlng가 검색에 전달된 경우 발생할 수 있습니다.
  • OVER_QUERY_LIMIT는 할당량이 초과되었음을 나타냅니다.
  • REQUEST_DENIED는 요청이 거부되었음을 나타냅니다. 일반적인 원인은 key 매개변수가 잘못되었기 때문입니다.
  • INVALID_REQUEST는 일반적으로 필수 검색 매개변수(location 또는 radius)가 누락되어 있음을 나타냅니다.

오류 메시지

Google 장소 서비스가 OK 이외의 상태 코드를 반환하면 검색 응답 객체에 추가 error_message 필드가 있을 수 있습니다. 이 필드에는 지정된 상태 코드가 제시된 이유에 대한 상세정보가 포함됩니다.

검색 결과

Google Places 서비스가 검색에서 JSON 결과 반환 시 결과는 results 배열 내에 배치됩니다. 서비스에서 결과를 반환하지 않는 경우에도(예: location이 멀리 떨어진 경우) 여전히 빈 results 배열을 반환합니다. XML 응답은 0개 이상의 <results> 요소로 구성됩니다.

<result> 배열의 각 요소는 지정된 영역(locationradius)의 단일 결과를 포함하며, 중요도에 따라 정렬됩니다.

결과에는 사용자에게 표시되어야 하는 특성 정보가 포함될 수도 있습니다. 다음은 JSON 형식의 특성에 대한 예시입니다.

"html_attributions" : [
      "Listings by \u003ca href=\"http://www.example.com/\"\u003eExample Company\u003c/a\u003e"
],
다음은 XML 형식의 특성에 대한 예시입니다.
<html_attribution>Listings by <a href="http://www.example.com/">Example Company</a></html_attribution>

results 배열 내의 각 결과는 다음 필드를 포함할 수 있습니다.

  • icon은 지도에 결과를 나타낼 때 사용자에게 표시될 수 있는 권장 아이콘의 URL을 포함합니다.
  • id는 이 장소를 표시하는 안정적인 고유 식별자를 포함합니다. 이 식별자는 장소를 가져오는 데 사용할 수 없지만 여러 세션에서 유효합니다. 이 장소에 대한 데이터를 통합하고 개별 검색에서 장소의 ID를 확인하는 데 사용할 수 있습니다. 참고: id는 이제 지원이 중단되고 place_id로 대체됩니다. 이 페이지의 사용 중단 알림을 참조하세요.
  • geometry는 결과에 관한 도형 정보를 포함합니다. 여기에는 일반적으로 장소의 location(지오코드) 및 viewport가 포함됩니다. 뷰포트는 커버리지 범위 내의 일반 영역을 식별하며 선택 항목입니다.
  • name은 사람이 읽을 수 있는 반환된 결과의 이름을 포함합니다. establishment의 결과는 일반적으로 사업체 이름입니다.
  • opening_hours는 다음 정보를 포함할 수 있습니다.
    • open-now는 장소가 현재 영업 중임을 나타내는 부울 값입니다.
  • photos[]photo 객체의 배열이며 각 배열에는 이미지 참조가 포함됩니다. 장소 검색은 하나의 photo 객체만 반환합니다. 장소에 대한 장소 세부정보 요청을 수행하면 사진이 10개까지 반환될 수 있습니다. 장소 사진에 대한 자세한 내용과 이미지를 애플리케이션에서 사용하는 방법은 장소 사진 문서에서 찾을 수 있습니다. 다음은 photo 객체에 대한 설명입니다.
    • photo_reference — 사진 요청을 수행하는 경우 사진을 식별하는 데 사용되는 문자열입니다.
    • height — 이미지의 최대 높이.
    • width — 이미지의 최대 너비.
    • html_attributions[] — 모든 필수 특성을 포함합니다. 이 필드는 항상 존재하지만 비어있는 경우도 있습니다.
  • place_id — 장소를 고유하게 식별하는 텍스트 식별자. 장소에 관한 정보를 검색하려면, 이 식별자를 Places API 요청의 placeId 필드에 삽입해 전달합니다. 장소 ID에 대한 자세한 내용은 장소 ID 개요를 참조하세요.
  • scopeplace_id의 범위를 표시합니다. 사용할 수 있는 값은 다음과 같습니다.
    • APP: 장소 ID는 본인의 애플리케이션에서만 인식됩니다. 그 이유는 장소를 애플리케이션에 추가했지만 아직 중재 절차를 통과하지 않았기 때문입니다.
    • GOOGLE: 장소 ID를 다른 애플리케이션과 Google 지도에서 사용할 수 있습니다.
    참고: scope 필드는 주변 검색 결과와 장소 세부정보 결과에만 포함됩니다. 주변 검색과 장소 세부정보 요청을 통해서는 앱 지정 범위의 장소만 검색할 수 있습니다. scope 필드가 응답에 없으면 범위가 GOOGLE이라고 가정해도 무방합니다.
  • alt_ids — 장소에 대한 0개 이상 대체 장소 ID의 배열이며, 각 대체 장소 ID에 관련된 범위를 포함합니다. 참고: 이 배열은 비어 있거나 없을 수 있습니다. 있을 경우, 다음 필드를 포함합니다.
    • place_id — 한 장소가 대체 장소 ID를 갖게 되는 가장 큰 이유는 애플리케이션에 장소를 추가하면 애플리케이션 범위의 장소 ID를 부여받고, 이후 중재 절차를 통과하면 Google 범위의 장소 ID를 부여받기 때문입니다.
    • scope — 대체 장소 ID의 범위는 항시 APP이며, 이는 대체 장소 ID가 애플리케이션에서만 인식된다는 것을 의미합니다.
    예를 들어, 애플리케이션이 한 장소를 추가하고 새로운 장소에 대해 AAA라는 place_id를 부여받았다고 가정합니다. 이후, 장소가 중재 절차를 통과해 Google 범위의 BBB라는 place_id를 부여받았다고 가정합니다. 이 시점부터 이 장소에 대한 정보에는 다음이 포함됩니다.
        "results" : [
          {
            "place_id" : "BBB",
            "scope" : "GOOGLE",
            "alt_ids" : [
              {
                "place_id" : "AAA",
                "scope" : "APP",
              }
            ],
          }
        ]
        
  • price_level — 장소의 가격 수준(0~4등급). 특정 값이 나타내는 정확한 금액은 지역별로 다릅니다. 가격 수준은 다음과 같이 해석될 수 있습니다.
    • 0 — 무료
    • 1 — 저렴
    • 2 — 보통
    • 3 — 비쌈
    • 4 — 매우 비쌈
  • rating은 장소의 평점을 포함합니다(사용자 리뷰 기준으로 1.0~5.0).
  • reference장소 세부정보 요청에서 장소에 대한 추가적인 정보를 검색하는 데 사용할 수 있는 고유 토큰을 포함합니다. 토큰은 장소를 고유하게 식별하지만 장소는 토큰을 식별하지 못합니다. 한 장소에 다수의 유효한 참조 토큰이 있을 수 있습니다. 다른 검색에서 특정 장소에 대해 동일한 토큰이 반환되지 않을 수도 있습니다. 참고: reference는 이제 지원이 중단되고 place_id로 대체됩니다. 이 페이지의 사용 중단 알림을 참조하세요.
  • types[]는 특정 결과를 설명하는 지형지물 유형의 배열을 포함합니다. 자세한 내용은 지원 유형 목록을 참조하세요. 둘 이상의 유형이 결과에 할당되어 있을 경우, XML 응답에는 여러 <type> 요소가 포함됩니다.
  • vicinity는 인근 지역의 지형지물 이름을 포함합니다. 지형지물은 대개 지정된 결과 내의 거리 또는 근방을 나타냅니다. vicinity 속성은 주변 검색에서만 반환됩니다.
  • formatted_address는 이 장소의 사람이 읽을 수 있는 주소가 포함된 문자열입니다. 이 주소는 대개 "우편 주소"와 일치합니다. formatted_address 속성은 텍스트 검색에 대해서만 반환됩니다.
  • permanently_closed는 장소가 영구적으로 폐점되었는지 여부를 나타내는 부울 플래그입니다(true 값). 장소가 영구적으로 폐점되지 않은 경우 이 플래그는 응답에서 제외됩니다.

프리미엄 데이터

위에 나오는 필드 이외에도, 프리미엄 플랜 라이선스를 가진 Google Places API 고객은 다음 필드를 받을 수 있습니다. 이러한 필드는 result 필드의 최상위 하위 항목으로 표시됩니다.

  • aspects는 시설의 기본 등급과 관련된 단일 AspectRating 객체를 포함합니다. 다음은 각 AspectRating에 대한 설명입니다.
    • type은 평점을 받는 평가항목의 이름입니다. 다음의 유형이 지원됩니다: appeal, atmosphere, decor, facilities, food, overall, qualityservice.
    • rating은 평가항목에 대한 사용자 종합 평점입니다(0~30). 종합 평점은 0~30인 반면, 리뷰의 일부로 표시되는 평점에는 0~3의 값이 사용됩니다.
  • zagat_selected는 장소가 Zagat 선정 사업체임을 나타냅니다. Zagat 레이블은 지속적으로 평이 좋은 장소 또는 특별하거나 고유한 특징을 가진 장소를 나타냅니다.
자세한 정보는 프리미엄 데이터를 참조하세요.

추가 결과 액세스

기본적으로 각 주변 검색 또는 텍스트 검색은 쿼리당 최대 20개의 establishment 결과를 반환합니다. 하지만 각 검색은 세 페이지에 걸쳐 최대 60개까지의 결과를 반환할 수 있습니다. 검색에서 20개를 초과하는 결과가 반환되는 경우 추가 값인 next_page_token이 검색 응답에 포함됩니다. next_page_token 값을 새로운 검색의 pagetoken 매개변수에 전달하면 다음 20개 결과를 확인할 수 있습니다. next_page_token이 null이거나 반환되지 않은 경우에는 추가 결과가 표시되지 않습니다. next_page_token이 발급된 후 효력이 발생하기까지 약간의 지연이 있습니다. 사용할 준비가 되기 전에 다음 페이지를 요청하면 INVALID_REQUEST 응답이 반환됩니다. 동일한 next_page_token으로 다시 요청하면 다음 결과 페이지가 반환됩니다.

예를 들어, 아래 쿼리에서는 호주 시드니에 위치한 달링하버 근처의 레스토랑을 검색하여 거리를 기준으로 결과 순위를 지정합니다. 응답에 next_page_token 속성이 포함되어 있음을 확인할 수 있습니다.

https://maps.googleapis.com/maps/api/place/nearbysearch/json?location=-33.8670522,151.1957362&rankby=distance&types=food&key=YOUR_API_KEY
{
   "html_attributions" : [],
   "next_page_token" : "CpQCAgEAAFxg8o-eU7_uKn7Yqjana-HQIx1hr5BrT4zBaEko29ANsXtp9mrqN0yrKWhf-y2PUpHRLQb1GT-mtxNcXou8TwkXhi1Jbk-ReY7oulyuvKSQrw1lgJElggGlo0d6indiH1U-tDwquw4tU_UXoQ_sj8OBo8XBUuWjuuFShqmLMP-0W59Vr6CaXdLrF8M3wFR4dUUhSf5UC4QCLaOMVP92lyh0OdtF_m_9Dt7lz-Wniod9zDrHeDsz_by570K3jL1VuDKTl_U1cJ0mzz_zDHGfOUf7VU1kVIs1WnM9SGvnm8YZURLTtMLMWx8-doGUE56Af_VfKjGDYW361OOIj9GmkyCFtaoCmTMIr5kgyeUSnB-IEhDlzujVrV6O9Mt7N4DagR6RGhT3g1viYLS4kO5YindU6dm3GIof1Q",
   "results" : [
      {
         "geometry" : {
            "location" : {
               "lat" : -33.867217,
               "lng" : 151.195939
            }
         },
         "icon" : "http://maps.gstatic.com/mapfiles/place_api/icons/cafe-71.png",
         "id" : "7eaf747a3f6dc078868cd65efc8d3bc62fff77d7",
         "name" : "Biaggio Cafe - Pyrmont",
         "opening_hours" : {
            "open_now" : true
         },
         "photos" : [
            {
               "height" : 600,
               "html_attributions" : [],
               "photo_reference" : "CnRnAAAAmWmj0BqA0Jorm1_vjAvx1n6c7ZNBxyY-U9x99-oNyOxvMjDlo2npJzyIq7c3EK1YyoNXdMFDcRPzwLJtBzXAwCUFDGo_RtLRGBPJTA2CoerPdC5yvT2SjfDwH4bFf5MrznB0_YWa4Y2Qo7ABtAxgeBIQv46sGBwVNJQDI36Wd3PFYBoUTlVXa0wn-zRITjGp0zLEBh8oIBE",
               "width" : 900
            }
         ],
         "place_id" : "ChIJIfBAsjeuEmsRdgu9Pl1Ps48",
         "scope" : "GOOGLE",
         "price_level" : 1,
         "rating" : 3.4,
         "reference" : "CoQBeAAAAGu0wNJjuZ40DMrRe3mpn7fhlfIK1mf_ce5hgkhfM79u-lqy0G2mnmcueTq2JGWu9wsgS1ctZDHTY_pcqFFJyQNV2P-kdhoRIeYRHeDfbWtIwr3RgFf2zzFBXHgNjSq-PSzX_OU6OT2_3dzdhhpV-bPezomtrarW4DsGl9uh773yEhDJT6R3V8Fyvl_xeE761DTCGhT1jJ3floFI5_c-bHgGLVwH1g-cbQ",
         "types" : [ "cafe", "bar", "restaurant", "food", "establishment" ],
         "vicinity" : "48 Pirrama Rd, Pyrmont"
      },
      {
         "geometry" : {
            "location" : {
               "lat" : -33.866786,
               "lng" : 151.195633
            }
         },
         "icon" : "http://maps.gstatic.com/mapfiles/place_api/icons/generic_business-71.png",
         "id" : "3ef986cd56bb3408bc1cf394f3dad9657c1d30f6",
         "name" : "Doltone House",
         "photos" : [
            {
               "height" : 1260,
               "html_attributions" : [ "From a Google User" ],
               "photo_reference" : "CnRwAAAAeM-aLqAm573T44qnNe8bGMkr_BOh1MOVQaA9CCggqtTwuGD1rjsviMyueX_G4-mabgH41Vpr8L27sh-VfZZ8TNCI4FyBiGk0P4fPxjb5Z1LrBZScYzM1glRxR-YjeHd2PWVEqB9cKZB349QqQveJLRIQYKq2PNlOM0toJocR5b_oYRoUYIipdBjMfdUyJN4MZUmhCsTMQwg",
               "width" : 1890
            }
         ],
         "place_id" : "ChIJ5xQ7szeuEmsRs6Kj7YFZE9k",
         "scope" : "GOOGLE",
         "reference" : "CnRvAAAA22k1PAGyDxAgHZk6ErHh_h_mLUK_8XNFLvixPJHXRbCzg-gw1ZxdqUwA_8EseDuEZKolBs82orIQH4m6-afDZV9VcpggokHD9x7HdMi9TnJDmGb9Bdh8f-Od4DK0fASNBL7Me3CsAWkUMWhlNQNYExIQ05W7VbxDTQe2Kh9TiL840hoUZfiO0q2HgDHSUyRdvTQx5Rs2SBU",
         "types" : [ "food", "establishment" ],
         "vicinity" : "48 Pirrama Rd, Pyrmont"
      },
      {
         "aspects" : [
            {
               "rating" : 23,
               "type" : "overall"
            }
         ],
      ...
   ],
   "status" : "OK"
}

다음 결과 목록을 확인하려면 새 쿼리를 제출하여 next_page_token의 결과를 pagetoken 매개변수에 전달하면 됩니다. 예:

https://maps.googleapis.com/maps/api/place/nearbysearch/json?pagetoken=CpQCAgEAAFxg8o-eU7_uKn7Yqjana-HQIx1hr5BrT4zBaEko29ANsXtp9mrqN0yrKWhf-y2PUpHRLQb1GT-mtxNcXou8TwkXhi1Jbk-ReY7oulyuvKSQrw1lgJElggGlo0d6indiH1U-tDwquw4tU_UXoQ_sj8OBo8XBUuWjuuFShqmLMP-0W59Vr6CaXdLrF8M3wFR4dUUhSf5UC4QCLaOMVP92lyh0OdtF_m_9Dt7lz-Wniod9zDrHeDsz_by570K3jL1VuDKTl_U1cJ0mzz_zDHGfOUf7VU1kVIs1WnM9SGvnm8YZURLTtMLMWx8-doGUE56Af_VfKjGDYW361OOIj9GmkyCFtaoCmTMIr5kgyeUSnB-IEhDlzujVrV6O9Mt7N4DagR6RGhT3g1viYLS4kO5YindU6dm3GIof1Q&key=YOUR_API_KEY

pagetoken을 설정하면 다른 모든 매개변수가 무시됩니다. 쿼리는 이전과 동일한 검색을 실행하지만 새로운 결과 집합을 반환하며, 원래의 쿼리에 이어서 새로운 페이지를 최대 2회까지 요청할 수 있습니다. 각 결과 페이지는 순서대로 표시되어야 하며, 단일 쿼리의 결과로 두 페이지 이상의 검색 결과가 표시되면 안 됩니다. 각 검색은 사용 제한 계산 시 단일 요청으로 계산됩니다.

sensor 매개변수

이전의 Google Places API는 사용자 위치 파악을 위해 애플리케이션의 센서 사용 여부를 표시하는 sensor 매개변수를 포함하도록 요구했습니다. 이 매개변수는 더 이상 필요하지 않습니다.

다음에 대한 의견 보내기...

location_on
Google Places API Web Service