Foto Tempat (Baru) adalah API hanya-baca yang memungkinkan Anda menambahkan konten fotografi untuk aplikasi Anda. Layanan Place Photo memberikan Anda mengakses jutaan foto yang tersimpan dalam database Places.
Ketika Anda mendapatkan informasi tempat menggunakan permintaan Place Details, Nearby Search, atau Text Search, Anda juga dapat meminta sumber daya foto untuk konten fotografi yang relevan. Menggunakan layanan Photo, lalu Anda dapat mengakses foto yang dirujuk dan mengubah ukuran gambar ke ukuran yang optimal untuk aplikasi.
API Explorer memungkinkan Anda membuat permintaan langsung sehingga Anda dapat membiasakan diri dengan API dan Opsi API:
Cobalah!Permintaan Place Photo
Permintaan Place Photo adalah permintaan GET HTTP ke URL dalam bentuk:https://places.googleapis.com/v1/NAME/media?key=API_KEY&PARAMETERS
Tempat 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 dikembalikan dari
Place Details (Baru), Nearby Search (Baru),
atau permintaan Text Search (Baru)
dalam properti name
dari setiap elemen array photos[]
.
Sebagai 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 di dimensi kustom, dimensi tersebut akan diskalakan agar sesuai dengan dimensi yang lebih kecil dari kedua dimensi, sehingga dibatasi dengan dimensi rasio aspek. Properti maxheight dan maxwidth menerima bilangan bulat antara 1 dan 4800.
Anda harus menentukan maxHeightPx
, atau maxWidthPx
, atau keduanya.
Parameter opsional
skipHttpRedirect
Jika false
(default), buat 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.
Dapatkan nama foto
Semua permintaan ke layanan Place Photo harus menyertakan
nama sumber daya foto, yang ditampilkan sebagai respons terhadap Nearby Search, Text Search, atau
Permintaan Place Details. Respons terhadap permintaan ini berisi array photos[]
jika
tempat tersebut memiliki konten fotografi terkait.
Setiap elemen photo[]
berisi kolom berikut:
name
— String yang berisi nama resource foto saat Anda melakukan permintaan Photo. String ini berbentuk:places/PLACE_ID/photos/PHOTO_RESOURCE
heightPx
— Tinggi maksimum gambar, dalam piksel.widthPx
— Lebar maksimum gambar, dalam piksel.authorAttributions[]
— Atribusi apa pun yang diperlukan. Ini akan selalu ada, namun mungkin kosong.
Foto yang dikembalikan oleh layanan Foto berasal dari berbagai lokasi,
termasuk foto kontribusi pengguna dan pemilik bisnis. Dalam kebanyakan kasus,
foto dapat digunakan tanpa atribusi, atau akan memiliki atribusi yang diperlukan
disertakan sebagai bagian dari gambar. Namun, jika elemen photo
yang ditampilkan
menyertakan nilai di kolom authorAttributions
, Anda harus menyertakan
atribusi tambahan pada aplikasi di mana pun Anda menampilkan gambar.
Contoh berikut menunjukkan permintaan Place Details yang menyertakan photos
di
mask kolom sehingga respons menyertakan 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/ChIJ2fzCmcW7j4AR2JzfXBBoh6EContoh array
photos[]
dalam respons ditampilkan di bawah ini.
... "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 ini menampilkan gambar menggunakan resource name
, dengan mengubah ukurannya sehingga
tinggi dan lebarnya maksimum 400 piksel:
https://places.googleapis.com/v1/places/ChIJ2fzCmcW7j4AR2JzfXBBoh6E/photos/AUacShh3_Dd8yvV2JZMtNjjbbSbFhSv-0VmUN-uasQ2Oj00XB63irPTks0-A_1rMNfdTunoOVZfVOExRRBNrupUf8TY4Kw5iQNQgf2rwcaM8hXNQg7KDyvMR5B-HzoCE1mwy2ba9yxvmtiJrdV-xBgO8c5iJL65BCd0slyI1/media?maxHeightPx=400&maxWidthPx=400&key=API_KEY
Respons permintaan Place Photo yang berhasil adalah gambar. Jenis gambar bergantung pada jenis foto asli yang dikirim.
Jika permintaan Anda melebihi kuota yang tersedia, server akan menampilkan Status HTTP 403 dan tampilkan gambar di bawah untuk menunjukkan bahwa kuota telah terlampaui:
![Gambar Melebihi Kuota](https://developers-dot-devsite-v2-prod.appspot.com/static/maps/documentation/maps-static/images/quota.png?authuser=4&hl=id)
Jika server tidak dapat memahami permintaan Anda, server akan menampilkan HTTP 400 status, yang menunjukkan permintaan yang tidak valid. Alasan paling umum untuk permintaan tidak valid meliputi:
- Nama foto yang dikirimkan tidak ditentukan dengan benar.
- Permintaan tidak menyertakan
maxHeightPx
ataumaxWidthPx
. - Nilai parameter
maxHeightPx
ataumaxWidthtPx
telah ditetapkan kenull
. name
sudah tidak berlaku. Jika masa berlakuname
habis, buat permintaan ke Place Details (Baru), Nearby Search (Baru), atau Text Search (Baru) untuk mendapatkanname
baru.
Cobalah!
API Explorer memungkinkan Anda membuat contoh permintaan sehingga Anda bisa membiasakan diri dengan 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 JSON yang dihasilkan. Secara default, permintaan menampilkan gambar, yang tidak dapat ditampilkan oleh API Explorer. - Pilih tombol Execute. Di jendela pop-up, pilih akun yang ingin Anda gunakan untuk membuat permintaan.
Di panel API Explorer, pilih ikon luaskan,
, untuk meluaskan jendela API Explorer.