Detalhes do lugar (novo)

Selecione a plataforma: Android iOS JavaScript Web Service

Para solicitar mais detalhes sobre um estabelecimento ou ponto de interesse específico, use o ID do lugar e faça uma solicitação do Place Details (novo). O Place Details (New) retorna informações mais abrangentes sobre o lugar indicado, como endereço completo, número de telefone, classificação do usuário e avaliações.

Há muitas maneiras de conseguir um ID de lugar. Você pode usar:

Solicitações de Place Details (novo)

É possível solicitar detalhes de lugares chamando PlacesClient.fetchPlace() e transmitindo um objeto FetchPlaceRequest que contenha um ID de lugar e uma lista de campos, além de parâmetros opcionais:

// Define a place ID.
final String placeId = "INSERT_PLACE_ID_HERE";

// Specify the list of fields to return.
final List<Place.Field> placeFields = Arrays.asList("INSERT_PLACE_FIELDS_HERE");

// Construct a request object, passing the place ID and field list.
final FetchPlaceRequest request = FetchPlaceRequest.newInstance(placeId, placeFields);

// Pass the request object and make the request
Task<FetchPlaceResponse> placeTask = placesClient.fetchPlace(request);

Respostas do Place Details (novo)

O recurso "Detalhes do lugar (novo)" retorna dados na forma de um objeto Place, que inclui apenas os campos que você solicitou usando a lista de campos. Os resultados dos dados do lugar não podem ficar vazios. Portanto, apenas os resultados do lugar com dados são retornados. Por exemplo, se um lugar solicitado não tiver fotos, o campo de fotos não vai estar presente no resultado.

Para acessar campos de dados, chame o método correspondente. Por exemplo, para acessar o nome do lugar, chame getName().

Parâmetros obrigatórios

Os parâmetros necessários para FetchPlaceRequest são:

  • ID do lugar

    Um identificador textual que identifica um lugar de forma exclusiva, retornado de uma Text Search (New), Nearby Search (New) ou Autocomplete (New). Para mais informações sobre IDs de lugar, consulte a visão geral de IDs de lugar.

  • Lista de campos

    Ao solicitar um lugar, você precisa especificar quais dados do lugar serão retornados. Para fazer isso, transmita uma lista de valores Place.Field especificando os dados a serem retornados. Não há uma lista padrão de campos retornados na resposta.

    As listas de campos são uma boa prática de design para garantir que você não solicite dados desnecessários, o que ajuda a evitar tempo de processamento e cobranças desnecessários.Essa lista é uma consideração importante porque afeta o custo de cada solicitação. Para mais informações, consulte Uso e faturamento.

    Especifique um ou mais dos seguintes campos:

    • Os campos a seguir acionam a SKU Place Details Essentials Only IDs:

      Place.Field.DISPLAY_NAME
      Place.Field.ID
      Place.Field.PHOTO_METADATAS
      Place.Field.RESOURCE_NAME
    • Os campos a seguir acionam a SKU Place Details Essentials:

      Place.Field.ADDRESS_COMPONENTS
      ADR_FORMAT_ADDRESS
      Place.Field.FORMATTED_ADDRESS
      Place.Field.LOCATION
      Place.Field.PLUS_CODE
      Place.Field.SHORT_FORMATTED_ADDRESS
      Place.Field.TYPES
      Place.Field.VIEWPORT
    • Os campos a seguir acionam a SKU Place Details Pro:

      Place.Field.ACCESSIBILITY_OPTIONS
      Place.Field.BUSINESS_STATUS
      Place.Field.GOOGLE_MAPS_URI
      Place.Field.ICON_BACKGROUND_COLOR
      Place.Field.ICON_MASK_URL
      Place.Field.PRIMARY_TYPE
      Place.Field.PRIMARY_TYPE_DISPLAY_NAME
      Place.Field.SUB_DESTINATIONS
      Place.Field.UTC_OFFSET
    • Os campos a seguir acionam a SKU Place Details Enterprise:

      Place.Field.CURRENT_OPENING_HOURS
      Place.Field.CURRENT_SECONDARY_OPENING_HOURS
      Place.Field.INTERNATIONAL_PHONE_NUMBER
      Place.Field.NATIONAL_PHONE_NUMBER
      Place.Field.OPENING_HOURS
      Place.Field.PRICE_LEVEL
      Place.Field.RATING
      Place.Field.SECONDARY_OPENING_HOURS
      Place.Field.USER_RATING_COUNT
      Place.Field.WEBSITE_URI
    • Os campos a seguir acionam a SKU Place Details Enterprise Plus:

      Place.Field.ALLOWS_DOGS
      Place.Field.CURBSIDE_PICKUP
      Place.Field.DELIVERY
      Place.Field.DINE_IN
      Place.Field.EDITORIAL_SUMMARY
      Place.Field.EV_CHARGE_OPTIONS
      Place.Field.FUEL_OPTIONS
      Place.Field.GOOD_FOR_CHILDREN
      Place.Field.GOOD_FOR_GROUPS
      Place.Field.GOOD_FOR_WATCHING_SPORTS
      Place.Field.LIVE_MUSIC
      Place.Field.MENU_FOR_CHILDREN
      Place.Field.OUTDOOR_SEATING
      Place.Field.PARKING_OPTIONS
      Place.Field.PAYMENT_OPTIONS
      Place.Field.RESERVABLE
      Place.Field.RESTROOM
      Place.Field.REVIEWS
      Place.Field.SERVES_BEER
      Place.Field.SERVES_BREAKFAST
      Place.Field.SERVES_BRUNCH
      Place.Field.SERVES_COCKTAILS
      Place.Field.SERVES_COFFEE
      Place.Field.SERVES_DESSERT
      Place.Field.SERVES_DINNER
      Place.Field.SERVES_LUNCH
      Place.Field.SERVES_VEGETARIAN_FOOD
      Place.Field.SERVES_WINE
      Place.Field.TAKEOUT

Parâmetros opcionais

Os parâmetros opcionais de FetchPlaceRequest são:

  • Código de região

    O código da região usado para formatar a resposta, especificado como um valor de código CLDR de dois caracteres. Não há valor padrão.

    Se o nome do país do campo Place.Field.FORMATTED_ADDRESS na resposta corresponder ao regionCode, o código do país será omitido de Place.Field.FORMATTED_ADDRESS.

    A maioria dos códigos CLDR é idêntica aos códigos ISO 3166-1, com algumas exceções notáveis. Por exemplo, o ccTLD do Reino Unido é "uk" (.co.uk), e o código ISO 3166-1 é "gb" (tecnicamente para a entidade "Reino Unido da Grã-Bretanha e Irlanda do Norte"). O parâmetro pode afetar os resultados com base na legislação aplicável.

    Para definir o parâmetro de código de região, chame o método setRegionCode() ao criar o objeto FetchPlaceRequest.

  • Token da sessão

    Os tokens de sessão são strings geradas pelo usuário que rastreiam as chamadas do Autocomplete (Novo) como "sessões". O preenchimento automático (novo) usa tokens de sessão para agrupar as fases de consulta e seleção de local de uma pesquisa de preenchimento automático do usuário em uma sessão discreta para fins de faturamento. Os tokens de sessão são transmitidos para as chamadas do Place Details (novo) que seguem as chamadas do Autocomplete (novo). Para mais informações, consulte Tokens de sessão.

    Para definir o parâmetro do token de sessão, chame o método setSessionToken() ao criar o objeto FetchPlaceRequest.

Exemplo de Place Details

O exemplo a seguir solicita os campos ID, DISPLAY_NAME e FORMATTED_ADDRESS para o Empire State Building em Nova York.

// Define a place ID.
final String placeId = "ChIJaXQRs6lZwokRY6EFpJnhNNE";

// Specify the list of fields to return.
final List<Place.Field> placeFields = Arrays.asList(Place.Field.ID, Place.Field.DISPLAY_NAME, Place.Field.FORMATTED_ADDRESS);

// Construct a request object, passing the place ID and field list.
final FetchPlaceRequest request = FetchPlaceRequest.newInstance(placeId, placeFields);

// Pass the request object and make the request
Task<FetchPlaceResponse> placeTask = placesClient.fetchPlace(request);