จัดการการอัปเดตจาก Google

Google ใช้ข้อมูลจากแหล่งที่มาต่างๆ เช่น รายงานของผู้ใช้และเนื้อหาที่ได้รับอนุญาต เพื่อให้ Business Profile มีความถูกต้องอยู่เสมอ หากข้อมูลที่เจ้าของธุรกิจระบุได้รับรายงานว่าไม่ถูกต้อง Google จะแจ้งให้เจ้าของข้อมูลทราบ จากนั้นเจ้าของข้อมูลจะยอมรับหรือปฏิเสธการอัปเดตได้

ในฐานะเจ้าของข้อมูล My Business Business Information API จะช่วยให้คุณตรวจสอบการอัปเดตเหล่านี้เพื่อให้มั่นใจว่าข้อมูลทางธุรกิจถูกต้อง คู่มือนี้จะอธิบายวิธียอมรับหรือปฏิเสธการอัปเดต

หากต้องการจัดการการอัปเดตจาก Google ให้ทำตามขั้นตอนต่อไปนี้

  1. ค้นหาสถานที่ที่มีการอัปเดตที่รอดำเนินการ
  2. ตรวจสอบช่องที่อัปเดต
  3. ยอมรับหรือปฏิเสธการอัปเดต
  4. ตรวจสอบผลลัพธ์

ค้นหาสถานที่ที่มีการอัปเดตที่รอดำเนินการ

ก่อนที่จะยอมรับหรือปฏิเสธการอัปเดต คุณต้องค้นหาว่าสถานที่ใดมีการอัปเดตจาก Google วิธีที่ดีที่สุดในการรับการอัปเดตจาก Google สำหรับสถานที่ตั้งคือจัดการการแจ้งเตือนแบบเรียลไทม์ด้วย Cloud Pub/Sub หากคุณได้รับการแจ้งเตือน GOOGLE_UPDATE ในหัวข้อ Pub/Sub แสดงว่าการเปลี่ยนแปลงพร้อมให้คุณตรวจสอบแล้ว ช่อง locationName ในการแจ้งเตือนจะระบุชื่อทรัพยากรของสถานที่ตั้งที่มีการอัปเดตจาก Google

หรือจะดูการเรียก locations.get และตรวจสอบ Metadata เพื่อดูว่ามีแฟล็ก hasGoogleUpdated หรือไม่ก็ได้ หาก "isGoogleUpdated": true รหัสสถานที่ที่เชื่อมโยงกับสถานที่ตั้งนี้มีการอัปเดต

ส่งคำขอ

ตัวอย่างคำขอ locations.get มีดังนี้

HTTP
GET
https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}

ส่งคำขอ

ต่อไปนี้คือตัวอย่างการตอบกลับของ locations.get

{
  "name": "locations/{locationId}",
  "title": "Test Business",
  "phoneNumbers": {
      "primaryPhone": "02 9374 4000"
   },
  ...
  "metadata": {
    "hasGoogleUpdated": true,
    ...
  }
  ...
}

ตรวจสอบช่องที่อัปเดตแล้ว

หากต้องการตรวจสอบช่องที่เฉพาะเจาะจงซึ่งมีการอัปเดตจาก Google ให้เรียกใช้ locations.getGoogleUpdated

เมธอดนี้จะแสดงผลมาสก์ที่สำคัญ 2 รายการในเนื้อหาการตอบกลับ ดังนี้

  • diffMask: ระบุฟิลด์ที่ข้อมูลการแสดงผล (สิ่งที่ลูกค้าเห็นใน Google Maps และ Search) แตกต่างจากค่าที่ต้องการในพื้นที่ ซึ่งมักเกิดจากการอัปเดตจาก Google หรือเนื้อหาที่ผู้ใช้สร้างขึ้น คุณต้องยอมรับหรือปฏิเสธช่องเหล่านี้เพื่อแก้ไขความคลาดเคลื่อน
  • pendingMask: ระบุช่องที่คุณส่งข้อมูลอัปเดตไปก่อนหน้านี้ แต่ข้อมูลอัปเดตยังอยู่ระหว่างการประมวลผลและยังไม่ได้พุชไปยัง Google Maps และ Search คุณไม่จำเป็นต้องดำเนินการใดๆ กับช่องเหล่านี้

ส่งคำขอ

ตัวอย่างคำขอ locations.getGoogleUpdated มีดังนี้

HTTP
GET
https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}:googleUpdated

คำตอบ

ต่อไปนี้เป็นตัวอย่างการตอบกลับของ locations.getGoogleUpdated ซึ่งจะแสดงการอัปเดตที่พร้อมใช้งานในช่อง phoneNumbers.primaryPhone ค่าในการตอบกลับนี้คือค่าอัปเดตที่แนะนำ

{
  "location": {
    "name": "locations/{locationId}",
    "locationName": "Test Business",
    "phoneNumbers": {
      "primaryPhone": "+1 111 111 1111"
     },
    ...
  },
  "diffMask": "phoneNumbers.primaryPhone"
}

ยอมรับหรือปฏิเสธการอัปเดต

หากต้องการแก้ไขช่องที่แสดงใน diffMask คุณต้องยอมรับหรือปฏิเสธการอัปเดตโดยใช้คำขอ locations.patch ดังนี้

  • ยอมรับการอัปเดต: แก้ไขสถานที่ตั้งโดยใช้ค่าใหม่ที่แสดงในการตอบกลับ getGoogleUpdated ซึ่งจะอัปเดตระเบียนในเครื่องให้ตรงกับข้อมูลการแสดงโฆษณา
  • ปฏิเสธการอัปเดต: แก้ไขสถานที่ตั้งโดยใช้ค่าที่ต้องการเดิม ซึ่งจะยืนยันข้อมูลที่ต้องการอีกครั้งผ่านไปป์ไลน์การอัปเดตและเขียนทับข้อมูลที่แสดงอยู่

ในทั้ง 2 กรณี ให้ตั้งค่า updateMask ให้ครอบคลุมช่องที่คุณต้องการแก้ไข

ยอมรับคำขอ

ตัวอย่างคำขอ locations.patch มีดังนี้

HTTP
PATCH
https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}?updateMask=phoneNumbers.primaryPhone
{
    "phoneNumbers": {
      "primaryPhone": "+1 111 111 1111"
     },
}

คำตอบ

ต่อไปนี้คือตัวอย่างการตอบกลับของ locations.patch

{
    "name": "locations/{locationId}",
    "locationName": "Test Business",
    "phoneNumbers": {
      "primaryPhone": "+1 111 111 1111"
     },
    ...
}

ปฏิเสธคำขอ

ตัวอย่างคำขอ locations.patch มีดังนี้

HTTP
PATCH
https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}?updateMask=phoneNumbers.primaryPhone
{
    "name": "locations/{locationId}",
    "locationName": "Test Business",
    "phoneNumbers": {
      "primaryPhone": "222 222 2222"
     },
    ...
}

คำตอบ

ต่อไปนี้คือตัวอย่างการตอบกลับของ locations.patch

{
    "name": "locations/{locationId}",
    "locationName": "Test Business",
    "phoneNumbers": {
      "primaryPhone": "222 222 2222"
     },
    ...
}

ดูผลลัพธ์

หากแก้ไขสถานที่ตั้งสำเร็จ ช่อง diffMask ในการตอบกลับ locations.getGoogleUpdated จะแสดงค่าเป็น "diffMask": "" นอกจากนี้ แฟล็ก "hasGoogleUpdated" ภายใน Metadata จะแสดงค่าเป็น false หรือไม่มีค่าปรากฏอยู่

หากค่าในช่องไม่ชัดเจน โปรดติดต่อทีมสนับสนุนพร้อมคำขอและการตอบกลับสำหรับ getGoogleUpdated คำขอต้องมีการตอบกลับก่อนการเรียก locations.patch, การเรียก Patch และการเรียก getGoogleUpdated