Mit Standortdaten arbeiten

In diesem Tutorial erfahren Sie, wie Sie Standortdaten erstellen und bearbeiten. Die My Business Business Information API bietet Ihnen 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. Für Standortdaten werden die Felder von accounts.locations verwendet.

Hinweis

Sie können die My Business Business Information API erst verwenden, nachdem Sie Ihre Anwendung registriert und OAuth 2.0-Anmeldedaten abgerufen haben. Weitere Informationen zu den ersten Schritten mit der My Business Business Information API finden Sie unter Grundlegende Einrichtung.

Standort erstellen

Anhand von accounts.locations.create können Sie mit der My Business Business Information API 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 nutzen, um einen Standort mit locations.delete zu löschen.

Verwenden Sie folgenden Code, um einen Standort zu löschen:

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

Standort anhand des Namens abrufen

Mit Ihrem Konto sind viele Unternehmen verknüpft? Dann möchten Sie unter Umständen einen bestimmten Standort abrufen. Sie können nach dem Namen des Unternehmens filtern, um einen bestimmten Standort mit locations.get abzurufen.

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

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

Google Maps-Version zurückgeben

HTTP

Wenn Sie die Google Maps-Version eines Standorts zurückgeben möchten, 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 zur Verwaltung von Google-Updates finden Sie hier.

Standorte auflisten

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

So listen Sie alle Standorte auf, deren Inhaber ein authentifizierter Nutzer ist oder die direkt von einem authentifizierten Nutzer 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 auch Einträge aufzunehmen, die indirekt einem Nutzer gehören (Inhaberschaft oder Verwaltung über eine Gruppe):

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

Ergebnisse beim Auflisten von Standorten filtern

HTTP

Mithilfe von Filtern können Sie die Ergebnisse eingrenzen, die Sie nach Aufruf von accounts.locations.list erhalten. Zum Filtern einer Anfrage 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

Einschränkungen haben die Syntax <field><operator><value>, wobei der Operator entweder EQUALS (=) oder HAS (:) lautet. Die Operatoren EQUALS (=) und HAS (:) bewirken in allen Feldern außer locationName das Gleiche (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. So wird beispielsweise „4 drive“ genau wie „4, Privet Drive“ behandelt.

Mehrere Felder in einer Filterabfrage kombinieren

Über die API können alle Feldeinschränkungen mit AND verbunden werden. Bei OR müssen sich aber alle Einschränkungen auf dasselbe Feld beziehen. Zum Beispiel ist locationName=A OR labels=B nicht zulässig.

Beispiel

Im folgenden Beispiel sehen Sie einen Filterausdruck, der alle Standorte mit dem Namen „Pepé Le Pew“ zurückgibt. 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

Suche nach Entfernung oder Konto

Im folgenden Beispiel sehen Sie, 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 rufen Sie alle Standorte in einem Umkreis von 1.000 Meilen um Boulder, Colorado, USA ab:

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

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

Felder 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 und den zusätzlichen Kategorien. „gcid:“ muss weggelassen werden. Sind mehrere Kategorien vorhanden, sind die Filterkriterien erfüllt, 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

Der CLDR-Regionscode des Landes/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 größte 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

Der 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: Lautet das Label „XX YY“, stimmt 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 anhand 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

Sie können die My Business Business Information API verwenden, um ein Feld oder mehrere Felder für einen Standort mit locations.patch zu aktualisieren.

Gehen Sie folgendermaßen vor, um ein Feld oder mehrere Felder für einen Standort zu ändern:

HTTP

Geben Sie die Felder und aktualisierten Werte mit dem Feld „location“ an und verwenden Sie als Wert für fieldMask eine durch Kommas getrennte Liste aktualisierter Felder.

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