역 지오코딩 (주소 조회) 요청 및 응답

일반적으로 지오코딩이라는 용어는 사람이 읽을 수 있는 주소를 지도상의 위치로 변환하는 과정을 가리킵니다. 반대로 지도상의 위치를 사람이 읽을 수 있는 주소로 변환하는 것을 역 지오코딩.

역지오코딩 요청

필수 매개변수

  • latlng - 위도 및 경도 가장 가까운 위치를 지정하는 좌표 인간이 읽을 수 있는 주소입니다.
  • key: 애플리케이션의 API 키입니다. 이 키는 할당량 관리를 위해 애플리케이션을 식별합니다. 자세히 알아보기 키 가져오기:

선택적 매개변수

이러한 매개변수는 역순으로 포함할 수 있는 선택적 매개변수입니다. 지오코딩 요청:

  • language - 결과를 반환할 때 사용하는 언어입니다.
    • 지원되는 언어를 참조하세요. 지원되는 언어는 자주 업데이트되므로 목록이 완전하지 않을 수 있습니다.
    • language가 제공되지 않으면 지오코더는 기본 언어를 사용합니다. Accept-Language 헤더 또는 요청을 보낸 도메인 이름입니다.
    • 지오코더는 사용자와 현지인이 모두 읽을 수 있는 거리 주소를 제공하려고 최선을 다합니다. 이 목표를 달성하기 위해 는 선호하는 있습니다. 다른 모든 주소는 기본 있습니다. 주소 구성 요소는 모두 동일한 언어로 반환되기 때문에 첫 번째 구성 요소에서 선택됩니다.
    • 기본 언어로 이름을 사용할 수 없는 경우 지오코더는 가장 근접한 결과를 표시합니다.
  • region - ccTLD로 지정된 지역 코드입니다. ('최상위 도메인') 2 문자 값입니다. 이 매개변수는 관련 법규에 따라 결과에 영향을 미칠 수도 있습니다.
  • result_type: 파이프(|)로 구분된 하나 이상의 주소 유형 필터입니다. 매개변수에 여러 주소 유형이 포함된 경우 API는 이러한 유형과 일치하는 모든 주소를 반환합니다. 처리에 관한 참고사항: result_type 매개변수는 지정된 주소 유형으로 검색을 제한하지 않습니다. 그보다는 result_type는 검색 후 필터 역할을 합니다. API는 결과를 latlng 삭제하고 결과를 삭제합니다. 일치하지 않는 모든 주소 제외).다음 값은 지원됨: <ph type="x-smartling-placeholder">
      </ph>
    • street_address는 정확한 상세 주소를 나타냅니다.
    • route는 이름이 지정된 경로(예: 'US 101')를 나타냅니다.
    • intersection은 일반적으로 두 주요 도로의 주요 교차로를 나타냅니다.
    • political은 정치적 독립체를 나타냅니다. 일반적으로 이 유형은 특정 행정 구역의 다각형을 나타냅니다.
    • country는 전국적인 정치적 독립체를 나타내고 일반적으로 지오코더에서 반환하는 순위가 가장 높은 유형입니다.
    • administrative_area_level_1은 국가 수준 아래 첫 번째 행정 독립체를 나타냅니다. 미국에서 이 행정 구역 수준은 주입니다. 모든 국가에 이러한 행정 구역 수준이 표시되지는 않습니다. 대부분의 경우 administrative_area_level_1 짧은 이름은 ISO 3166-2 하위 구역이나 기타 널리 보급된 목록들과 거의 일치하지만 지오코딩 결과는 다양한 신호와 위치 데이터를 기반으로 하기 때문에 이러한 일치가 보장되지는 않습니다.
    • administrative_area_level_2는 국가 수준 아래 두 번째 행정 독립체를 나타냅니다. 미국에서 이 행정 구역 수준은 카운티입니다. 모든 국가에 이러한 행정 구역 수준이 표시되지는 않습니다.
    • administrative_area_level_3은 국가 수준 아래 세 번째 행정 독립체를 나타냅니다. 이 유형은 하위 행정 구역을 나타냅니다. 모든 국가에 이러한 행정 구역 수준이 표시되지는 않습니다.
    • administrative_area_level_4는 국가 수준 아래 네 번째 행정 독립체를 나타냅니다. 이 유형은 하위 행정 구역을 나타냅니다. 모든 국가에 이러한 행정 구역 수준이 표시되지는 않습니다.
    • administrative_area_level_5는 국가 수준 아래 다섯 번째 행정 독립체를 나타냅니다. 이 유형은 하위 행정 구역을 나타냅니다. 모든 국가에 이러한 행정 구역 수준이 표시되지는 않습니다.
    • administrative_area_level_6은 국가 수준 아래 여섯 번째 행정 독립체를 나타냅니다. 이 유형은 하위 행정 구역을 나타냅니다. 모든 국가에 이러한 행정 구역 수준이 표시되지는 않습니다.
    • administrative_area_level_7은 국가 수준 아래 일곱 번째 행정 독립체를 나타냅니다. 이 유형은 하위 행정 구역을 나타냅니다. 모든 국가에 이러한 행정 구역 수준이 표시되지는 않습니다.
    • colloquial_area는 일반적으로 사용되는 독립체의 대체 이름을 나타냅니다.
    • locality는 도시 또는 마을로 통합된 정치적 독립체를 나타냅니다.
    • sublocality는 지역 아래 첫 번째 행정 독립체를 나타냅니다. 일부 위치의 경우 추가 유형 중 하나(sublocality_level_1~sublocality_level_5)를 받을 수도 있습니다. 각 하위 지역 수준은 하나의 행정 독립체입니다. 숫자가 클수록 더 작은 지리적 영역을 나타냅니다.
    • neighborhood는 이름이 지정된 동네를 나타냅니다.
    • premise는 이름이 지정된 위치, 일반적으로 공통된 이름을 가진 건물 또는 여러 건물을 나타냅니다.
    • subpremise는 이름이 지정된 위치 아래 첫 번째 항목, 일반적으로 공통된 이름을 가진 여러 건물 중 한 건물을 나타냅니다.
    • plus_code는 위도와 경도에서 파생된 인코딩된 위치 참조를 나타냅니다. Plus Code는 상세 주소가 없는(건물에 번호가 지정되지 않거나 거리 이름이 없는) 장소의 상세 주소 대신 사용할 수 있습니다. 자세한 내용은 https://plus.codes를 참고하세요.
    • postal_code는 국가 내에서 우편물을 보낼 때 사용되는 우편번호를 나타냅니다.
    • natural_feature는 유명한 자연 지형지물을 나타냅니다.
    • airport는 공항을 나타냅니다.
    • park는 이름이 지정된 공원을 나타냅니다.
    • point_of_interest는 이름이 지정된 관심 장소를 나타냅니다. 일반적으로 이러한 '관심 장소'는 '엠파이어 스테이트 빌딩' 또는 '에펠탑'과 같이 다른 카테고리에 쉽게 포함되지 않는 유명한 지역 항목입니다.
  • location_type: 하나 이상의 위치 유형 필터입니다. 파이프 (|)로 구분됩니다. 매개변수에 여러 개의 위치 유형의 경우 API는 유형 중 하나와 일치하는 모든 주소를 반환합니다. 처리 관련 참고사항: location_type 매개변수는 지정된 위치 유형으로 검색을 제한할 수 있습니다. 그보다는 location_type는 검색 후 필터 역할을 합니다. API는 결과를 latlng 삭제하고 결과를 삭제합니다. 지정된 위치 유형과 일치하지 않는 키워드 목록을 반환합니다. 다음과 같은 값이 지원됩니다.
    • "ROOFTOP"는 Google이 상세 주소 정밀도까지 정확한 위치 정보가 있습니다.
    • "RANGE_INTERPOLATED"는 두 지점 사이에 보간된 근사값 (일반적으로 도로에 해당)을 정확한 점 (예: 교차점) 보간된 범위는 일반적으로 는 상세 주소에 옥상 지오코드를 사용할 수 없음을 나타냅니다.
    • "GEOMETRIC_CENTER"는 기하학적 구조만 반환합니다. 다중선 (예: 거리)이나 다각형 (지역)
    • "APPROXIMATE"는 대략적인 것으로 특성화된 주소만 반환합니다.
  • extra_computations — 이 매개변수를 사용하여 응답에서 다음과 같은 추가 기능이 제공됩니다. <ph type="x-smartling-placeholder">를 통해 개인정보처리방침을 정의할 수 있습니다. 동일한 API 요청에 대해 이러한 기능을 여러 개 사용 설정하려면 다음을 포함하세요. 각 기능에 대한 요청의 extra_computations 매개변수 예를 들면 다음과 같습니다.
    extra_computations=ADDRESS_DESCRIPTORS&extra_computations=BUILDING_AND_ENTRANCES

result_type 필터와 location_type 필터가 모두 있는 경우 API는 result_typelocation_type 값입니다. 허용되는 필터 값이 없으면 API는 ZERO_RESULTS를 반환합니다.

역 지오코딩의 예

다음 쿼리에는 브루클린의 어떤 위치에 대한 위도/경도 값이 포함됩니다.

https://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452&key=YOUR_API_KEY

위의 쿼리는 다음과 같은 결과를 반환합니다.

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "277",
               "short_name" : "277",
               "types" : [ "street_number" ]
            },
            {
               "long_name" : "Bedford Avenue",
               "short_name" : "Bedford Ave",
               "types" : [ "route" ]
            },
            {
               "long_name" : "Williamsburg",
               "short_name" : "Williamsburg",
               "types" : [ "neighborhood", "political" ]
            },
            {
               "long_name" : "Brooklyn",
               "short_name" : "Brooklyn",
               "types" : [ "sublocality", "political" ]
            },
            {
               "long_name" : "Kings",
               "short_name" : "Kings",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "New York",
               "short_name" : "NY",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "United States",
               "short_name" : "US",
               "types" : [ "country", "political" ]
            },
            {
               "long_name" : "11211",
               "short_name" : "11211",
               "types" : [ "postal_code" ]
            }
         ],
         "formatted_address" : "277 Bedford Avenue, Brooklyn, NY 11211, USA",
         "geometry" : {
            "location" : {
               "lat" : 40.714232,
               "lng" : -73.9612889
            },
            "location_type" : "ROOFTOP",
            "viewport" : {
               "northeast" : {
                  "lat" : 40.7155809802915,
                  "lng" : -73.9599399197085
               },
               "southwest" : {
                  "lat" : 40.7128830197085,
                  "lng" : -73.96263788029151
               }
            }
         },
         "place_id" : "ChIJd8BlQ2BZwokRAFUEcm_qrcA",
         "types" : [ "street_address" ]
      },

  ... Additional <code>results[]</code> ...

역지오코더가 둘 이상의 결과를 반환한다는 점에 유의하세요. 이 "formatted_address" 결과는 우편 주소가 아니라 위치를 지리적으로 명명할 수 있는 방법이 없습니다. 예를 들어 점을 지오코딩할 때 지오코딩된 지점은 번지로 표시될 수 있습니다. 도시 (시카고), 주 (일리노이) 또는 국가 (미국)로 합니다. 지오코더에게는 모든 것이 '주소'입니다. 역 지오코더는 유효한 결과로 간주됩니다.

역지오코더는 정치적 엔터티(국가, 주, 도시 및 근방), 상세 주소, 우편번호가 일치하는 항목을 찾습니다.

다음에서 반환한 formatted_address 값의 전체 목록은 이전 쿼리가 아래에 나와 있습니다.

{
   "plus_code" : {
      "compound_code" : "P27Q+MCM New York, NY, USA",
      "global_code" : "87G8P27Q+MCM"
   },
   "results" : [
      {
         "formatted_address" : "277 Bedford Ave, Brooklyn, NY 11211, USA",
         ...
         "types" : [ "street_address" ]
      },
      {
         "formatted_address" : "279 Bedford Ave, Brooklyn, NY 11211, USA",
         ...
         "types" : [ "premise" ]
      },
      {
         "formatted_address" : "277 Bedford Ave, Brooklyn, NY 11211, USA",
         ...
         "types" : [ "establishment", "point_of_interest" ]
      },
      {
         "formatted_address" : "291-275 Bedford Ave, Brooklyn, NY 11211, USA",
         ...
         "types" : [ "route" ]
      },
      {
         "formatted_address" : "P27Q+MC New York, NY, USA",
         ...
         "types" : [ "plus_code" ]
      },
      {
         "formatted_address" : "South Williamsburg, Brooklyn, NY, USA",
         ...
         "types" : [ "neighborhood", "political" ]
      },
      {
         "formatted_address" : "Brooklyn, NY 11211, USA",
         ...
         "types" : [ "postal_code" ]
      },
      {
         "formatted_address" : "Williamsburg, Brooklyn, NY, USA",
         ...
         "types" : [ "neighborhood", "political" ]
      },
      {
         "formatted_address" : "Kings County, Brooklyn, NY, USA",
         ...
         "types" : [ "administrative_area_level_2", "political" ]
      },
      {
         "formatted_address" : "Brooklyn, NY, USA",
         ...
         "types" : [ "political", "sublocality", "sublocality_level_1" ]
      },
      {
         "formatted_address" : "New York, NY, USA",
         ...
         "types" : [ "locality", "political" ]
      },
      {
         "formatted_address" : "New York, USA",
         ...
         "types" : [ "administrative_area_level_1", "political" ]
      },
      {
         "formatted_address" : "United States",
         ...
         "types" : [ "country", "political" ]
      }
   ],
   "status" : "OK"
}

이 API는 가장 구체적인 동네, 지역, 도시 등 덜 구체적인 정치적 독립체에게 시, 카운티, 주입니다. 일반적으로 더 정확한 주소는 표시됩니다. 특정 유형의 광고를 일치시키려면 자세한 내용은 아래의 광고 게재 제한 확인할 수 있습니다 이로 인해 검색 결과의 상대적 위치는 서로 다를 수 있습니다

유형별로 필터링된 역 지오코딩

다음 예에서는 반환된 주소를 필터링하여 위치 유형이 ROOFTOP이고 주소 유형이 street_address인 주소만 포함합니다.

https://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452
&location_type=ROOFTOP&result_type=street_address&key=YOUR_API_KEY

참고: 이 필터는 역 지오코딩.

역 지오코딩 응답

역 지오코딩 응답의 형식은 있습니다. 지오코딩 응답을 참고하세요. 아래는 역지오코딩 응답에서 가능한 상태 코드입니다.

역 지오코딩 상태 코드

지오코딩 응답 객체 내의 "status" 필드는 요청의 상태를 포함하며, 역지오코딩이 작동하지 않는 원인을 추적하는 데 도움이 되는 디버깅 정보를 포함할 수 있습니다. "status" 필드에는 다음 값이 포함될 수 있습니다.

  • "OK"는 오류가 발생하지 않았으며 하나 이상의 주소가 반환되었음을 나타냅니다.
  • "ZERO_RESULTS"는 역 지오코딩이 변경되었음을 나타냅니다. 성공했지만 반환된 결과가 없습니다. 이는 지오코더가 원격 위치에서 latlng를 전달했습니다.
  • "OVER_QUERY_LIMIT"는 다음 단계를 완료했음을 나타냅니다. 지정할 수 있습니다
  • "REQUEST_DENIED"는 요청이 거부되었음을 나타냅니다. 그 이유는 요청에 result_type 또는 location_type 매개변수가 포함되어 있지만 API 키가 포함되어 있지 않기 때문일 수 있습니다.
  • 일반적으로 "INVALID_REQUEST"는 다음 중 하나를 나타냅니다.
    • 쿼리(address, components 또는 latlng)가 누락되었습니다.
    • 잘못된 result_type 또는 location_type가 제공되었습니다.
  • "UNKNOWN_ERROR"는 서버 오류로 인해 요청을 처리하지 못했음을 나타냅니다. 다시 시도하면 요청이 성공할 수도 있습니다.

역 지오코딩 플러스 코드

지오코딩 응답 내 plus_code 필드에는 는 쿼리된 위도와 경도에 가장 근접합니다. 또한 대부분의 경우 JSON 결과 배열에는 전체 지오코딩이 포함됩니다. plus_code 유형 및 더하기 기호가 포함된 주소 결과 생성합니다. 디코딩된 Plus Code와 요청 지점 간의 거리는 10미터 미만으로 보장됩니다.