GeocodeAddress メソッドと SearchDestinations メソッドは、オプションの effort パラメータをサポートしています。このパラメータを使用すると、レスポンスのレイテンシとアドレス解決の精度のトレードオフを制御できます。
標準のジオコーディングでは、適切な形式の住所を 1 秒未満のレイテンシで処理できますが、実際の入力は不完全、非公式、または複雑な場合がよくあります(例: "Flat 4B, Sunrise Apartments, opposite Central Mall, Andheri West,
Mumbai"、"where the warriors play, sf")。effort レベルを高く設定すると、Geocoding API に拡張推論と曖昧さ回避を適用して、難しい住所を解決するように指示できます。
取り組みレベル
effort パラメータには、次のいずれかの値を指定します。
| 労力レベル | 説明 | 通常のレイテンシ | おすすめのユースケース |
|---|---|---|---|
EFFORT_UNSPECIFIED |
デフォルト値。LOW の取り組みと同じように動作します。 |
1 秒未満 | デフォルトの標準ジオコーディング。 |
LOW |
応答時間を最速にするように最適化します。複雑な住所に対して、拡張検索や曖昧性除去を行いません。 | 1 秒未満 | リアルタイムのインタラクティブな検索、大量の標準的な住所検証。 |
MEDIUM |
速度と精度のバランスを取ります。ほとんどのリクエストは、標準の低レイテンシで返されます。曖昧な住所や複雑な住所の場合、精度を向上させるために追加の処理が適用されます。これには数秒かかることがあります。 | 標準的な住所の場合は 1 秒未満、曖昧な住所の場合は数秒(4 秒以下) | ユーザーが短い一時停止を許容できるインタラクティブなユーザー ワークフロー(購入手続き時の住所確認など)。 |
HIGH |
不完全な住所、非公式な住所、複雑な住所の解決精度を最大化します。応答時間が大幅に長くなる可能性があります。 | 複雑なアドレスの場合は最大 20 秒 | バックグラウンド プロセス、ジオコード一括処理、物流配送、購入手続き後の非同期の住所調整。 |
リクエストの例
目的地を検索(SearchDestinations)
https://geocode.googleapis.com/v4alpha/geocode/destinations への POST リクエストの JSON リクエスト本文に effort フィールドを含めます。effort パラメータは、主に addressQuery の解決に影響します。
curl -X POST -d '{
"addressQuery": {
"addressQuery": "Flat 4B, Sunrise Apartments, opposite Central Mall, Andheri West, Mumbai"
},
"effort": "HIGH"
}' \
-H 'Content-Type: application/json' \
-H "X-Goog-Api-Key: API_KEY" \
-H "X-Goog-FieldMask: *" \
https://geocode.googleapis.com/v4alpha/geocode/destinations
住所をジオコーディングする(GeocodeAddress)
/v4alpha/ エンドポイントへの GET リクエストで、effort パラメータを URL クエリ パラメータとして渡します。
curl -X GET -H 'Content-Type: application/json' \ -H "X-Goog-Api-Key: API_KEY" \ "https://geocode.googleapis.com/v4alpha/geocode/address/where+the+warriors+play,+sf?effort=MEDIUM"
レイテンシの影響を軽減する
アプリケーションで MEDIUM または HIGH のエフォートを使用する場合、シングルパス リクエストを送信するのが最も簡単な統合方法ですが、これらのモードのリクエストではレイテンシが高くなり、同期ワークフロー、ユーザー向けワークフロー、レイテンシに敏感なワークフローが遅延する可能性があります。
インタラクティブなユーザーフロー(購入手続きや予約など)に対するこのレイテンシの影響を軽減するには、マルチパス ワークフローを使用します。
- パス 1(インタラクティブ):
effort=LOW(またはデフォルト)を使用して同期リクエストを送信し、1 秒未満のレイテンシで住所をすぐに検証します。 - パス 2(バックグラウンド):
effort=MEDIUMまたはeffort=HIGHを使用して非同期のフォローアップ リクエストを送信し(購入手続き後や発送前など)、ユーザーをブロックすることなく、複雑な住所を高精度の座標、入口、ナビゲーション ポイントに解決します。
使用量上限
試験運用版(v4alpha)のリリース段階では、effort が MEDIUM または HIGH に設定されたリクエストには、標準(LOW)リクエストよりも厳しいレート制限が適用されます。アプリケーションがこれらのレート制限を超えると、API は RESOURCE_EXHAUSTED(HTTP 429)エラーを返します。HTTP 429 エラーが発生した場合や、ユースケースでより高い割り当てが必要な場合は、フィードバック チャネルからお問い合わせください。
フィードバック
これは Geocoding API の試験運用版の機能です。フィードバックがございましたら、geocoding-feedback-channel@google.com までお寄せください。