Place Details (Baru)

Pilih platform: Android iOS JavaScript Layanan Web

Anda dapat meminta detail selengkapnya tentang tempat atau lokasi menarik tertentu menggunakan ID tempat dan membuat permintaan Place Details (Baru). Place Details (Baru) menampilkan informasi yang lebih komprehensif tentang tempat yang ditunjukkan, seperti alamat lengkap, nomor telepon, rating pengguna, dan ulasan.

Ada banyak cara untuk mendapatkan ID tempat. Anda dapat menggunakan:

Permintaan Place Details (New)

Anda dapat meminta detail tempat dengan memanggil PlacesClient.fetchPlace() dan meneruskan objek FetchPlaceRequest yang berisi ID tempat dan daftar kolom, serta parameter opsional:

// 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);

Respons Place Details (Baru)

Place Details (New) menampilkan data dalam bentuk objek Place, yang hanya menyertakan kolom yang Anda minta menggunakan daftar kolom. Hasil data tempat tidak boleh kosong, sehingga hanya hasil tempat dengan data yang ditampilkan (misalnya, jika tempat yang diminta tidak memiliki foto, kolom foto tidak akan ada dalam hasil).

Untuk mengakses kolom data, panggil metode yang sesuai. Misalnya, untuk mengakses nama tempat, panggil getName().

Parameter wajib

Parameter yang diperlukan untuk FetchPlaceRequest adalah:

  • ID tempat

    ID tekstual yang secara unik mengidentifikasi tempat, yang ditampilkan dari Text Search (New), Nearby Search (New), atau Autocomplete (New). Untuk informasi selengkapnya tentang ID tempat, lihat ringkasan ID tempat.

  • Daftar kolom

    Saat meminta tempat, Anda harus menentukan data tempat yang akan ditampilkan. Untuk melakukannya, teruskan daftar nilai Place.Field yang menentukan data yang akan ditampilkan. Tidak ada daftar default kolom yang ditampilkan dalam respons.

    Daftar kolom adalah praktik desain yang baik untuk memastikan Anda tidak meminta data yang tidak diperlukan. Cara ini akan membantu Anda menghindari waktu pemrosesan dan biaya penagihan yang tidak perlu. Daftar ini adalah pertimbangan penting karena memengaruhi biaya untuk setiap permintaan. Untuk informasi selengkapnya, lihat Penggunaan dan Penagihan.

    Tentukan satu atau beberapa kolom berikut:

    • Kolom berikut memicu SKU Place Details Essentials IDs Only:

      Place.Field.DISPLAY_NAME
      Place.Field.ID
      Place.Field.PHOTO_METADATAS
      Place.Field.RESOURCE_NAME
    • Kolom berikut memicu 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
    • Kolom berikut memicu 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
    • Kolom berikut memicu 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
    • Kolom berikut memicu 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

Parameter opsional

Parameter opsional untuk FetchPlaceRequest adalah:

  • Kode wilayah

    Kode wilayah yang digunakan untuk memformat respons, yang ditentukan sebagai nilai kode CLDR dua karakter. Tidak ada nilai default.

    Jika nama negara kolom Place.Field.FORMATTED_ADDRESS dalam respons cocok dengan regionCode, kode negara akan dihilangkan dari Place.Field.FORMATTED_ADDRESS.

    Sebagian besar kode CLDR identik dengan kode ISO 3166-1, dengan beberapa pengecualian. Misalnya, ccTLD Inggris Raya adalah "uk" (.co.uk) sedangkan kode ISO 3166-1-nya adalah "gb" (secara teknis untuk entitas "The United Kingdom of Great Britain and Northern Ireland"). Parameter ini dapat memengaruhi hasil berdasarkan hukum yang berlaku.

    Untuk menetapkan parameter kode wilayah, panggil metode setRegionCode() saat mem-build objek FetchPlaceRequest.

  • Token sesi

    Token sesi adalah string buatan pengguna yang melacak panggilan Autocomplete (Baru) sebagai "sesi". Autocomplete (Baru) menggunakan token sesi untuk mengelompokkan fase kueri dan pemilihan tempat dari penelusuran pelengkapan otomatis pengguna ke dalam sesi terpisah untuk tujuan penagihan. Token sesi diteruskan ke panggilan Place Details (Baru) yang mengikuti panggilan Autocomplete (Baru). Untuk mengetahui informasi selengkapnya, lihat Token sesi.

    Untuk menetapkan parameter token sesi, panggil metode setSessionToken() saat mem-build objek FetchPlaceRequest.

Contoh Place Details

Contoh berikut meminta kolom ID, DISPLAY_NAME, dan FORMATTED_ADDRESS untuk Empire State Building di New York City.

// 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);