Aby przedstawiać jak najdokładniejsze informacje w profilach firm, Google korzysta z wielu źródeł, np. ze wskazówek od użytkowników i z licencjonowanych materiałów. Jeśli informacje przekazane przez właścicieli firm zostaną zgłoszone jako nieprawidłowe, Google powiadomi właścicieli wizytówek. Właściciele wizytówek mogą następnie zaakceptować lub odrzucić aktualizacje.
Jako właściciel wizytówki możesz sprawdzić te aktualizacje za pomocą interfejsu API Informacje o firmie w Google Moja Firma, 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
- Sprawdź zaktualizowane pola
- Akceptowanie i odrzucanie aktualizacji
- Sprawdzanie wyników
Znajdowanie lokalizacji z oczekującymi aktualizacjami
Zanim zaakceptujesz lub odrzucisz aktualizacje, musisz sprawdzić, w których lokalizacjach są 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_UPDATEna temat Pub/Sub, oznacza to, że zmiana jest gotowa do sprawdzenia. Pole locationName w powiadomieniu zawiera nazwę zasobu lokalizacji z aktualizacjami Google.
Możesz też wyświetlić wywołanie locations.get i sprawdzić, czy w Metadata jest obecna flaga hasGoogleUpdated. Jeśli "isGoogleUpdated": true, identyfikator miejsca powiązany z tą lokalizacją został zaktualizowany.
Żądanie
Oto przykład żądania 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ć, które pola zawierają aktualizacje Google, wywołaj funkcję locations.getGoogleUpdated.
Ta metoda zwraca 2 ważne maski w treści odpowiedzi:
diffMask: oznacza pola, w których dane wyświetlane (to, co klienci widzą w Mapach i wyszukiwarce Google) różnią się od preferowanych wartości lokalnych. Zwykle jest to spowodowane aktualizacjami Google lub treściami 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 przesłana do Map Google i wyszukiwarki. Nie musisz nic robić w przypadku tych pól.
Żądanie
Oto przykład żądania locations.getGoogleUpdated:
GET
https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}:googleUpdated
Odpowiedź
Oto przykład odpowiedzi locations.getGoogleUpdated. W polu phoneNumbers.primaryPhone wyświetla dostępną aktualizację. 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:
- Zaakceptuj aktualizację: zastosuj poprawkę w lokalizacji, używając nowej wartości zwróconej w odpowiedzi
getGoogleUpdated. Spowoduje to zaktualizowanie lokalnego rekordu tak, aby pasował do danych wyświetlania. - Odrzucanie aktualizacji: przywróć lokalizację, używając pierwotnej preferowanej wartości. Spowoduje to ponowne potwierdzenie preferowanych danych w potoku aktualizacji i nadpisanie danych służących do wyświetlania reklam.
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ład żądania 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 prawidłowo zmodyfikowana, w polu diffMask w odpowiedzi locations.getGoogleUpdated wyświetlą się wartości "diffMask": "". Flaga "hasGoogleUpdated" w obrębie Metadata pokazuje wartość jako false lub nie ma wartości.
Jeśli wartości pól nie są jasne, skontaktuj się z naszym zespołem pomocy, podając prośbę i odpowiedź dla getGoogleUpdated. Żądanie musi zawierać odpowiedź przed wywołaniem locations.patch, wywołaniem patch i wywołaniem getGoogleUpdated.