กรณีการใช้งาน
Google Maps Booking API มี 2 วิธีที่ใช้ได้ เพื่อดึงข้อมูลสถานะของผู้ขายแต่ละรายโดยอัตโนมัติสำหรับ การผสานรวม Actions Center ต่างๆ หรือ สินค้าคงคลังของโฆษณาบริการในพื้นที่
กรณีการใช้งาน Merchant Status API
- ปรับปรุงเครื่องมือการจัดการลูกค้าสัมพันธ์ที่มีอยู่เพื่อแสดงให้ลูกค้าเห็นว่าระบบแสดงข้อมูลสินค้าของลูกค้าบนแพลตฟอร์มศูนย์การดำเนินการอย่างไร
- สร้างแดชบอร์ดเพื่อติดตามสถานะสินค้าคงคลังและสถานะการจับคู่ของผู้ขาย
- ดึงข้อมูลสถานะที่ตรงกันและสถานะที่จองได้ของผู้ขายโดยอัตโนมัติ และแก้ไขข้อมูลที่ไม่ถูกต้องเพื่อปรับปรุงคุณภาพของข้อมูล
สถานะผู้ขายมีข้อมูลอะไรบ้าง
MerchantStatus มีข้อมูลต่อไปนี้
- สถานะสินค้าคงคลังของผู้ขาย: ใช้ได้กับทั้งผู้ขายที่รับจองและ/หรือผู้ขายที่รับลงชื่อในรายการรอ
- สถานะการจับคู่ผู้ขาย: มีรายละเอียดเกี่ยวกับข้อมูลธุรกิจที่ตรงกัน
- สำหรับ โฆษณาบริการในพื้นที่ของ Google เท่านั้น) ผู้ให้บริการของ Merchant ที่ตรงกัน ประกอบด้วยรหัสลูกค้าและหมวดหมู่บริการ
- URL เพื่อแสดงวิธีที่ผู้ขายปรากฏผ่าน Reserve with Google
ค้นหาสถานะของผู้ขายรายเดียว
คุณดูสถานะของผู้ขายรายเดียวได้โดยใช้ inventory.partners.merchants.getStatus ดังนี้
GET https://mapsbooking.googleapis.com/v1alpha/inventory/partners/{partnerId}/merchants/{merchantId}/statusนี่คือตัวอย่างโค้ด Python (ดูตัวอย่างในภาษาอื่นๆ ได้ที่นี่)
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')
ตัวอย่างการตอบกลับ MerchantStatus มีลักษณะดังนี้
{ "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" } ] }
เรียกข้อมูลสถานะผู้ขายแบบกลุ่ม
คุณสามารถดึงข้อมูลสถานะของผู้ขายทั้งหมดหรือกลุ่มผู้ขาย ที่ตรงตามเงื่อนไขสินค้าคงคลัง/การจับคู่บางอย่างได้โดยใช้ inventory.partners.merchants.status.list เช่น คุณสามารถทำการเรียกนี้เพื่อรับผู้ขายที่ไม่ตรงกันทั้งหมดที่มีสินค้าคงคลังการจองที่ระบุวันที่ในอนาคตที่ถูกต้อง
GET https://mapsbooking.googleapis.com/v1alpha/inventory/partners/{partnerId}/merchants/status?pageSize=50&bookingInventoryStatusRestrict=HAS_VALID_FUTURE_INVENTORY&geoMatchRestrict=GEO_UNMATCHEDตัวอย่างการตอบกลับจะมีลักษณะดังนี้
{ "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" }
การตอบกลับนี้จะมี 50
MerchantStatus ที่ตรงตามเงื่อนไขการกรองและจัดเรียงตาม
merchant_id การตอบกลับยังมีโทเค็นหน้าเว็บ (หากไม่ใช่หน้าสุดท้าย) เพื่อค้นหาหน้าถัดไป
โปรดทราบว่าเงื่อนไขการกรองควรสอดคล้องกันในทุกหน้า
แนวทางปฏิบัติแนะนำ
เนื่องจากสถานะผู้ขายมักไม่เปลี่ยนแปลงบ่อยครั้ง จึงขอแนะนำให้แคชผลลัพธ์ที่เรียกข้อมูลมาและเรียกข้อมูลเป็นระยะๆ (เช่น ทุกๆ 2-3 ชั่วโมง) ผ่านการค้นหาใหม่ Actions Center อาจจำกัดอัตราการส่งคำค้นหาของคุณ หากจำนวนคำขอต่อวินาทีสูงเกินไป