El servicio de Place Photo, 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. El servicio de Place Photo te proporciona acceso a las millones de fotos almacenadas en la base de datos de Places. Cuando obtienes información sobre lugares mediante una solicitud de Place Details, se devolverán referencias de fotos para el contenido fotográfico correspondiente. Las solicitudes de Find Place, Nearby Search y Text Search también muestran una única referencia de foto por lugar, cuando corresponda. A través del servicio de Fotos, puedes tener acceso a las fotos de referencia y cambiar el tamaño de la imagen al tamaño óptimo para tu aplicación.
Solicitudes de fotos de lugares
Una solicitud de fotos de sitios es una HTTP URL como la siguiente:
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 para las URLs, todos los parámetros se separan usando el signo et (&
). A continuación, se proporciona una lista de los parámetros y sus posibles valores.
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.
Referencias de fotos
Todas las solicitudes del servicio de Place Photo deben incluir un photo_reference
, que se muestra en la respuesta a una solicitud de Find Place, Nearby Search, Text Search o Place Details. Las respuestas a estas solicitudes contendrán 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, Nearby Search o Text Search muestra, como máximo, un elemento
photo
en el array. - Una solicitud de Place Details muestra 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 foto.height
: Es la altura máxima de la imagen.width
: Es el ancho máximo de la imagen.html_attributions[]
: Contiene las atribuciones requeridas. Este campo estará siempre presente, pero puede estar vacío.
Las fotos que muestra el servicio Photos 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:
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 Photo
A continuación, se muestra una solicitud de ejemplo. Esta solicitud muestra la imagen a la que hace referencia y cambia el tamaño de esta para que tenga, como máximo, unos 400 píxeles de ancho.
https://maps.googleapis.com/maps/api/place/photo?maxwidth=400&photo_reference=ATJ83zhSSAtkh5LTozXMhBghqubeOxnZWUV2m7Hv2tQaIzKQJgvZk9yCaEjBW0r0Zx1oJ9RF1G7oeM34sQQMOv8s2zA0sgGBiyBgvdyMxeVByRgHUXmv-rkJ2wyvNv17jyTSySm_-_6R2B0v4eKX257HOxvXlx_TSwp2NrICKrZM2d5d2P4q &key=YOUR_API_KEY
Respuesta de Place Photo
La respuesta de una solicitud de fotos de sitios exitosa es una imagen. El tipo de imagen dependerá del tipo de foto enviada originalmente.
Si tu solicitud supera tu cuota disponible, el servidor muestra un estado HTTP 403 y muestra la imagen pública que figura a continuación para indicar que se superó la cuota:
Si el servidor no puede comprender tu solicitud, muestra un estado HTTP 400, que indica una solicitud no válida. Entre los motivos más comunes por los que se genera una solicitud no válida, se incluyen los siguientes:
- La referencia de foto enviada no se especificó correctamente.
- La solicitud no incluyó los parámetros
maxwidth
nimaxheight
. - El valor del parámetro
maxwidth
omaxheight
se estableció ennull
. - Venció tu
photo_reference
. Siphoto_reference
vence, realiza una solicitud a Place Details, Find Place, Nearby Search o Text Search para obtener el valor actualizado dephoto_reference
.