Cómo trabajar con datos de ubicación

En este instructivo, se muestra cómo crear y editar datos de ubicación. La API de My Business Information te permite hacer lo siguiente:

Las ubicaciones pueden usarse en Google Ads, pero deben verificado para ser apto para lo siguiente: aparecerán en la Búsqueda y Maps. Los datos de ubicación se representan accounts.locations de elementos no utilizados.

Antes de comenzar

Antes de utilizar la API de My Business Information, debes registrar tu y obtener credenciales de OAuth 2.0. Para obtener detalles sobre cómo comenzar con la API de My Business Information, consulta Configuración básica.

Cómo crear una ubicación

Puedes usar la API de My Business Information para crear una ubicación nueva para un negocio con accounts.locations.create.

Para crear una ubicación, usa lo siguiente:

HTTP
POST
https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?requestId=requestId&validateOnly=True|False

{
    "storeCode": "GOOG-SYD",
    "languageCode": "en-AU",
    "title": "Google Sydney",
    "phoneNumbers": {
      "primaryPhone": "02 9374 4000"
     }
    "storefrontAddress": {
      "addressLines": [
        "Level 5",
        "48 Pirrama Road"
      ],
      "locality": "Pyrmont",
      "postalCode": "2009",
      "administrativeArea": "NSW",
      "regionCode": "AU"
    },
    "websiteUri": "https://www.google.com.au/",
    "regularHours": {
      "periods": [
        {
          "openDay": "MONDAY",
          "closeDay": "MONDAY",
          "openTime": "09:00",
          "closeTime": "17:00"
        },
        {
          "openDay": "TUESDAY",
          "closeDay": "TUESDAY",
          "openTime": "09:00",
          "closeTime": "17:00"
        },
        {
          "openDay": "WEDNESDAY",
          "closeDay": "WEDNESDAY",
          "openTime": "09:00",
          "closeTime": "17:00"
        },
        {
          "openDay": "THURSDAY",
          "closeDay": "THURSDAY",
          "openTime": "09:00",
          "closeTime": "17:00"
        },
        {
          "openDay": "FRIDAY",
          "closeDay": "FRIDAY",
          "openTime": "09:00",
          "closeTime": "17:00"
        }
      ]
    },
    "categories": {
      "primaryCategory": {
        "name": "gcid:software_company"
      }
     }
}

Cómo borrar una ubicación

Puedes usar la API de My Business Information para borrar una ubicación con locations.delete.

Para borrar una ubicación, usa lo siguiente:

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

Obtener una ubicación por nombre

Si tienes muchas empresas asociadas a tu cuenta, te recomendamos que obtengas una sola ubicación. Puedes filtrar según el nombre de la empresa nombre para obtener ubicación con locations.get.

Para obtener una ubicación por nombre, utiliza lo siguiente. Debes especificar una readMask para recuperar campos específicos. :

HTTP
GET
https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}?readMask={commaSeparatedFieldsToRetrieve}

Devolver la versión de Google Maps

HTTP

Para que se muestre la versión de Google Maps de una ubicación, agrega googleUpdated a la URL de la solicitud, como en el siguiente ejemplo:

GET
https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}:googleUpdated?readMask={commaSeparatedFieldsToRetrieve}

Si no hay resultados, el código de estado HTTP 404 NOT FOUND se que se devuelven. Puedes encontrar más detalles para administrar las Actualizaciones de Google aquí.

Mostrar lista de ubicaciones

Cuando administras una o más ubicaciones, es posible que desees enumerar todas las ubicaciones asociadas a tu cuenta. Usa el accounts.locations.list para mostrar una lista de todas las ubicaciones asociadas con un usuario.

Para ver una lista de todas las ubicaciones que un usuario autenticado posee o administra de forma directa, utiliza las lo siguiente:

HTTP
GET
https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}

Usa un comodín '-' para la cuenta en la URL de solicitud para incluir el fichas de propiedad indirecta (que son propiedad de un grupo o que se administran a través de un grupo):

HTTP
GET
https://mybusinessbusinessinformation.googleapis.com/v1/accounts/-/locations?readMask={commaSeparatedFieldsToRetrieve}

Filtra los resultados cuando incluyes ubicaciones

HTTP

Puedes usar filtros para limitar los resultados que se devuelven cuando llamas accounts.locations.list. Para filtrar una solicitud, agrega una expresión de filtro a la URL base como se muestra en este ejemplo:

GET
https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter={FIELD_NAME}=%22{YOUR_QUERY}%22

Sintaxis de consultas básica

Una restricción tiene la siguiente sintaxis: <field><operator><value>, donde el operador es EQUALS (=) o HAS (:). Los operadores EQUALS (=) y HAS (:) los operadores son equivalentes para todos los campos excepto locationName (consulta a continuación).

Las comillas están codificadas como "%22" y los espacios como signos más (+).

A menos que se indique lo contrario, todas las comparaciones no distinguen mayúsculas de minúsculas. de datos. Por ejemplo, "4 unidades" coincidiría con "4, Privet Drive".

Combina varios campos en una consulta de filtro

La API permite que el operador Y conecte todas las restricciones de campos. Sin embargo, cuando se trata de la palabra clave OR, todas las restricciones se deben aplicar a la misma . Por ejemplo: locationName=A O labels=B no es por lo que está permitido.

Ejemplo

En el siguiente ejemplo, se muestra una expresión de filtro que devuelve todas las ubicaciones con el nombre "Pepé Le Pew". Muestra categorías para "french_restaurant". o "restaurante_european", y una etiqueta de "recientemente abierto".

locationName=%22Pepé+Le+Pew%22+AND+
(categories=%22french_restaurant%22+OR+
categories=%22european_restaurant%22)+AND+
labels=%22newly+open%22

Buscar por distancia o cuenta

El siguiente ejemplo muestra cómo puede buscar ubicaciones dentro de un determinado distancia desde un punto geográfico:

HTTP
GET
https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=distance(latlng, geopoint({latitude}, {longitude}))<{distance}

Para filtrar ubicaciones dentro de un radio de 1,600 kilómetros de Boulder, Colorado, EE.UU.:

GET
https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=distance(latlng, geopoint(40.01, -105.27))<1000.0

Lista de todos los campos de filtro admitidos

La siguiente es una lista exhaustiva de todos los campos que se pueden usar para filtros:

Campos Descripción y ejemplo
Campos de coincidencia de cadenas
title

The business' nombre del mundo real

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=title:"Bajis" (Coincide con cualquier nombre de ubicación con "Bajis" como subcadena)

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=title="Bajis" (Coincide con cualquier nombre de ubicación con "Bajis" como token o palabra)

categories

Es la combinación de la categoría principal y las categorías adicionales. Ten en cuenta que el comando "gcid:" debe omitirse. Si hay varios categorías, este filtro coincidirá si al menos una de ellas coincide con esta .

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=categories="french_restaurant"

phone_numbers.primary_phone

Es el número de teléfono principal en formato E.164 (por ejemplo: "+441234567890").

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=phone_numbers.primary_phone="+441234567890"

storefront_address.region_code

El código regional de CLDR del país o la región de la dirección

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=storefront_address.region_code="US"

storefront_address.administrative_area

La subdivisión administrativa más alta que se utiliza para las direcciones postales de un país o una región

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=storefront_address.administrative_area="CA"

storefront_address.locality

La parte de la dirección que indica la ciudad/pueblo

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=storefront_address.locality="New York"

storefront_address.postal_code

El código postal de la dirección

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=storefront_address.postal_code="12345"

metadata.place_id

Si esta ubicación se verificó y está conectada con Google Maps o aparece en Google Maps, este campo es igual al ID de lugar de la ubicación.

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=metadata.place_id="12345"

openInfo.status

Indica si la ubicación está abierta o no en este momento. (OPEN, CLOSED_PERMANENTLY)

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=openInfo.status="OPEN"

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=openInfo.status="CLOSED_PERMANENTLY"

labels

Una colección de cadenas de formato libre que te permiten etiquetar tu negocio. En a diferencia de todos los otros campos, este valor debe coincidir exactamente con un valor etiqueta que incluye el uso de mayúsculas y minúsculas, y no solo un token. P.ej., Si la etiqueta es "XX YY", entonces ni "XX" o "xx yy" coincidirán.

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=labels="newly open"

storeCode

El identificador externo de esta ubicación, que debe ser único dentro de una cuenta determinada

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=storeCode="12345"

Funciones
distance

Te permite filtrar según la distancia de la ubicación a un punto geográfico.

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=distance(latlng, geopoint(1.0, -25.0))<1000.0

Ordenar por campo de consulta

Puedes ordenar los resultados por nombre de la empresa o código de tienda, de forma ascendente o orden descendente. Si hay varios criterios de orden, estos se separan con comas en las orderBy, como en el siguiente ejemplo:

HTTP
GET
https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&orderBy=locationName,storeCode

Cómo aplicar parches a una ubicación

Usa la API de My Business Information para actualizar uno o más campos de una ubicación con locations.patch.

Para cambiar uno o más campos de una ubicación, utiliza lo siguiente:

HTTP

Agrega los campos y los valores actualizados con el campo de ubicación y usa un Lista separada por comas de campos actualizados como el valor de fieldMask.

PATCH
https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}?languageCode=language&validateOnly=True|False&updateMask=title
{
    "title": "Google Shoes"
}