Place Photo サービスは Places API の一部であり、高品質の写真コンテンツをアプリに追加できる読み取り専用 API です。Place Photo サービスを使用すると、プレイス データベースに保存されている数百万の写真を利用できます。Place Details リクエストを使って場所の情報を検索すると、関連する写真コンテンツに対する写真のリファレンスが返されます。Find Place、Nearby Search、Text Search のリクエストでも、関連する写真コンテンツがあれば、場所ごとに 1 つの写真のリファレンスが返されます。写真サービスでは、参照された写真にアクセスできるだけでなく、そうした画像をアプリケーションに最適なサイズに変更できます。
場所の写真のリクエスト
プレイスフォト リクエストは、次の形式の HTTP URL です。
https://maps.googleapis.com/maps/api/place/photo?parameters
検索リクエストを開始するには、特定のパラメータが必要です。URL の標準規則と同様に、すべてのパラメータはアンパサンド(&
)文字を使用して区切ります。パラメータとその有効な値のリストは次のとおりです。
Required parameters
photo_reference
A string identifier that uniquely identifies a photo. Photo references are returned from either a Place Search or Place Details request.
maxheight or maxwidth
maxheight
specifies the maximum desired height, in pixels, of the image. If the image is smaller than the values specified, the original image will be returned. If the image is larger in either dimension, it will be scaled to match the smaller of the two dimensions, restricted to its original aspect ratio.maxwidth
specifies the maximum desired width, in pixels, of the image. If the image is smaller than the values specified, the original image will be returned. If the image is larger in either dimension, it will be scaled to match the smaller of the two dimensions, restricted to its original aspect ratio.Both the
maxheight
andmaxwidth
properties accept an integer between1
and1600
.You must specify either
maxheight
, ormaxwidth
, or both.
写真の参照
Place Photo サービスへのすべてのリクエストには、Find Place、Nearby Search、Text Search、Place Details リクエストのレスポンスとして返される photo_reference
を含める必要があります。場所に関連する写真コンテンツがある場合、これらのリクエストのレスポンスには photos[]
フィールドが含まれます。
注: 返される写真の数はリクエストによって異なります。
- Find Place、Nearby Search、Text Search のリクエストでは、配列内の
photo
要素が最大 1 つ返されます。 - Place Details リクエストでは、最大 10 個の
photo
要素が返されます。
各 photo
要素には次のフィールドが含まれます。
photo_reference
- 写真リクエストを実行する際に写真の識別に使用される文字列。height
- 画像の最大高。width
- 画像の最大幅。html_attributions[]
- 必要なアトリビューションが含まれます。このフィールドは常に存在しますが、空の場合があります。
フォトサービスによって返される写真の提供元は、お店やサービスの所有者、ユーザーの投稿などさまざまです。こういった写真は、帰属情報なしで使用できる場合や、必要な帰属情報が画像内にあらかじめ記載されている場合がほとんどです。ただし、返された photo
要素の html_attributions
フィールドに値が含まれている場合は、画像を表示するすべての場所に追加の帰属表示をアプリに含める必要があります。
次の例は、Place Details リクエストを示しています。
curl "https://maps.googleapis.com/maps/api/place/details/json?placeid=ChIJcUElzOzMQQwRLuV30nMUEUM&key=YOUR_API_KEY"
レスポンスの photos[]
配列の例を次に示します。
```json
...
"photos" : [
{
"html_attributions" : [],
"height" : 853,
"width" : 1280,
"photo_reference" : "ATJ83zhSSAtkh5LTozXMhBghqubeOxnZWUV2m7Hv2tQaIzKQJgvZk9yCaEjBW0r0Zx1oJ9RF1G7oeM34sQQMOv8s2zA0sgGBiyBgvdyMxeVByRgHUXmv-rkJ2wyvNv17jyTSySm_-_6R2B0v4eKX257HOxvXlx_TSwp2NrICKrZM2d5d2P4q"
}]
...
```
Place Photo の例
リクエストの例を以下に示します。このリクエストは、参照された画像を返します。画像の幅は最大 400 ピクセルに調整されます。
https://maps.googleapis.com/maps/api/place/photo?maxwidth=400&photo_reference=ATJ83zhSSAtkh5LTozXMhBghqubeOxnZWUV2m7Hv2tQaIzKQJgvZk9yCaEjBW0r0Zx1oJ9RF1G7oeM34sQQMOv8s2zA0sgGBiyBgvdyMxeVByRgHUXmv-rkJ2wyvNv17jyTSySm_-_6R2B0v4eKX257HOxvXlx_TSwp2NrICKrZM2d5d2P4q &key=YOUR_API_KEY
Place Photo レスポンス
プレイスフォト リクエストが成功すると、レスポンスは画像になります。画像のタイプは、最初に送信された写真のタイプによって異なります。
リクエストが使用可能な割り当てを超えると、サーバーは HTTP 403 ステータスを返します。また、割り当てが超過したことを示す次の画像が表示されます。
サーバーがリクエストを理解できない場合、サーバーは HTTP 400 ステータスを返します。これは、リクエストが無効であることを示します。無効なリクエストの一般的な理由は次のとおりです。
- 提出された写真の参照が正しく指定されていません。
- リクエストに
maxwidth
パラメータまたはmaxheight
パラメータが含まれていない。 maxwidth
パラメータまたはmaxheight
パラメータの値がnull
に設定されています。photo_reference
の有効期限が切れています。photo_reference
が期限切れになった場合は、Place Details、Find Place、Nearby Search、Text Search にリクエストを送信して、更新されたphoto_reference
値を取得します。