ストリートビュー画像のメタデータ

はじめに

Street View Static API メタデータ リクエストは、ストリートビュー パノラマに関するデータを提供します。メタデータを使用すると、特定の場所でストリートビューの画像を利用できるかどうかを確認できます。また、緯度と経度の座標、パノラマ ID、写真の撮影日、画像の著作権情報にプログラムでアクセスすることもできます。このメタデータにアクセスすると、アプリケーションのエラー動作をカスタマイズできます。

Street View Static API のメタデータ リクエストは無料です。メタデータをリクエストしても割り当ては消費されません。 割り当ては、Street View Static API を使用して画像を読み込む場合にのみ消費されます。

ストリートビュー画像のメタデータ リクエストを行う場合、パノラマ画像の精度は 50 メートルです。

画像のメタデータにアクセスする

ストリートビュー画像のメタデータ リクエストは、次の形式の 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 を更新するをご覧ください。

さらに:

  • keysignature - リクエストの認証に API キーが必要です。デジタル署名は特定の状況では必須であり、常に推奨されます。詳細については、鍵と署名を取得するをご覧ください。

必須パラメータのみを含むメタデータ リクエストは次のようになります。

https://maps.googleapis.com/maps/api/streetview/metadata?location=&key=YOUR_API_KEY&signature=<YOUR_SIGNATURE>

または次のようにします。

https://maps.googleapis.com/maps/api/streetview/metadata?pano=&key=YOUR_API_KEY&signature=<YOUR_SIGNATURE>

削除されたパノラマ ID を更新する

パノラマ ID の取得中に ZERO_RESULTS または値が取得されなかった場合、パノラマ ID は削除されているため、更新する必要があります。

  1. パノラマ ID の取得に使用した場所の住所または緯度と経度の座標を保存しておき、必要に応じて更新できるようにします。

  2. パノラマ ID が変更されたことを検出したら、元の場所の住所または緯度と経度の座標を使用して、その場所に最も近いパノラマを再度検索し、新しいパノラマ ID を取得します。

メタデータ リクエストのオプション パラメータ

メタデータ リクエストには、sizeheadingfovpitch のパラメータを指定できます。これらのパラメータは、パノラマに関するデータや、検出されるパノラマには影響しません。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-pano) をご覧ください。
"NOT_FOUND" location パラメータで指定された住所文字列が見つからなかったことを示します。このメッセージは、存在しない住所が指定された場合に表示されることがあります。
"OVER_QUERY_LIMIT" この API の 1 日あたりの割り当てまたは秒あたりの割り当てを超えたことを示します。
"REQUEST_DENIED" リクエストが拒否されたことを示します。このメッセージは、リクエストをauthorizeしなかった場合や、API キーを含む Google Cloud コンソール プロジェクトで Street View Static API が有効になっていない場合に表示されます。
"INVALID_REQUEST" 通常、クエリ パラメータ(住所、緯度と経度の座標、コンポーネント)が不足していることを示します。
"UNKNOWN_ERROR" サーバーエラーが原因でリクエストを処理できなかったことを示します。この問題は多くの場合一時的なものです。もう一度試すと正常に処理される可能性があります。

詳細

Street View Static API やその他の Google Maps API プロダクトの使用方法について詳しくは、Maps API のサポートページをご覧ください。