
Street View Tiles は、道路レベルで撮影されたパノラマ画像が含まれている点を除き、2D タイルに似ています。ストリートビューで世界の名所を巡ったり、絶景を眺めたりしてみませんか。博物館や競技場、レストラン、お店などの施設の中の様子も見ることができます。この API エンドポイントを使用すると、次のものにアクセスできます。
- Google Maps Street View Tiles
- ストリートビューのメタデータ
- ストリートビューのサムネイル
番地単位で撮影された画像タイルを合成して、実際のパノラマ スタイルの効果を作り出すことができます。また、一連の場所(ルートなど)に対して最大 100 個のパノラマ ID を照会し、カメラの位置に関するより詳細なメタデータを取得できます。
ストリートビュー タイルを合成するには、ビューアが必要です。たとえば、ストリートビューのカスタム パノラマ ビューアなどです。
API キーを取得したら、次の手順でストリートビューの画像にアクセスできます。
セッション トークンを取得します。
mapTypeの値はstreetviewに設定してください。セッション トークンを使用して、1 つ以上の地理的位置のパノラマ ID(panoId)を取得します。
panoId 検索レスポンスのパノラマ ID を使用して、次の情報を取得します。
ストリートビューのメタデータ。一連の座標と半径を渡して、ストリートビューのメタデータを取得することもできます。
ストリートビューのメソッド
ストリートビューの画像とメタデータにアクセスするには、次の 4 つのメソッドのいずれかを呼び出します。
| メソッド | 説明 |
|---|---|
https://tile.googleapis.com/v1/streetview/tiles |
個々のストリートビュー タイルを返します。ストリートビュー タイルは、512 ピクセルから 13,312 ピクセルまでの 6 つのズームレベルで取得できます。 |
https://tile.googleapis.com/v1/streetview/panoIds |
最大 100 か所のビジネス情報を一括検索できます。画像があるすべての場所のパノラマ ID を返します。 |
https://tile.googleapis.com/v1/streetview/thumbnail |
ストリートビュー シーンのサムネイル JPEG 画像を返します。見出し、ピッチ、寸法、画角を指定できます。最小サイズは 16×16 ピクセルです。最大サイズは 250×600 ピクセルです。 |
https://tile.googleapis.com/v1/streetview/metadata |
指定されたパノラマに関する詳細情報を提供します。詳細には、関連する住所や、隣接するパノラマへのリンクが含まれます。 |
ストリートビューの panoId 検索
1 つ以上の地理的位置のパノラマ ID を見つけるには、その座標(lat、lng)を panoIds メソッドに渡します。リクエストの本文は、次の JSON コード例に示すように、locations 配列と、必要に応じて radius を含む JSON オブジェクトです。
curl -X POST -d '{ "locations": [ {"lat": -33.883837, "lng": 151.209307}, {"lat": -33.883700, "lng": 151.210307}, {"lat": 0, "lng": 0} ], "radius": 50 }' \ -H 'Content-Type: application/json' \ "https://tile.googleapis.com/v1/streetview/panoIds?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY"
locationslocations配列には、少なくとも 1 組の座標値を含める必要があります。最大 100 組まで含めることができます。radiusradius値(メートル単位)は、指定された場所を中心とした円の半径を定義します。この円内でパノラマが検索されます。デフォルト値は 50 メートルです。
PanoId レスポンス
Map Tiles API は、各場所に最も近いパノラマを検索し、そのパノラマ ID を返します。panoIds リクエストが成功すると、panoIds 配列を含む JSON オブジェクトが返されます。この配列には、リクエストした順序でパノラマ ID のリストが含まれます。Map Tiles API がリクエストされた場所のパノラマを見つけられない場合、配列内のその場所には空の文字列が返されます。例については、次の JSON コードをご覧ください。
{
"panoIds": [
"ACfH-n2HcBvRry_3oc9grw",
"f5DJZatBAAAXHlooS2wKbw",
""
]
}
panoIds を使用すると、次のことができます。
ストリートビューのメタデータ
ストリートビュー メタデータ リクエストは、パノラマに関する情報を取得します。ストリートビュー メタデータ リクエストは、HTTPS GET リクエストです。パノラマに関する情報は、次の 2 つの方法のいずれかで取得できます。
pano_idを渡すと、Map Tiles API はそのパノラマのメタデータを返します。ただし、
latとlngを渡すと、Map Tiles API は、指定された検索半径内で最も近いパノラマのメタデータを返します。
一連の座標と半径を渡す
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN&key=YOUR_API_KEY &lat=lat &lng=lng &radius=meters"
パノラマ ID は一時的なものであるため、最初のストリートビュー メタデータ リクエストで一連の座標と radius 値を渡すことをおすすめします。例として、次のコード スニペットをご覧ください。
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &lat=47.62066 &lng=-122.34923 &radius=50"
ストリートビューの画像の panoId を渡す
curl "https://tile.googleapis.com/v1/streetview/metadata?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=panoId"
メタデータのレスポンス
次の JSON コードは、一般的なメタデータ レスポンスの例です。
{
"panoId": "rZ9KeTyhA11i0VppYNzsSg",
"lat": 37.420864219339165,
"lng": -122.08446528377291,
"imageHeight": 6656,
"imageWidth": 13312,
"tileHeight": 512,
"tileWidth": 512,
"heading": 94.35,
"tilt": 88.39652,
"roll": 1.7181772,
"imageryType": "outdoor",
"date": "2023-01",
"copyright": "© 2023 Google",
"reportProblemLink": "https://cbks0.googleapis.com/cbk?output=report&panoid=rZ9KeTyhA11i0VppYNzsSg&cb_client=api&cbp=1,0,,0,0&hl=en-US&gl=us",
"addressComponents": [
{
"longName": "United States",
"shortName": "United States",
"types": [
"country"
]
},
{
"longName": "Mountain View, California",
"shortName": "Mountain View, California",
"types": [
"locality"
]
},
{
"longName": "Charleston Rd",
"shortName": "Charleston Rd",
"types": [
"route"
]
},
{
"longName": "1635",
"shortName": "1635",
"types": [
"street_number"
]
}
],
"links": [
{
"panoId": "Yw4pqzA4FEq1qs-BwZSvSQ",
"heading": 274.47998046875,
"text": "Charleston Rd"
},
{
"panoId": "1cODYwFRw1aZ45IignDIMw",
"heading": 94.47999572753906,
"text": "Charleston Rd"
}
]
}
次のリストに、レスポンス本文のフィールドの定義を示します。
panoId- このパノラマの一意の ID。パノラマ ID が 1 回のユーザー セッションよりも長く有効であるとは限りません。
lat、lng- パノラマの座標(緯度と経度)。これらの値は、リクエストで渡した座標とは異なる場合があります。これは、場所が最も近いパノラマにスナップされるためです。
imageHeight、imageWidth- スティッチされたパノラマ画像のサイズ。
tileHeight、tileWidth- 1 つのパノラマタイルのサイズ。
heading- コンパス方位。北から時計回りの角度で表されます。方位は [0,360] の範囲で返され、0 は真北を表します。
tilt- パノラマの傾き。パノラマの南極から水平線までの角度で測定されます。戻り値は [0, 180] の範囲内です。値が 90 度の場合は、水平線がパノラマの赤道にすでに揃っていることを示します。
roll- 水平を調整するためにパノラマに適用された、視線を中心とする時計回りの回転。戻り値は [0, 360] の範囲内です。
imageryType- 画像のタイプを示します。有効な値は
indoorとoutdoorです。 date- 画像が撮影された日付。すべての画像に日付データがあるわけではありません。ただし、このフィールドが使用可能な場合は、年(YYYY)と月(MM)の組み合わせが含まれます。(例: 2023-05、2024)。
copyright- ストリートビュー画像と一緒に帰属情報として表示する必要がある著作権表示テキスト。
reportProblemLink- このストリートビュー タイルに関する問題を報告するためにユーザーが使用するハイパーリンク。このハイパーリンクは画像の右下に表示し、「この画像に関する問題を報告する」などのリンクテキストを含める必要があります。
addressComponent- パノラマのアドレスの詳細を含む、構造化された Geocode。詳細については、Geocoding API ドキュメントのジオコーディングのリクエストとレスポンスをご覧ください。
links- このパノラマにリンクしているパノラマ ID のリスト。リンクが見つかった見出しも含まれます。たとえば、heading が 180° の場合、リンクされたパノラマは現在のパノラマの真南にあります。パノラマ ID は一時的なものであるため、1 回のユーザー セッションでのみ使用してください。
ストリートビューのサムネイル
ストリートビューの画像は thumbnail 形式でリクエストできます。サムネイルは、ユーザー定義のサイズ、見出し、ピッチ、画角を持つ、タイル化されていない画像です。サムネイル画像はタイルよりも解像度が低く、ファイルサイズも小さくなります。サムネイル リクエストを行うには、次のコード プロトタイプに示すように、thumbnail エンドポイントに GET リクエストを送信します。
curl "https://tile.googleapis.com/v1/streetview/thumbnail?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=panoId &height=FROM_16_TO_250 &width=FROM_16_TO_600 &pitch=FROM-90_TO_90 &yaw=FROM-360_TO_360 &fov=FROM_30_TO_120"
次のコード例は、カナダのウィスラーで撮影されたストリートビュー画像のサムネイルをダウンロードします。
curl "https://tile.googleapis.com/v1/streetview/thumbnail?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=Zzl28rqGJgaL2IdkUleP8A &height=200 &width=200 &pitch=0 &yaw=250 &fov=80" --output /tmp/example_thumbnail.png
![]()
必須パラメータ
panoId- 必要なサムネイルの一意の ID。パノラマ ID 値は、
panoIdsエンドポイントまたはmetadataエンドポイントから取得できます。どちらのエンドポイントも地理座標を受け取り、適切なpanoIdを返します。 session- 有効なセッション トークン。
key- API キー。
オプション パラメータ
height- サムネイルの高さをピクセル単位で指定します。16 ピクセルから 250 ピクセルの範囲で指定します。高さを指定しない場合、高さはデフォルトで最大許容値の 250 ピクセルになります。範囲外の値を指定すると、サムネイルは最も近い有効な値にスナップされます。
width- サムネイルの幅をピクセル単位で指定します。16 ピクセルから 600 ピクセルの範囲で指定できます。幅を指定しない場合、幅はデフォルトで最大許容値の 600 ピクセルになります。範囲外の値を指定すると、サムネイルは最も近い有効な値にスナップされます。
pitch- カメラの垂直軸に沿った角度を指定します。有効な値は
-90~90の範囲(両端を含む)です。デフォルト値は 0 です。 yaw- 水平軸に沿ったカメラの方向を指定します。有効な値は
-360~360の範囲です。デフォルト値は 0 です。 fov- 水平方向の画角を度数で指定します。最大値は 120 です。固定サイズのビューポート(一定サイズのストリートビュー画像など)を扱う場合、画角はズームを表します。値が小さいほど、ズームレベルが高くなります。デフォルト値は 90 です。
ストリートビューの画像タイル
panoId を取得したら、ストリートビューの画像タイルをリクエストできます。タイル リクエストは HTTPS GET リクエストです。次に例を示します。
curl "https://tile.googleapis.com/v1/streetview/tiles/z/x/y?session=YOUR_SESSION_TOKEN &key=YOUR_API_KEY &panoId=panoId"
このコード例では、z はズームレベル、x と y は、必要なストリートビュー タイルのタイル座標です。ストリートビュー パノラマのズームレベルは [0,5] の範囲で指定する必要があります。0 は最も広い画角を表します。
| ズーム レベル | おおよその画角 |
|---|---|
| 0 | 360° |
| 1 | 180° |
| 2 | 90° |
| 3 | 45° |
| 4 | 22.5° |
| 5 | 11.25° |
ストリートビュー タイルのレスポンス
ストリートビュー タイル リクエストが成功すると、createSession レスポンスで指定した形式とサイズの画像が返されます。

ズームレベル 0 では、パノラマ全体が tileWidth×tileHeight のタイルにサイズ変更されます。パノラマは X 軸方向のサイズが大きいため、タイルには Y 軸方向に空白スペースが含まれます。

ズームレベル 5 では、フルサイズのパノラマが使用され、タイルに分割されます。
著作権情報
すべてのストリートビュー パノラマに著作権情報を表示する必要があります。表示する文字列は、パノラマごとに異なる場合があります。著作権情報を取得するには、ストリートビューのメタデータをリクエストする必要があります。その後、レスポンスの copyright フィールドを参照できます。詳細については、データ アトリビューションをご覧ください。