Las siguientes funciones de la API de Geocoding v3 se reemplazan por el extremo SearchDestinations de la API de Geocoding v4:
- Entradas
- Puntos de navegación
- Contornos de edificios
- Terrenos
Si usabas la API de Geocoding v3 para las funciones anteriores, usa este documento para obtener ayuda y usar el extremo de SearchDestinations en su lugar para obtener estas funciones. En este documento, se explica en qué parte de la respuesta de la API de SearchDestinations se encuentran estas funciones y las diferencias en la forma en que se representan en las respuestas de la API entre la API de Geocoding v3 y el extremo de SearchDestinations de la API de Geocoding v4.
Entradas
Para obtener las entradas asociadas a un destination
, usa el campo destination.entrances
.
Ten en cuenta que el formato de un entrance
es ligeramente diferente del formato de entrada en la API de Geocoding v3.
Cada entrada en destination.entrances
tiene los siguientes campos:
displayName
: Es un nuevo campo opcional que tendrá un nombre legible para la entrada, por ejemplo, "Puerta B".location
: Es una ubicación de tipoLatLng
, que es diferente del formato que se usa en la API de Geocoding v3.tags
: Es igual que el campotags
de las entradas de la API de Geocoding v3.place
: Es análogo al campobuildingPlaceId
de las entradas de la API de Geocoding v3. Sin embargo, el ID de lugar en este campo podría ser para un lugar de cualquier tipo, no necesariamente solo un edificio.
Puntos de navegación
Para obtener los puntos de navegación asociados con un destination
, usa el campo destination.navigationPoints
.
Ten en cuenta que el formato de un navigationPoint
es ligeramente diferente del formato de punto de navegación en la API de Geocoding v3.
Cada punto de navegación en destination.navigationPoints
tiene los siguientes campos:
displayName
: Es un nuevo campo opcional que tendrá un nombre legible para el punto de navegación, por ejemplo, “5th Ave”.location
: Es una ubicación de tipoLatLng
, que es diferente del formato que se usa en la API de Geocoding v3.travelModes
: Es similar al camporestrictedTravelModes
de los puntos de navegación de la API de Geocoding v3. Los valores de enumeración posibles son los mismos. La única diferencia es que este campo ahora representa los modos de viaje aceptables para el punto de navegación, en lugar de los modos de viaje restringidos.usage
: Es un campo nuevo que contiene los casos de uso admitidos por el punto de navegación. Ten en cuenta que la mayoría de los puntos de navegación tendrán un uso deUNKNOWN
, pero eso no significa necesariamente que el uso del punto de navegación esté restringido de alguna manera.
Contornos de edificios
Para obtener los esquemas de los edificios asociados a un objeto destination
, debes usar el campo displayPolygon
de los objetos placeView
en el objeto destination
que representan edificios. Para cada placeView
, puedes verificar si es un edificio con el campo placeView.structureType
. Si el tipo de estructura es BUILDING
, puedes obtener el esquema del campo placeView.displayPolygon
. El objeto placeView
también tendrá campos adicionales para el edificio que no estaban en la API de Geocoding v3.
Un objeto destination
puede tener un objeto placeView
que represente un edificio en los siguientes campos:
destination.primary
: Es el lugar principal del destino.destination.containingPlaces
: Es un campo repetido que puede contener lugares más grandes que "contienen" el lugar principal. Por ejemplo, si el lugar principal es unsubpremise
,containingPlaces
suele contener elplaceView
que representa el edificio.destination.subDestinations
: Es un campo repetido que puede contener subdestinos del lugar principal. Por ejemplo, las unidades de departamentos individuales de un edificio. Por lo general, este campo no tendrá unplaceView
que represente un edificio.
Ten en cuenta que el formato de placeView.displayPolygon
coincide con el formato de contorno de edificios en la API de Geocoding v3, que es el formato GeoJSON, con el formato RFC 7946.
Terrenos
Al igual que con los esquemas de edificios, para obtener los terrenos asociados a un destination
, debes usar el campo displayPolygon
de los objetos placeView
en el destination
que representan terrenos. Para cada placeView
, puedes verificar si es un motivo con el campo placeView.structureType
. Si el tipo de estructura es GROUNDS
, puedes obtener el esquema del campo placeView.displayPolygon
. El objeto placeView
también tendrá campos adicionales para los motivos que no se encontraban en la API de Geocoding v3.
Un objeto destination
puede tener un objeto placeView
que represente un motivo en los siguientes campos:
destination.primary
destination.containingPlaces
destination.subDestinations
Ten en cuenta que el formato de placeView.displayPolygon
coincide con el formato de esquema de terrenos en la API de Geocoding v3, que es el formato GeoJSON, con el formato RFC 7946.
Usa una máscara de campo para solicitar estas funciones
El extremo SearchDestinations requiere una máscara de campo, como se explica en Cómo elegir los campos que se devolverán. La máscara de campo se puede establecer en *
para devolver todos los campos, o bien puedes establecerla en los campos específicos que deseas recibir. Por ejemplo, la siguiente solicitud a la API establece la máscara de campo para recibir todos los campos necesarios para obtener las entradas, los puntos de navegación, los esquemas de los edificios y los terrenos de un destino:
curl -X POST -d '{"place": "places/ChIJG3kh4hq6j4AR_XuFQnV0_t8"}' \ -H "X-Goog-Api-Key: API_KEY" \ -H "Content-Type: application/json" \ -H "X-Goog-FieldMask: destinations.entrances,destinations.navigationPoints,destinations.primary,destinations.containingPlaces,destinations.subDestinations" \ https://geocode.googleapis.com/v4alpha/geocode/destinations