このよくある質問では、Geocoding API に関する質問を取り上げます。Google Maps Platform に関する一般的な質問については、Google Maps Platform に関するよくある質問をご覧ください。住所をジオコーディングする場合のベスト プラクティスもご覧ください。
トラブルシューティング
- ジオコーダを使用すると、ZERO_RESULTS を返すクエリが増えます。どうなっているのですか?
- 迅速なレスポンスが必要ですが、ジオコーダはアプリケーションに対して動作が遅すぎます。迅速なレスポンスのために何を使用すればよいでしょうか?
- Directions API と Distance Matrix API のレイテンシを短縮するにはどうすればよいですか?
- プレミアム プランを利用していますが、Places API のコストが高すぎます。コストを削減するにはどうすればよいですか?
- ジオコーダのバグを報告するにはどうすればよいですか?
- 私のユースケースでは、ジオコーダが適切な結果を生成しません。どのようなヘルプが用意されていますか?
- ジオコーダでコンポーネント フィルタリングを使用して最適な結果を得るには、どうすればよいですか?
トラブルシューティング
- ジオコーダを使用すると、ZERO_RESULTS を返すクエリが増えています。どうなっているのですか?
-
ジオコーダでは、あいまいで不完全で、形式が不適切なクエリ(スペルミスや存在しない住所など)があると、ZERO_RESULTS になりがちです。住所が見つからない場合は、部分的な結果よりも ZERO_RESULTS をおすすめします(たとえば、住所の代わりに区域のみを返す)。
アプリケーションでユーザーによる住所入力を処理する場合は、Places API の Place Autocomplete 機能を使用した結果の質が向上します。 Place Autocomplete を使用すると、ユーザーは入力した内容に基づいて一連の検索結果を選択できるため、類似した名前の検索結果を選択したり、住所のスペルを間違えた場合にクエリを調整したりできます。
あいまいまたは不完全なクエリ、またはエラーが含まれる可能性のあるクエリを処理するアプリケーションの場合は、Geocoding API のフォワード ジオコーダではなく、Places API の Place Autocomplete 機能を使用することをおすすめします。詳しくは、 住所をジオコーディングする際のベスト プラクティスと Google Maps API での住所のジオコーディングに関するブログ投稿をご覧ください。
- 高速なレスポンスが必要ですが、ジオコーダはアプリケーションに対して動作が遅すぎます。迅速なレスポンスのために何を使用すればよいでしょうか?
-
ユーザー入力に応答するためレイテンシの影響を受けやすいアプリケーションでは、住所のジオコーディングではなく、Places API の Place Autocomplete 機能(JavaScript、Android、iOS で利用可能)を使用することをおすすめします。プレイス オートコンプリートはインタラクティブな使用を想定して最適化されているため、レイテンシを大幅に短縮できます。
Geocoding API の住所のジオコーディングは、オンライン フォームに入力された配送先住所など、正式であいまいさのない、適切な形式の住所を使用するように最適化されているため、Place Autocomplete よりもレイテンシが高くなります。フォワード ジオコーダはカバレッジが広く、検索結果の品質も向上しますが、レイテンシは若干高くなります。
- Directions API と Distance Matrix API のレイテンシを短縮するにはどうすればよいですか?
-
地点、出発地、目的地を指定するには、住所の代わりにプレイス ID を使用します。プレイス ID は、Places API の Place Autocomplete 機能、または Maps JavaScript API のプレイス ライブラリから取得してください。Place Autocomplete のコストを削減できる
placeIdOnly
オプションに関する情報もご覧ください。Directions API や Distance Matrix API にプレイス ID や latlng ではなく住所の文字列がクエリされると、Geocoding API と同じバックエンドを使用して、ルートの計算前にその住所をプレイス ID に変換します。Place Autocomplete は住所のジオコーディングよりも高速です。ユーザー入力に応答するなど、レイテンシの影響を受けやすい状況で Directions API または Distance Matrix API を使用するアプリケーションの場合は、Place Autocomplete を使用して、住所に対応するプレイス ID を取得し、そのプレイス ID を Directions API または Distance Matrix API に渡すことをおすすめします。このアプローチにより、レイテンシが大幅に短縮されます。 Place Autocomplete をルートとともに使用する方法の例については、ドキュメントをご覧ください。
- ジオコーダのバグを報告するにはどうすればよいですか?
-
フォワード ジオコーダ サービスに関して バグレポートや 機能リクエストがある場合は、一般公開されている Issue Tracker でお知らせください。
- ジオコーダが、このユースケースで適切な結果を生成しません。どのようなサポートが受けられますか?
-
Google が公開している Issue Tracker から特定のクエリを共有してお知らせください。結果の品質に問題を引き起こすバグやシステム上の問題がないかどうか、またデベロッパーの方がより良い結果を得るためにサポートできるベスト プラクティス ガイドに何か変更がないか調査できます。
- ジオコーダでコンポーネント フィルタリングを使用して最適な結果を得るには、どうすればよいですか?
-
ジオコーダでは、 コンポーネント フィルタリングは
postal_code
とcountry
の制限のみを適用します。次の例は、必要な結果に応じてコンポーネント フィルタリングを使用する最適な方法を示しています。サンプル リクエスト URL の「YOUR_API_KEY」は実際の API キーに置き換えてください。- 郵便番号を特定の国に限定するには、ISO 3166-2 国コードを使用して国の制限を指定します。たとえば、
components=country:CH|postal_code:8000
は「8000 Zürich, Switzerland」を返します。https://maps.googleapis.com/maps/api/geocode/json?components=country:CH%7Cpostal_code:8000&key=YOUR_API_KEY
- クエリを特定の国に限定するには、ISO 3166-2 国コードを使用して国の制限を指定します。国名などの略語から国コードを使用した場合と同じ結果になるとは限りません。
例:
components=country:FRA|locality:gallus
のジオコーディングは、ドイツのフランクフルト アム マインにあるガラスの下位地区を返します。これは、フランス(FRA)の 3 文字の国コードがサポートされていないため、どの国でも結果が許可され、フランクフルトでの結果はフランスのどの国よりも適合するためです。https://maps.googleapis.com/maps/api/geocode/json?components=country:FRA%7Clocality:gallus&key=YOUR_API_KEY
- Geocoding API は、あいまいなクエリに対して必ずしも複数の結果を返すわけではありません。このようなクエリには、Place Autocomplete が適しています。
例:
components=country:US|locality:madrid
のジオコーディングでは「Madrid, NM 87010, USA」が返されますが、米国内の「Madrid」という名前の他の都市は返されません。https://maps.googleapis.com/maps/api/geocode/json?components=country:US%7Clocality:madrid&key=YOUR_API_KEY
input=madrid&components=country:us&types=(regions)
に Place Autocomplete を使用し、さらにlocation
とradius
でビューポートを指定して 位置情報の結果にバイアスをかけると、米国の複数の都市(「マドリッド」)を含むレスポンスが生成されます。https://maps.googleapis.com/maps/api/place/autocomplete/json?location=37.386052,-122.083851&radius=10000&input=madrid&components=country:us&types=(regions)&key=YOUR_API_KEY
- 郵便番号を特定の国に限定するには、ISO 3166-2 国コードを使用して国の制限を指定します。たとえば、