はじめに
Street View Static API メタデータ リクエストは、ストリートビュー パノラマに関するデータを提供します。メタデータを使用すると、特定の場所でストリートビュー画像が利用できるかどうかを確認できます。また、緯度と経度の座標、パノラマ ID、写真の撮影日、画像の著作権情報にプログラムでアクセスできます。このメタデータにアクセスすると、アプリケーションのエラー動作をカスタマイズできます。
Street View Static API のメタデータ リクエストは、無料でご利用いただけます。メタデータをリクエストしても、割り当ては消費されません。 割り当てが消費されるのは、Street View Static API を使用して画像を読み込む場合のみです。
ストリートビュー画像のメタデータ リクエストを行う場合、パノラマ画像の正確度は 50 m です。
画像のメタデータにアクセスする
ストリートビュー画像のメタデータ リクエストは、次の形式の HTTP URL です。
https://maps.googleapis.com/maps/api/streetview/metadata?parameters
URL の標準と同様に、すべてのパラメータはアンパサンド(&)文字を使用して区切ります。
メタデータ リクエストの必須パラメータ
メタデータ リクエストは、Street View Static API 画像リクエストと同じ URL パラメータを受け入れますが、必須なのは以下のパラメータのみです。
次のいずれかを実行します。
location
- テキスト文字列(Chagrin Falls, OH
など)か、カンマ区切りの緯度と経度の座標ペア(40.457375,-80.009353
)のいずれかを指定できます。
または
pano
- 特定のパノラマ ID。パノラマの ID は時間の経過とともに変更される可能性があるため、この ID は保持しないでください。代わりに、位置の住所または緯度と経度の座標を保存して、パノラマ ID を更新できるようにします。詳しくは、削除されたパノラマ ID を更新するをご覧ください。
さらに:
key
とsignature
- リクエストの認証に API キーが必要です。デジタル署名は特定の状況でも必須で、常に推奨されています。詳細については、鍵と署名を取得するをご覧ください。
必須パラメータのみを含むメタデータ リクエストは、次のようになります。
https://maps.googleapis.com/maps/api/streetview/metadata?location=&key=YOUR_API_KEY&signature=
または次のような形式にします。
https://maps.googleapis.com/maps/api/streetview/metadata?pano=&key=YOUR_API_KEY&signature=
削除したパノラマ ID を更新する
パノラマ ID を取得して、ZERO_RESULTS
を取得するか、値がない場合は、パノラマ ID が削除されているため、更新する必要があります。
パノラマ ID の取得に使用した場所の住所または緯度と経度の座標を保存して、必要に応じて更新できるようにします。
パノラマ ID の変更を検出したら、元の住所または緯度と経度の座標を使用して、その場所に最も近いパノラマを再度検索し、新しいパノラマ ID を取得します。
メタデータ リクエストのオプション パラメータ
メタデータ リクエストには、size
、heading
、fov
、pitch
のパラメータを含めることができます。なお、これらのパラメータは、パノラマに関するデータや検索対象のパノラマ画像には影響しません。この API では、画像リクエストと同じパラメータを指定できるため、特定の画像リクエストに関連するメタデータ リクエストを簡単に作成できますが、メタデータ リクエストの場合、API は省略可能なパラメータとその値を無視します。これらのパラメータの使用方法については、Street View Static API に関するデベロッパー ガイドをご覧ください。
レスポンスの形式
メタデータのレスポンスは、JSON 形式でのみ返されます。
例
例 1: パノラマが見つかった場合
次の URL は、同じパノラマのメタデータと画像を正常にリクエストしています。
メタデータのリクエストとレスポンス
https://maps.googleapis.com/maps/api/streetview/metadata?size=600x300&location=eiffel%20tower,%20paris,%20france&heading=-45&pitch=42&fov=110&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
{ "copyright" : "© 2017 Google", "date" : "2016-05", "location" : { "lat" : 48.85783227207914, "lng" : 2.295226175151347 }, "pano_id" : "tu510ie_z4ptBZYo2BGEJg", "status" : "OK" }
画像がないことが想定される画像リクエストとレスポンス。
https://maps.googleapis.com/maps/api/streetview?size=600x300&location=eiffel%20tower,%20paris,%20france&heading=-45&pitch=42&fov=110&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
例 2: パノラマが見つからない
次の URL は、指定された場所またはその付近で見つからなかったパノラマについて、メタデータと画像をリクエストします。
メタデータのリクエストとレスポンス
https://maps.googleapis.com/maps/api/streetview/metadata?size=600x300&location=78.648401,14.194336&fov=90&heading=235&pitch=10&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
{ "status" : "ZERO_RESULTS" }
画像のリクエストとレスポンス
https://maps.googleapis.com/maps/api/streetview?size=600x300&location=78.648401,14.194336&fov=90&heading=235&pitch=10&key=YOUR_API_KEY&signature=YOUR_SIGNATURE
ステータス コード
メタデータ レスポンス オブジェクトの status
フィールドには、リクエストのステータスが含まれます。また、ストリートビュー リクエストが動作しない原因のトラブルシューティングに役立つデバッグ情報が含まれることもあります。status
フィールドには次の値が含まれます。
ステータス | 説明 |
---|---|
"OK" |
エラーが発生しなかったことを示します。パノラマが見つかり、メタデータが返されます。 |
"ZERO_RESULTS" |
指定された場所の付近ではパノラマが見つからなかったことを示します。このレスポンスは、存在しないパノラマ ID または無効なパノラマ ID を指定した場合に発生することがあります。[削除されたパノラマの ID を更新する](#refresh-hyperparameter)をご覧ください。 |
"NOT_FOUND" |
location パラメータで指定された住所文字列が見つからなかったことを示します。このメッセージは、存在しないアドレスが指定された場合に表示されることがあります。 |
"OVER_QUERY_LIMIT" |
この API の 1 日の割り当てまたは 1 秒あたりの割り当てを超過したことを示します。 |
"REQUEST_DENIED" |
リクエストが拒否されたことを示します。このメッセージは、リクエストが承認されていない場合、または API キーを含む Google Cloud コンソール プロジェクトで Street View Static API が有効になっていない場合に表示されることがあります。 |
"INVALID_REQUEST" |
通常は、クエリ パラメータ(住所、緯度と経度の座標、コンポーネント)が不足していることを示します。 |
"UNKNOWN_ERROR" |
サーバーエラーが原因でリクエストが処理できなかったことを示します。多くの場合、この問題は一時的なものです。再度リクエストすると、成功する可能性があります。 |
詳細
Street View Static API や他の Google Maps API サービスの使用方法について詳しくは、Maps API のサポートページをご覧ください。