Pengantar
Layanan Place Photos (Baru) adalah API hanya baca yang memungkinkan Anda menambahkan konten fotografi berkualitas tinggi ke aplikasi Anda. Foto Tempat (Baru) memberi Anda akses ke jutaan foto yang tersimpan dalam database Places.
Saat Anda mendapatkan informasi tempat menggunakan permintaan Place Details (Baru), Nearby Search (Baru), atau Text Search (Baru), Anda juga dapat meminta sumber foto untuk konten fotografi yang relevan. Dengan menggunakan Place Photos (Baru), Anda kemudian dapat mengakses foto yang direferensikan dan mengubah ukuran gambar ke ukuran yang optimal untuk aplikasi Anda.
APIs Explorer memungkinkan Anda membuat permintaan langsung sehingga Anda dapat memahami API dan opsi API:
Permintaan Place Photos (Baru)
Permintaan Foto Tempat (Baru) adalah permintaan HTTP GET ke URL dalam bentuk:https://places.googleapis.com/v1/NAME/media?key=API_KEY&PARAMETERS
Dengan parameter berikut diperlukan:
- NAME berisi nama resource foto.
- API_KEY berisi kunci API.
- PARAMETERS berisi parameter
maxHeightPx
, parametermaxWidthPx
, atau keduanya.
Daftar lengkap parameter wajib dan opsional dijelaskan di bawah.
Parameter wajib
Nama foto
ID string yang mengidentifikasi foto secara unik. Nama foto ditampilkan dari permintaan Place Details (Baru),
Nearby Search (Baru), atau Text Search (Baru)
dalam properti name
setiap elemen array
photos[]
.
Untuk contoh, lihat Mendapatkan nama foto.
maxHeightPx dan maxWidthPx
Menentukan tinggi dan lebar maksimum yang diinginkan, dalam piksel, dari gambar. Jika gambar lebih kecil daripada nilai yang ditentukan, gambar asli akan ditampilkan. Jika gambar lebih besar dalam salah satu dimensi, gambar akan diskalakan agar sesuai dengan dimensi yang lebih kecil, dengan rasio aspek aslinya. Properti maxheight dan maxwidth menerima bilangan bulat antara 1 dan 4800.
Anda harus menentukan salah satu dari maxHeightPx
, atau maxWidthPx
, atau keduanya.
Parameter opsional
skipHttpRedirect
Jika false
(default), lakukan pengalihan HTTP ke gambar untuk menampilkan gambar.
Jika true
, lewati pengalihan dan tampilkan respons JSON yang berisi detail gambar.
Contoh:
{ "name": "places/ChIJj61dQgK6j4AR4GeTYWZsKWw/photos/Aaw_FcKly0DEv3EWmDJyHiEqXIP5mowOc99lN1GzBun6KHH52AZ5fFA/media", "photoUri": "https://lh3.googleusercontent.com/a-/AD_cFT-b=s100-p-k-no-mo" }
Opsi ini diabaikan untuk permintaan non-HTTP.
Mendapatkan nama foto
Semua permintaan ke Place Photos (Baru) harus menyertakan nama resource foto, yang ditampilkan dalam respons terhadap permintaan Nearby Search (Baru), Text Search (Baru), atau Place Details (Baru). Respons
terhadap permintaan ini berisi array photos[]
jika tempat
memiliki konten fotografi terkait.
Setiap elemen photo[]
berisi kolom berikut:
name
— String yang berisi nama resource foto saat Anda melakukan permintaan Foto. String ini dalam bentuk:places/PLACE_ID/photos/PHOTO_RESOURCE
heightPx
— Tinggi maksimum gambar, dalam piksel.widthPx
— Lebar maksimum gambar, dalam piksel.authorAttributions[]
— Atribusi yang diperlukan. Kolom ini selalu ada, tetapi mungkin kosong.
Foto yang ditampilkan oleh Place Photos (Baru) berasal dari berbagai lokasi, termasuk foto dari pemilik bisnis dan pengguna. Umumnya, foto ini dapat digunakan tanpa atribusi, atau atribusi yang diperlukan akan disertakan sebagai bagian dari gambar. Namun, jika elemen photo
yang ditampilkan menyertakan nilai di kolom authorAttributions
, Anda harus menyertakan atribusi tambahan dalam aplikasi di mana pun Anda menampilkan gambar.
Contoh berikut menunjukkan permintaan Place Details (Baru) yang
mencakup photos
dalam mask kolom sehingga respons
mencakup array photos[]
dalam respons:
curl -X GET \ -H 'Content-Type: application/json' -H "X-Goog-Api-Key: API_KEY" \ -H "X-Goog-FieldMask: id,displayName,photos" \ https://places.googleapis.com/v1/places/ChIJ2fzCmcW7j4AR2JzfXBBoh6E
photos[]
dalam respons ditampilkan di bawah.
... "photos" : [ { "name": "places/ChIJ2fzCmcW7j4AR2JzfXBBoh6E/photos/AUacShh3_Dd8yvV2JZMtNjjbbSbFhSv-0VmUN-uasQ2Oj00XB63irPTks0-A_1rMNfdTunoOVZfVOExRRBNrupUf8TY4Kw5iQNQgf2rwcaM8hXNQg7KDyvMR5B-HzoCE1mwy2ba9yxvmtiJrdV-xBgO8c5iJL65BCd0slyI1", "widthPx": 6000, "heightPx": 4000, "authorAttributions": [ { "displayName": "John Smith", "uri": "//maps.google.com/maps/contrib/101563", "photoUri": "//lh3.googleusercontent.com/a-/AD_cFT-b=s100-p-k-no-mo" } ] }, ...
Meminta foto tempat
Contoh permintaan di bawah menampilkan gambar menggunakan name
resource-nya, mengubah ukurannya sehingga
tinggi dan lebarnya paling banyak 400 piksel:
https://places.googleapis.com/v1/places/ChIJ2fzCmcW7j4AR2JzfXBBoh6E/photos/ATKogpeivkIjQ1FT7QmbeT33nBSwqLhdPvIWHfrG1WfmgrFjeZYpS_Ls7c7rj8jejN9QGzlx4GoAH0atSvUzATDrgrZic_tTEJdeITdWL-oG3TWi5HqZoLozrjTaxoAIxmROHfV5KXVcLeTdCC6kmZExSy0CLVIG3lAPIgmvUiewNf-ZHYE4-jXYwPQpWHJgqVosvZJ6KWEgowEA-qRAzNTu9VH6BPFqHakGQ7EqBAeYOiU8Dh-xIQC8FcBJiTi0xB4tr-MYXUaF0p_AqzAhJcDE6FAgLqG1s7EsME0o36w2nDRHA-IuoISBC3SIahINE3Xwq2FzEZE6TpNTFVfgTpdPhV8CGLeqrauHn2I6ePm-2hA8-87aO7aClXKJJVzlQ1dc_JuHz6Ks07d2gglw-ZQ3ibCTF5lMtCF9O-9JHyRQXsfuXw/media?maxHeightPx=400&maxWidthPx=400&key=API_KEY
Respons dari permintaan Place Photos (Baru) yang berhasil adalah gambar.
Kode error
Permintaan Place Photos (Baru) dapat menampilkan kode error berikut.
Kuota terlampaui (403)
Jika permintaan Anda melebihi kuota yang tersedia, server akan menampilkan status HTTP 403 dan menampilkan gambar berikut untuk menunjukkan bahwa kuota telah terlampaui:

Permintaan tidak valid (404)
Jika server tidak dapat memahami permintaan Anda, server akan menampilkan status HTTP 400, yang menunjukkan permintaan tidak valid. Alasan paling umum permintaan tidak valid meliputi:
- Nama foto yang dikirimkan tidak ditentukan dengan benar.
- Permintaan tidak menyertakan
parameter
maxHeightPx
ataumaxWidthPx
. - Nilai parameter
maxHeightPx
ataumaxWidthtPx
ditetapkan kenull
. - Masa berlaku
name
telah berakhir. Jikaname
habis masa berlakunya, buat permintaan ke Place Details (Baru), Nearby Search (Baru), atau Text Search (Baru) untuk mendapatkanname
baru.
Terlalu banyak permintaan (429)
Google merekomendasikan pemuatan foto sesuai permintaan. Jika Anda mencoba menampilkan semua gambar untuk suatu tempat sekaligus, server dapat menampilkan status HTTP 429 yang menunjukkan terlalu banyak foto yang dimuat secara bersamaan. Jika Anda menerima pesan error ini, hubungi Dukungan dan minta penambahan kuota.
Cobalah!
API Explorer memungkinkan Anda membuat contoh permintaan sehingga Anda dapat memahami API dan opsi API.
Untuk membuat permintaan:
- Pilih ikon API di sisi kanan halaman.
- Tetapkan parameter
name
ke:places/PLACE_ID/photos/PHOTO_RESOURCE/media
- Tetapkan
skipHttpRedirect
ketrue
agar permintaan menampilkan respons JSON. Secara default, permintaan menampilkan gambar, yang tidak dapat ditampilkan oleh API Explorer. - Pilih tombol Jalankan. Dalam dialog, pilih akun yang ingin Anda gunakan untuk membuat permintaan.
-
Di panel API Explorer, pilih ikon layar penuh
untuk meluaskan jendela API Explorer.