Place Photos (Legacy), que forma parte de la API de Places, es una API de solo lectura que te permite agregar contenido fotográfico de alta calidad a tu aplicación. Place Photos (heredado) te brinda acceso a los millones de fotos almacenadas en la base de datos de Places. Cuando obtienes información sobre lugares con una solicitud de Place Details, se devuelven referencias de fotos para el contenido fotográfico pertinente. Las solicitudes de Find Place (Legacy), Nearby Search (Legacy) y Text Search (Legacy) también devuelven una sola referencia de foto por lugar, cuando corresponde. Con Place Photos (Legacy), puedes acceder a las fotos de referencia y cambiar el tamaño de la imagen al más adecuado para tu aplicación.
Solicitudes de Place Photos (heredadas)
Una solicitud de Place Photos (Legacy) es una URL HTTP con el siguiente formato:
https://maps.googleapis.com/maps/api/place/photo?parameters
Ciertos parámetros son obligatorios para iniciar una solicitud de búsqueda. Tal como es práctica estándar en las URLs, todos los parámetros se separan usando el signo et (&). A continuación, se enumeran los parámetros y sus posibles valores.
Parámetros obligatorios
-
photo_reference
Es un identificador de cadena que identifica de forma única una foto. Las referencias de fotos se muestran como resultado de una solicitud de Place Search o Place Details.
-
maxheight o maxwidth
maxheightespecifica la altura máxima preferida de la imagen en píxeles. Si la imagen es más pequeña que los valores especificados, se devolverá la imagen original. Si la imagen es más grande en cualquiera de las dimensiones, se ajustará su escala para que coincida con la más pequeña de las dos dimensiones, restringida a su relación de aspecto original.maxwidthespecifica el ancho máximo preferido de la imagen en píxeles. Si la imagen es más pequeña que los valores especificados, se devolverá la imagen original. Si la imagen es más grande en cualquiera de las dimensiones, se ajustará su escala para que coincida con la más pequeña de las dos dimensiones, restringida a su relación de aspecto original.Las propiedades
maxheightymaxwidthaceptan un número entero entre1y1600.Debes especificar
maxheightomaxwidth, o ambos.
Referencias fotográficas
Todas las solicitudes a Place Photos (heredado) deben incluir un photo_reference, que se devuelve en la respuesta a una solicitud de Find Place (heredado), Nearby Search (heredado), Text Search (heredado) o Place Details (heredado). La respuesta a estas solicitudes contendrá un campo photos[] si el lugar tiene contenido fotográfico relacionado.
Nota: La cantidad de fotos que se muestran varía según la solicitud.
- Una solicitud de Find Place (heredada), Nearby Search (heredada) o Text Search (heredada) devuelve, como máximo, un elemento
photoen el array. - Una solicitud a Place Details (Legacy) devuelve hasta diez elementos
photo.
Cada elemento photo contiene los siguientes campos:
photo_reference: Es una cadena que se usa para identificar la foto cuando realizas una solicitud de Place Photos (heredado).height: Es la altura máxima de la imagen.width: Es el ancho máximo de la imagen.html_attributions[]: Contiene las atribuciones obligatorias. Este campo siempre estará presente, pero puede estar vacío.
Las fotos que muestra Place Photos (Legacy) provienen de una variedad de fuentes, incluidas las fotos proporcionadas por los propietarios de las empresas y los aportes de los usuarios. En la mayoría de los casos, estas fotos se pueden utilizar sin atribución; de lo contrario, incluirán la atribución requerida como parte de la imagen. Sin embargo, si el elemento photo que se muestra incluye un valor en el campo html_attributions, deberás incluir la atribución adicional en tu aplicación en cualquier lugar donde muestres la imagen.
En el siguiente ejemplo, se muestra una solicitud de Place Details (Legacy):
curl "https://maps.googleapis.com/maps/api/place/details/json?placeid=ChIJcUElzOzMQQwRLuV30nMUEUM&key=YOUR_API_KEY"
A continuación, se muestra un ejemplo del array photos[] en la respuesta.
...
"photos" : [
{
"html_attributions" : [],
"height" : 853,
"width" : 1280,
"photo_reference" : "ATJ83zhSSAtkh5LTozXMhBghqubeOxnZWUV2m7Hv2tQaIzKQJgvZk9yCaEjBW0r0Zx1oJ9RF1G7oeM34sQQMOv8s2zA0sgGBiyBgvdyMxeVByRgHUXmv-rkJ2wyvNv17jyTSySm_-_6R2B0v4eKX257HOxvXlx_TSwp2NrICKrZM2d5d2P4q"
}]
...
Ejemplo de Place Photos (heredado)
A continuación, se muestra una solicitud de ejemplo. Esta solicitud devuelve la imagen a la que se hace referencia y cambia su tamaño para que tenga un ancho máximo de 400 píxeles.
https://maps.googleapis.com/maps/api/place/photo?maxwidth=400&photo_reference=ATJ83zhSSAtkh5LTozXMhBghqubeOxnZWUV2m7Hv2tQaIzKQJgvZk9yCaEjBW0r0Zx1oJ9RF1G7oeM34sQQMOv8s2zA0sgGBiyBgvdyMxeVByRgHUXmv-rkJ2wyvNv17jyTSySm_-_6R2B0v4eKX257HOxvXlx_TSwp2NrICKrZM2d5d2P4q &key=YOUR_API_KEY
Respuesta de Place Photos (heredado)
La respuesta a una solicitud exitosa de Place Photos (legado) es una imagen. El tipo de imagen depende del tipo de foto que se envió originalmente.
Si tu solicitud supera la cuota disponible, el servidor devolverá un estado HTTP 403 y mostrará la siguiente imagen para indicar que se superó la cuota:

Si el servidor no puede comprender tu solicitud, muestra el estado HTTP 400, que indica que la solicitud no es válida. Estos son los motivos más comunes por los que se produce una solicitud no válida:
- La referencia de la foto enviada no se especificó correctamente.
- La solicitud no incluyó los parámetros
maxwidthnimaxheight. - El valor del parámetro
maxwidthomaxheightse estableció ennull. - El
photo_referencevenció. Siphoto_referencevence, realiza una solicitud a Place Details (Legacy), Find Place (Legacy), Nearby Search (Legacy) o Text Search (Legacy) para obtener el valor actualizado dephoto_reference.