Gerenciar atualizações do Google

Para manter seu Perfil da Empresa o mais atualizado possível, o Google usa informações de fontes como relatórios de usuários e conteúdo licenciado. Se os dados fornecidos pelos proprietários forem identificados como incorretos, o Google notificará os proprietários da ficha, que podem aceitar ou rejeitar as atualizações.

Com a API My Business Business Information, o proprietário da ficha da empresa pode analisar essas atualizações para garantir que as informações comerciais estejam corretas. Neste guia, descrevemos como aceitar ou rejeitar essas atualizações.

Para gerenciar suas atualizações do Google, siga estas etapas:

  1. Encontrar as unidades com atualizações pendentes
  2. Revisar os campos atualizados
  3. Aceitar ou rejeitar atualizações
  4. Analisar os resultados

Encontrar as unidades com atualizações pendentes

Antes de aceitar ou rejeitar atualizações, você precisa descobrir para quais unidades há atualizações do Google disponíveis. A melhor maneira de fazer isso é gerenciando as notificações em tempo real com o Cloud Pub/Sub. Quando você recebe uma notificação GOOGLE_UPDATE no seu tópico do Pub/Sub, há uma alteração pronta para análise. O campo locationName nessa notificação mostra o nome de recurso da unidade a que as atualizações do Google se referem.

Como alternativa, você pode ver a chamada locations.get e inspecionar o Metadata para ver se a sinalização hasGoogleUpdated está presente. Se for "isGoogleUpdated": true, significa que há atualizações para o ID associado a essa unidade.

Solicitação

Veja a seguir um exemplo de solicitação locations.get:

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

Solicitação

Veja a seguir um exemplo de resposta locations.get:

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

Revisar os campos atualizados

Para ver quais campos específicos têm atualizações do Google, chame locations.getGoogleUpdated. No corpo da resposta, analise o diffMask, que detalha os campos atualizados pelo Google.

Solicitação

Veja a seguir um exemplo de solicitação locations.getGoogleUpdated:

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

Resposta

Veja a seguir um exemplo de resposta locations.getGoogleUpdated. Ele mostra uma atualização disponível no campo phoneNumbers.primaryPhone. O valor desta resposta é o valor de atualização sugerido:

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

Aceitar ou rejeitar atualizações

Para aceitar ou rejeitar uma atualização, execute um locations.patch com os campos updateMask definidos da mesma forma que no diffMask que você analisou anteriormente. Além disso, use os mesmos valores preferenciais para cada campo.

Aceitar uma solicitação

Veja a seguir um exemplo de solicitação locations.patch:

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

Resposta

Veja a seguir um exemplo de resposta locations.patch:

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

Rejeitar uma solicitação

Veja a seguir um exemplo de solicitação 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"
     },
    ...
}

Resposta

Veja a seguir um exemplo de resposta locations.patch:

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

Analisar os resultados

Se o patch for adicionado corretamente à unidade, o campo diffMask na resposta locations.getGoogleUpdated terá o valor "diffMask": "". Além disso, a sinalização "hasGoogleUpdated" em Metadata será false, ou então nenhum valor será exibido.

Se os valores dos campos não estiverem claros, entre em contato com nossa equipe de suporte descrevendo a solicitação e a resposta para getGoogleUpdated. A solicitação precisa incluir a resposta retornada antes da chamada locations.patch e as chamadas de patch e getGoogleUpdated.