Google による変更を管理する

Google では、お客様のビジネス プロフィールの情報をできるだけ正確に保つため、ユーザーから寄せられた報告やライセンス付きコンテンツなど、さまざまなソースから集めた情報を使用しています。ビジネス オーナー提供の情報に誤りがあるという報告を受けると、Google は情報を更新し、リスティングのオーナーに通知します。リスティングのオーナーは、Google による変更を承認または拒否できます。

リスティングのオーナーは、My Business Business Information API を使用して Google による変更をチェックし、ビジネス情報が正確かどうかを確認できます。このガイドでは、変更を承認または拒否する方法について説明します。

Google による変更を管理する手順は、次のとおりです。

  1. 保留中の変更があるビジネス情報を確認する
  2. 変更されたフィールドを確認する
  3. 変更を承認または拒否する
  4. 結果を確認する

保留中の変更があるビジネス情報を確認する

Google による変更を承認または拒否する前に、どのビジネス情報が変更されたのかを確認する必要があります。Google による変更を把握するおすすめの方法は、Cloud Pub/Subリアルタイム通知を管理する方法です。Pub/Sub トピックGOOGLE_UPDATE の通知が届けば、確認を要する変更があることがわかります。通知の locationName フィールドを見ると、Google によって変更されたビジネス情報のリソース名を確認できます。

あるいは、locations.get を呼び出し、Metadata を確認して、hasGoogleUpdated フラグがあるかどうか調べる方法もあります。"isGoogleUpdated": true であれば、情報が変更されています。そのビジネス情報に関連付けられているプレイス ID を確認してください。

リクエスト

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 を呼び出します。変更されたフィールドの詳細情報は、レスポンスの本文にある diffMask で確認できます。

リクエスト

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"
}

変更を承認または拒否する

変更を承認または拒否するには、locations.patch を実行します。その際、updateMask フィールドには、前の手順で取得した diffMask と同じ値を設定します。また、各フィールドには設定したい値を正確に指定してください。

変更を承認する

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"
     },
    ...
}

結果を確認する

ビジネス情報が正常に更新されると、locations.getGoogleUpdated レスポンスの diffMask フィールドに "diffMask": "" と表示されます。また、Metadata 内のフラグ "hasGoogleUpdated"false と表示されるか、何の値も表示されません。

フィールドの値にご不明な点がある場合は、サポートチームにお問い合わせください。その際には、getGoogleUpdated のリクエストとレスポンスをご記載ください。リクエストには、locations.patch の呼び出しの前のレスポンス、patch の呼び出し、および getGoogleUpdated の呼び出しを含めてください。