Kasus penggunaan
Booking API Google Maps menyediakan dua metode, yang dapat digunakan untuk mengambil status masing-masing penjual secara terprogram untuk berbagai integrasi atau inventaris Iklan Jasa dan Servis.
Kasus penggunaan untuk Merchant Status API:
- Tingkatkan kualitas alat pengelolaan hubungan pelanggan yang ada untuk menunjukkan kepada pelanggan Anda bagaimana inventaris mereka ditampilkan di Google.
- Bangun dasbor untuk melacak status inventaris dan status pencocokan penjual Anda.
- Ambil secara terprogram status yang cocok dan dapat dipesan untuk penjual Anda, serta perbaiki informasi yang salah untuk meningkatkan kualitas data.
Apa saja status penjual
MerchantStatus berisi informasi berikut:
- Status inventaris penjual: berlaku untuk penjual yang memesan dan/atau daftar tunggu.
- Status pencocokan penjual: mencakup detail pada listingan bisnis yang cocok
- Khusus untuk Iklan Jasa dan Servis Google) Penyedia layanan penjual yang cocok: mencakup ID pelanggan dan kategori layanan.
- URL yang menunjukkan cara penjual muncul di Google.
Mencari status penjual tunggal
Anda bisa mendapatkan status satu penjual menggunakan inventory.partners.merchants.getStatus:
GET https://mapsbooking.googleapis.com/v1alpha/inventory/partners/{partnerId}/merchants/{merchantId}/status
Berikut adalah contoh kode Python (lihat contoh dalam bahasa lainnya di sini):
from google.auth.transport.requests import AuthorizedSession from google.oauth2 import service_account credentials = service_account.Credentials.from_service_account_file( './your_key.json') scoped_credentials = credentials.with_scopes( ['https://www.googleapis.com/auth/mapsbooking']) authed_session = AuthorizedSession(scoped_credentials) response = authed_session.get('https://partnerdev-mapsbooking.googleapis.com' + '/v1alpha/inventory/partners/123456789/merchants/001/status')
Contoh respons MerchantStatus terlihat seperti ini:
{ "name": "partners/123456789/merchants/001/status", "merchantName": "Foo Bar Restaurant", "inputGeoInfo": { "unstructured_address": "123 Foo Bar Street, Mountain View" }, "processingStatus": "COMPLETED", "bookingStatus": { "hasValidFutureInventory": true }, "waitlistStatus": { "hasValidWaitlistService": true } "geoMatch": { "name": "Foo Bar Restaurant", "formattedAddress": "123 Foo Bar St, Mountain View, CA 94043", "placeId": "ChIAAAAAAAAABBBBBBBB" }, "directUrls": [ { "type": "BOOKING", "url": "https://reserve-partnerdev.sandbox.google.com/maps/reserve/v/dine/m/Nwaaaaa" }, { "type": "WAITLIST", "url": "https://reserve-partnerdev.sandbox.google.com/maps/reserve/v/wait/c/iDbbbbb" } ] }
Mengambil status penjual secara massal
Anda dapat mengambil status semua penjual, atau sekelompok penjual yang memenuhi kondisi inventaris/pencocokan tertentu, menggunakan inventory.partners.merchants.status.list. Misalnya, Anda dapat melakukan panggilan ini untuk mendapatkan semua penjual yang tidak cocok dengan inventaris pemesanan bertanggal mendatang yang valid:
GET https://mapsbooking.googleapis.com/v1alpha/inventory/partners/{partnerId}/merchants/status?pageSize=50&bookingInventoryStatusRestrict=HAS_VALID_FUTURE_INVENTORY&geoMatchRestrict=GEO_UNMATCHED
Contoh respons akan terlihat seperti ini:
{ "merchantStatuses": [ { "name": "partners/123456789/merchants/002/status", "merchantName": "Bar Foo Restaurant", "inputGeoInfo": { "unstructured_address": "234 Bar Foo Street, Mountain View" }, "processingStatus": "COMPLETED", "bookingStatus": { "hasValidFutureInventory": true }, "waitlistStatus": {}, }, ... { "name": "partners/123456789/merchants/080/status", "merchantName": "Baz Restaurant", "inputGeoInfo": { "unstructured_address": "345 Baz Street, Mountain View" }, "processingStatus": "COMPLETED", "bookingStatus": { "hasValidFutureInventory": true }, "waitlistStatus": { "hasValidWaitlistService": true }, }, ], "nextPageToken": "AAABBBB" }
Respons ini akan berisi 50
MerchantStatus yang memenuhi kondisi pemfilteran dan diurutkan menurut
merchant_id
. Respons juga berisi token halaman (jika bukan
halaman terakhir) untuk mengkueri halaman berikutnya.
Perhatikan: kondisi pemfilteran harus konsisten di semua halaman.
Praktik Terbaik
Karena status penjual tidak sering berubah, sebaiknya buat cache hasil yang diambil dan secara berkala (mis. setiap beberapa jam) untuk mengambilnya melalui kueri baru. Pusat Tindakan dapat memperlambat kueri Anda jika jumlah permintaan per detik dianggap terlalu tinggi.