O Place Photos (legado), parte da API Places, é uma API somente leitura que permite adicionar conteúdo fotográfico de alta qualidade ao aplicativo. O Place Photos (legado) oferece acesso a milhões de fotos armazenadas no banco de dados do Places. Quando você consegue informações de local usando uma solicitação do Place Details, são retornadas referências de fotos para o conteúdo fotográfico relevante. As solicitações do Find Place (legado), Nearby Search (legado) e Text Search (legado) também retornam uma única referência de foto por local, quando relevante. Usando o Place Photos (legado), é possível acessar as fotos referenciadas e redimensionar a imagem de acordo com o tamanho ideal para o aplicativo.
Solicitações do Place Photos (legado)
Uma solicitação do Place Photos (legado) é um URL HTTP do seguinte formato:
https://maps.googleapis.com/maps/api/place/photo?parameters
Certos parâmetros são obrigatórios para iniciar uma solicitação de pesquisa. Como é padrão em URLs, todos os parâmetros são separados usando o caractere E comercial (&). A lista de parâmetros e os valores possíveis estão enumerados abaixo.
Parâmetros obrigatórios
-
photo_reference
Um identificador de string que identifica uma foto de maneira exclusiva. As referências de fotos são retornadas de uma solicitação do Place Search ou do Place Details.
-
maxheight ou maxwidth
maxheightespecifica a altura máxima preferida da imagem em pixels. Se a imagem for menor que os valores especificados, a imagem original será retornada. Se a imagem for maior em qualquer dimensão, ela será dimensionada para corresponder à menor das duas dimensões, restrita à proporção original.maxwidthespecifica a largura máxima preferida da imagem em pixels. Se a imagem for menor que os valores especificados, a imagem original será retornada. Se a imagem for maior em qualquer dimensão, ela será dimensionada para corresponder à menor das duas dimensões, restrita à proporção original.As propriedades
maxheightemaxwidthaceitam um número inteiro entre1e1600.É necessário especificar
maxheight,maxwidthou ambos.
Referências de fotos
Todas as solicitações do Place Photos (legado) precisam incluir uma photo_reference, retornada na resposta a uma solicitação do Find Place (legado), Nearby Search (legado), Text Search (legado) ou Place Details (legado). A resposta a essas solicitações vai conter um campo photos[] se o lugar tiver conteúdo fotográfico relacionado.
Observação:o número de fotos retornadas varia de acordo com a solicitação.
- Uma solicitação do Find Place (legado), Nearby Search (legado) ou Text Search (legado) retorna, no máximo, um elemento
photona matriz. - Uma solicitação do Place Details (legado) retorna até dez elementos
photo.
Cada elemento photo contém os seguintes campos:
photo_reference: uma string usada para identificar a foto ao realizar uma solicitação do Place Photos (legado).height: a altura máxima da imagem.width: a largura máxima da imagem.html_attributions[]: contém todas as atribuições necessárias. Esse campo sempre estará presente, mas poderá estar vazio.
Fotos retornadas pelo Place Photos (legado) têm origem em vários locais, inclusive de proprietários de empresas e imagens enviadas pelos usuários. Na maioria dos casos, essas fotos podem ser usadas sem atribuição ou a atribuição necessária vai ser incluída na imagem. No entanto, se o elemento photo retornado incluir um valor no campo html_attributions, vai ser necessário incluir a atribuição adicional no aplicativo sempre que você mostrar a imagem.
O exemplo a seguir mostra uma solicitação do Place Details (legado):
curl "https://maps.googleapis.com/maps/api/place/details/json?placeid=ChIJcUElzOzMQQwRLuV30nMUEUM&key=YOUR_API_KEY"
Um exemplo da matriz photos[] na resposta é mostrado abaixo.
...
"photos" : [
{
"html_attributions" : [],
"height" : 853,
"width" : 1280,
"photo_reference" : "ATJ83zhSSAtkh5LTozXMhBghqubeOxnZWUV2m7Hv2tQaIzKQJgvZk9yCaEjBW0r0Zx1oJ9RF1G7oeM34sQQMOv8s2zA0sgGBiyBgvdyMxeVByRgHUXmv-rkJ2wyvNv17jyTSySm_-_6R2B0v4eKX257HOxvXlx_TSwp2NrICKrZM2d5d2P4q"
}]
...
Exemplo do Place Photos (legado)
Veja abaixo um exemplo de solicitação. Essa solicitação retorna a imagem referenciada, redimensionando-a para que tenha no máximo 400 pixels de largura.
https://maps.googleapis.com/maps/api/place/photo?maxwidth=400&photo_reference=ATJ83zhSSAtkh5LTozXMhBghqubeOxnZWUV2m7Hv2tQaIzKQJgvZk9yCaEjBW0r0Zx1oJ9RF1G7oeM34sQQMOv8s2zA0sgGBiyBgvdyMxeVByRgHUXmv-rkJ2wyvNv17jyTSySm_-_6R2B0v4eKX257HOxvXlx_TSwp2NrICKrZM2d5d2P4q &key=YOUR_API_KEY
Resposta do Place Photos (legado)
A resposta de uma solicitação bem-sucedida do Place Photos (legado) é uma imagem. O tipo de imagem depende do tipo de foto enviada originalmente.
Se a solicitação exceder a cota disponível, o servidor vai retornar um status HTTP 403 e mostrar a imagem abaixo para indicar que a cota foi excedida:

Se o servidor não conseguir entender sua solicitação, ele vai retornar o status HTTP 400, que indica uma solicitação inválida. Os motivos mais comuns para uma solicitação inválida incluem:
- A referência de foto enviada não foi especificada corretamente.
- A solicitação não incluiu os parâmetros
maxwidthoumaxheight. - O valor do parâmetro
maxwidthoumaxheightfoi definido comonull. - A
photo_referenceexpirou. Sephoto_referenceexpirar, faça uma solicitação do Place Details (legado), Find Place (legado), Nearby Search (legado), ou Text Search (legado) para receber o valorphoto_referenceatualizado.