Place Photos (legado)

Desenvolvedores do Espaço Econômico Europeu (EEE)

A Place Photos (legada), parte da API Places, é uma API somente leitura que permite adicionar conteúdo fotográfico de alta qualidade ao seu aplicativo. Com o Place Photos (legado), você tem 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 lugar, quando relevante. Usando o Place Photos (Legacy), é 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 com o 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 forma exclusiva. As referências de fotos são retornadas de uma solicitação do Place Search ou do Place Details.

maxheight ou maxwidth

maxheight especifica a altura máxima preferida, em pixels, da imagem. Se a imagem for menor que os valores especificados, a imagem original será retornada. Se a imagem for maior em qualquer uma das dimensões, ela será dimensionada para corresponder à menor das duas dimensões, restrita à proporção original.

maxwidth especifica a largura máxima preferencial, em pixels, da imagem. Se a imagem for menor que os valores especificados, a imagem original será retornada. Se a imagem for maior em qualquer uma das dimensões, ela será dimensionada para corresponder à menor das duas dimensões, restrita à proporção original.

As propriedades maxheight e maxwidth aceitam um número inteiro entre 1 e 1600.

É necessário especificar maxheight, maxwidth ou ambos.

Referências de fotos

Todas as solicitações para o Place Photos (legado) precisam incluir um photo_reference, retornado 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.

  • Uma solicitação do Find Place (legado), Nearby Search (legado) ou Text Search (legado) retorna, no máximo, um elemento photo na 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 quando você faz 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 as atribuições necessárias. Esse campo sempre estará presente, mas pode estar vazio.

As 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 (Legacy):

curl "https://maps.googleapis.com/maps/api/place/details/json?placeid=ChIJcUElzOzMQQwRLuV30nMUEUM&key=YOUR_API_KEY"

Confira abaixo um exemplo da matriz photos[] na resposta.

    ...
    "photos" : [
       {
          "html_attributions" : [],
          "height" : 853,
          "width" : 1280,
          "photo_reference" : "ATJ83zhSSAtkh5LTozXMhBghqubeOxnZWUV2m7Hv2tQaIzKQJgvZk9yCaEjBW0r0Zx1oJ9RF1G7oeM34sQQMOv8s2zA0sgGBiyBgvdyMxeVByRgHUXmv-rkJ2wyvNv17jyTSySm_-_6R2B0v4eKX257HOxvXlx_TSwp2NrICKrZM2d5d2P4q"
       }]
    ...

Exemplo de Place Photos (legada)

Um exemplo de solicitação é mostrado abaixo. 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 da imagem depende do tipo da foto enviada originalmente.

Se a solicitação exceder a cota disponível, o servidor vai retornar um status HTTP 403 e exibir a imagem abaixo para indicar que a cota foi excedida:

Imagem de cota excedida

Se o servidor não 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 maxwidth ou maxheight.
  • O valor do parâmetro maxwidth ou maxheight foi definido como null.
  • O photo_reference expirou. Se photo_reference expirar, faça uma solicitação para Place Details (Legacy), Find Place (Legacy), Nearby Search (Legacy) ou Text Search (Legacy) para receber o valor atualizado de photo_reference.