Aby dane w profilu Twojej firmy były tak dokładne, jak to możliwe, Google korzysta z informacji z różnych źródeł, takich jak opinie użytkowników i treści licencjonowane. Jeśli informacje podane przez właścicieli firmy zostaną zgłoszone jako nieprawidłowe, Google powiadomi o tym właścicieli wizytówki. Właściciele wizytówek mogą zaakceptować lub odrzucić te aktualizacje.
Jako właściciel wizytówki możesz za pomocą My Business Business Information API sprawdzać te aktualizacje, aby upewnić się, że informacje o Twojej firmie są prawidłowe. Z tego przewodnika dowiesz się, jak akceptować i odrzucać aktualizacje.
Aby zarządzać aktualizacjami Google, wykonaj te czynności:
- Znajdowanie lokalizacji z oczekującymi aktualizacjami
- Sprawdzanie zaktualizowanych pól
- Akceptowanie i odrzucanie aktualizacji
- Sprawdzanie wyników
Znajdowanie lokalizacji z oczekującymi aktualizacjami
Zanim zaakceptujesz lub odrzucisz aktualizacje, musisz sprawdzić, które lokalizacje mają dostępne aktualizacje Google. Najlepszym sposobem na otrzymywanie aktualizacji Google dotyczących lokalizacji jest zarządzanie powiadomieniami w czasie rzeczywistym za pomocą Cloud Pub/Sub. Jeśli otrzymasz powiadomienie GOOGLE_UPDATE w temacie Pub/Sub, oznacza to, że zmiana jest gotowa do sprawdzenia. Pole locationName w powiadomieniu zawiera nazwę zasobu lokalizacji z aktualizacjami Google.
Możesz też sprawdzić wywołanie locations.get i Metadata pod kątem obecności flagi hasGoogleUpdated. Jeśli "isGoogleUpdated": true, identyfikator miejsca powiązany z tą lokalizacją został zaktualizowany.
Żądanie
Oto przykładowe żądanie locations.get:
GET
https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}
Żądanie
Oto przykład odpowiedzi locations.get:
{
"name": "locations/{locationId}",
"title": "Test Business",
"phoneNumbers": {
"primaryPhone": "02 9374 4000"
},
...
"metadata": {
"hasGoogleUpdated": true,
...
}
...
}Sprawdzanie zaktualizowanych pól
Aby sprawdzić konkretne pola, które mają aktualizacje Google, wywołaj metodę locations.getGoogleUpdated.
Ta metoda zwraca 2 ważne maski w treści odpowiedzi:
diffMask: wskazuje pola, w których dane wyświetlane (to, co klienci widzą w Mapach Google i w wyszukiwarce) różnią się od preferowanych wartości lokalnych. Zwykle jest to spowodowane aktualizacjami Google lub treściami generowanymi przez użytkowników. Aby rozwiązać problem z rozbieżnością, musisz zaakceptować lub odrzucić te pola.pendingMask: wskazuje pola, w których wcześniej przesłano aktualizację, ale jest ona nadal przetwarzana i nie została jeszcze opublikowana w Mapach i wyszukiwarce Google. Nie musisz podejmować żadnych działań w przypadku tych pól.
Żądanie
Oto przykładowe żądanie locations.getGoogleUpdated:
GET
https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}:googleUpdated
Odpowiedź
Poniżej znajdziesz przykładową odpowiedź locations.getGoogleUpdated. W polu phoneNumbers.primaryPhone wyświetla się dostępna aktualizacja. Wartość w tej odpowiedzi to sugerowana wartość aktualizacji:
{
"location": {
"name": "locations/{locationId}",
"locationName": "Test Business",
"phoneNumbers": {
"primaryPhone": "+1 111 111 1111"
},
...
},
"diffMask": "phoneNumbers.primaryPhone"
}Akceptowanie i odrzucanie aktualizacji
Aby rozwiązać problemy z polami wymienionymi w diffMask, musisz zaakceptować lub odrzucić aktualizacje za pomocą żądania locations.patch:
- Zaakceptowanie aktualizacji: zmodyfikuj lokalizację, używając nowej wartości zwróconej w odpowiedzi
getGoogleUpdated. Spowoduje to zaktualizowanie lokalnego rekordu, aby pasował do danych wyświetlania. - Odrzucenie aktualizacji: popraw lokalizację, używając pierwotnej preferowanej wartości. Spowoduje to ponowne przesłanie preferowanych danych przez proces aktualizacji i zastąpienie danych wyświetlanych.
W obu przypadkach ustaw parametr updateMask tak, aby obejmował pola, które chcesz rozwiązać.
Akceptowanie prośby
Oto przykładowe żądanie locations.patch:
PATCH
https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}?updateMask=phoneNumbers.primaryPhone
{
"phoneNumbers": {
"primaryPhone": "+1 111 111 1111"
},
}
Odpowiedź
Oto przykład odpowiedzi locations.patch:
{
"name": "locations/{locationId}",
"locationName": "Test Business",
"phoneNumbers": {
"primaryPhone": "+1 111 111 1111"
},
...
}Odrzucanie prośby
Oto przykładowe żądanie locations.patch:
PATCH
https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}?updateMask=phoneNumbers.primaryPhone
{
"name": "locations/{locationId}",
"locationName": "Test Business",
"phoneNumbers": {
"primaryPhone": "222 222 2222"
},
...
}
Odpowiedź
Oto przykład odpowiedzi locations.patch:
{
"name": "locations/{locationId}",
"locationName": "Test Business",
"phoneNumbers": {
"primaryPhone": "222 222 2222"
},
...
}Sprawdzanie wyników
Jeśli lokalizacja zostanie pomyślnie zaktualizowana, pole diffMask w odpowiedzi locations.getGoogleUpdated będzie miało wartość "diffMask": "". Dodatkowo flaga "hasGoogleUpdated" w elemencie Metadata ma wartość false lub nie ma żadnej wartości.
Jeśli wartości pól są niejasne, skontaktuj się z naszym zespołem pomocy i podaj żądanie oraz odpowiedź dla getGoogleUpdated. Żądanie musi zawierać odpowiedź przed wywołaniem locations.patch, wywołaniem patch i wywołaniem getGoogleUpdated.