Geocoding API v3 を使ってみる

欧州経済領域(EEA)のデベロッパー

Geocoding API は、住所のジオコーディングとリバース ジオコーディングを提供するサービスです。

ジオコーディングとは、住所(番地など)を地理座標(緯度や経度など)に変換する処理のことをいいます。地理座標を使用して、マーカーを配置したり地図の位置決めを行ったりできます。

リバース ジオコーディングとは、地理座標を人が読める住所に変換するプロセスです。

Geocoding API を使用して、特定のプレイス ID の住所を探すこともできます。

リクエストとレスポンスの例

Geocoding API には HTTP インターフェースを介してアクセスします。以下に、ジオコーディングとリバース ジオコーディングのリクエストの例を示します。

ジオコーディングのリクエストとレスポンス(緯度と経度の検索)

次の例では、「1600 Amphitheatre Parkway, Mountain View, CA」の緯度と経度をリクエストし、出力が JSON 形式である必要があることを指定しています。

https://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&key=YOUR_API_KEY

このテストを行うには、ウェブブラウザに URL を入力します(YOUR_API_KEY は実際の API キーに置き換えてください)。レスポンスには、その住所の緯度と経度が含まれます。

ジオコーディング リクエスト URL の作成、利用可能なパラメータ、 レスポンスの理解について詳しくは、デベロッパー ガイドをご覧ください。

JSON 形式のジオコーディングのレスポンス例を次に示します。

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "1600",
               "short_name" : "1600",
               "types" : [ "street_number" ]
            },
            {
               "long_name" : "Amphitheatre Parkway",
               "short_name" : "Amphitheatre Pkwy",
               "types" : [ "route" ]
            },
            {
               "long_name" : "Mountain View",
               "short_name" : "Mountain View",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Santa Clara County",
               "short_name" : "Santa Clara County",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "California",
               "short_name" : "CA",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "United States",
               "short_name" : "US",
               "types" : [ "country", "political" ]
            },
            {
               "long_name" : "94043",
               "short_name" : "94043",
               "types" : [ "postal_code" ]
            }
         ],
         "formatted_address" : "1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA",
         "geometry" : {
            "location" : {
               "lat" : 37.4267861,
               "lng" : -122.0806032
            },
            "location_type" : "ROOFTOP",
            "viewport" : {
               "northeast" : {
                  "lat" : 37.4281350802915,
                  "lng" : -122.0792542197085
               },
               "southwest" : {
                  "lat" : 37.4254371197085,
                  "lng" : -122.0819521802915
               }
            }
         },
         "place_id" : "ChIJtYuu0V25j4ARwu5e4wwRYgE",
         "plus_code" : {
            "compound_code" : "CWC8+R3 Mountain View, California, United States",
            "global_code" : "849VCWC8+R3"
         },
         "types" : [ "street_address" ]
      }
   ],
   "status" : "OK"
}

リバース ジオコーディングのリクエストとレスポンス(住所の検索)

次の例では、米国ニューヨーク州ブルックリンの特定の緯度/経度に対応する住所をリクエストしています。このリクエストでは、出力が JSON 形式になるように指定しています。

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

このテストを行うには、URL をウェブブラウザに入力します(「YOUR_API_KEY」は実際の API キーに置き換えてください)。レスポンスには、緯度と経度の位置の人が読める形式の住所が含まれます。

リバース ジオコーディング リクエスト URL の作成、利用可能なパラメータ、 レスポンスの解釈について詳しくは、デベロッパー ガイドをご覧ください。

JSON 形式のリバース ジオコーディングのレスポンス例を次に示します。

{
   "plus_code" : {
      "compound_code" : "P27Q+MC New York, NY, USA",
      "global_code" : "87G8P27Q+MC"
   },
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "279",
               "short_name" : "279",
               "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" : [ "political", "sublocality", "sublocality_level_1" ]
            },
            {
               "long_name" : "Kings County",
               "short_name" : "Kings County",
               "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" : "279 Bedford Ave, Brooklyn, NY 11211, USA",
         "geometry" : {
            "location" : {
               "lat" : 40.7142484,
               "lng" : -73.9614103
            },
            "location_type" : "ROOFTOP",
            "viewport" : {
               "northeast" : {
                  "lat" : 40.71559738029149,
                  "lng" : -73.9600613197085
               },
               "southwest" : {
                  "lat" : 40.71289941970849,
                  "lng" : -73.96275928029151
               }
            }
         },
         "place_id" : "ChIJT2x8Q2BZwokRpBu2jUzX3dE",
         "plus_code" : {
            "compound_code" : "P27Q+MC Brooklyn, New York, United States",
            "global_code" : "87G8P27Q+MC"
         },
         "types" : [
            "bakery",
            "cafe",
            "establishment",
            "food",
            "point_of_interest",
            "store"
         ]
      },

   ... Additional results truncated in this example[] ...

   ],
   "status" : "OK"
}

クライアント ライブラリを使用してコーディングを開始する

クライアント ライブラリには、認証、リクエスト スロットリング、自動再試行などの一般的なタスクの実装が組み込まれているため、Google マップ ウェブサービス API を使用した開発を効率化できます。Geocoding API は、Google マップ サービス向けの Java クライアント、Python クライアント、Go クライアント、Node.js クライアントで利用できます。

認証、割り当て、料金、ポリシー

認証

Geocoding API を使用するには、まず API を有効にして、適切な認証情報を取得する必要があります。詳しくは、Google Maps Platform スタートガイドをご覧ください。

割り当てと料金

Geocoding API に設定されている割り当てと料金の詳細については、使用量と請求額のページをご覧ください。

ポリシー

Geocoding API を使用する際は、API ポリシーに従う必要があります。

詳細

Geocoding API を使用してできることは他にもあります。その他のデモ、例、使用可能なパラメータ、ステータス コードとエラー メッセージなどの詳細については、 Geocoding API デベロッパー ガイドをご覧ください。

Geocoding API デベロッパー ガイドでは、Geocoding API ウェブサービスについて説明しています。このドキュメントは、Google Maps Platform API のいずれかによって提供される地図内でジオコーディング データを使用する、ウェブサイトおよびモバイル デベロッパーを対象としています。