Mit Standortdaten arbeiten

In dieser Anleitung erfahren Sie, wie Sie Standortdaten erstellen und bearbeiten. Mit der My Business Business Information API haben Sie folgende Möglichkeiten:

Standorte können in Anzeigen verwendet werden, müssen aber bestätigt werden, damit sie in der Google Suche und auf Google Maps erscheinen können. Standortdaten werden durch die Sammlung accounts.locations dargestellt.

Hinweis

Bevor Sie die My Business Business Information API verwenden können, müssen Sie Ihre Anwendung registrieren und OAuth 2.0-Anmeldedaten abrufen. Weitere Informationen zu den ersten Schritten mit der My Business Business Information API finden Sie unter Grundlegende Einrichtung.

Standort erstellen

Mit der My Business Business Information API können Sie mit accounts.locations.create einen neuen Standort für ein Unternehmen erstellen.

Verwenden Sie folgenden Code, um einen Standort zu erstellen:

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

Standort löschen

Sie können die My Business Business Information API verwenden, um einen Standort mit locations.delete zu löschen.

So löschen Sie einen Standort:

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

Standort anhand des Namens abrufen

Wenn viele Unternehmen mit Ihrem Konto verknüpft sind, möchten Sie möglicherweise einen einzelnen Standort abrufen. Sie können nach dem Namen des Unternehmens filtern, um mit locations.get einen bestimmten Standort abzurufen.

Verwenden Sie folgenden Code, um einen Standort anhand des Namens abzurufen. Sie müssen „readMask“ angeben, um bestimmte Felder abzurufen. :

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

Google Maps-Version zurückgeben

HTTP

Um die Google Maps-Version eines Standorts zurückzugeben, hängen Sie googleUpdated an die Anfrage-URL an, wie im folgenden Beispiel gezeigt:

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

Wenn keine Ergebnisse vorhanden sind, wird der HTTP-Statuscode 404 NOT FOUND zurückgegeben. Weitere Informationen dazu, wie Sie Google-Updates verwalten, finden Sie hier.

Speicherorte auflisten

Wenn Sie einen oder mehrere Standorte verwalten, können Sie alle mit Ihrem Konto verknüpften Standorte auflisten. Mit der accounts.locations.list API listen Sie alle Standorte auf, die einem Nutzer zugeordnet sind.

So listen Sie alle Standorte auf, die einem authentifizierten Nutzer direkt gehören oder von diesem direkt verwaltet werden:

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

Verwenden Sie für das Konto in der Anfrage-URL den Platzhalter '-', um Einträge mit indirekter Inhaberschaft einzubeziehen (Inhaberschaft oder Verwaltung über eine Gruppe):

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

Ergebnisse beim Auflisten von Standorten filtern

HTTP

Sie können Filter verwenden, um die Ergebnisse einzuschränken, die beim Aufrufen von accounts.locations.list zurückgegeben werden. Um eine Anfrage zu filtern, hängen Sie einen Filterausdruck an die Basis-URL an, wie in diesem Beispiel gezeigt:

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

Einfache Abfragesyntax

Eine Einschränkung hat die folgende Syntax: <field><operator><value>, wobei der Operator entweder EQUALS (=) oder HAS (:) ist. Die Operatoren EQUALS (=) und HAS (:) sind für alle Felder außer locationName äquivalent (siehe Tabelle unten).

Anführungszeichen werden als "%22" und Leerzeichen als Pluszeichen (+) codiert.

Sofern nicht anders angegeben, sind alle Vergleiche Tokenvergleiche, bei denen die Groß-/Kleinschreibung nicht berücksichtigt wird. „4 drive“ würde z. B. mit „4, Liguster Drive“ übereinstimmen.

Mehrere Felder in einer Filterabfrage kombinieren

Die API ermöglicht das Verbinden aller Feldeinschränkungen mit UND. Beim Keyword OR müssen jedoch alle Einschränkungen für dasselbe Feld gelten. Beispiel: locationName=A OR labels=B ist nicht zulässig.

Beispiel

Das folgende Beispiel zeigt einen Filterausdruck, mit dem alle Standorte mit dem Namen „Pepé Le Pew“ zurückgegeben werden. Es werden Kategorien für „french_restaurant“ oder „european_restaurant“ und das Label „newly open“ angezeigt.

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

Nach Entfernung oder Konto suchen

Das folgende Beispiel zeigt, wie Sie nach Standorten innerhalb einer bestimmten Entfernung von einem geografischen Punkt suchen können:

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

So filtern Sie Standorte im Umkreis von 1.000 Meilen um Boulder, Colorado, USA:

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

Liste aller unterstützten Filterfelder

Im Folgenden finden Sie eine vollständige Liste aller Felder, die zum Filtern verwendet werden können:

Fields Beschreibung und Beispiel
Felder für den Stringabgleich
title

Der tatsächliche Name des Unternehmens

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=title:"Bajis" (entspricht jedem Standortnamen mit „Bajis“ als Teilstring)

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=title="Bajis" (entspricht jedem Standortnamen mit „Bajis“ als Token/Wort)

categories

Die Kombination aus der primären Kategorie und den zusätzlichen Kategorien. „gcid:“ muss weggelassen werden. Wenn es mehrere Kategorien gibt, stimmt dieser Filter überein, wenn mindestens eine Kategorie diesem Muster entspricht.

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

phone_numbers.primary_phone

Die primäre Telefonnummer im E.164-Format (z. B. „+491234567890“).

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

storefront_address.region_code

CLDR-Regionscode des Landes bzw. der Region der Adresse

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

storefront_address.administrative_area

Die höchste Verwaltungseinheit, die für Postadressen eines Landes oder einer Region verwendet wird

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

storefront_address.locality

Stadt/Ort der Adresse

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

storefront_address.postal_code

Die Postleitzahl der Adresse

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

metadata.place_id

Wenn dieser Standort bestätigt wurde und mit Google Maps verknüpft ist bzw. dort angezeigt wird, entspricht dieses Feld der Orts-ID des Standorts

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

openInfo.status

Gibt an, ob der Standort derzeit geöffnet ist (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

Eine Sammlung frei definierbarer Strings, mit denen Sie Ihr Unternehmen taggen können. Im Gegensatz zu allen anderen Feldern muss dieser Wert genau mit einem vollständigen Label (einschließlich Groß- und Kleinschreibung) und nicht nur mit einem Token übereinstimmen. Beispiel: Wenn das Label „XX YY“ ist, stimmen weder „XX“ noch „xx yy“ überein.

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

storeCode

Externe Kennung für diesen Standort, die innerhalb eines bestimmten Kontos eindeutig sein muss

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

Funktionen
distance

Damit können Sie nach der Entfernung des Standorts von einem geografischen Punkt filtern.

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

Nach Abfragefeld sortieren

Sie können die Ergebnisse in aufsteigender oder absteigender Reihenfolge nach dem Namen des Unternehmens oder dem Geschäftscode sortieren. Mehrere Sortierkriterien werden im orderBy-String durch Kommas getrennt, wie im folgenden Beispiel gezeigt:

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

Standort korrigieren

Verwenden Sie die My Business Business Information API, um ein oder mehrere Felder für einen Standort mit locations.patch zu aktualisieren.

Verwenden Sie folgenden Code, um ein oder mehrere Felder für einen Standort zu ändern:

HTTP

Fügen Sie die Felder und aktualisierten Werte mit dem Standortfeld hinzu und verwenden Sie eine durch Kommas getrennte Liste aktualisierter Felder als Wert für fieldMask.

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