ビジネス情報を管理する

このチュートリアルでは、位置情報を作成、編集する方法について説明します。My Business Business Information API では、次のことができます。

ビジネス情報は Google 広告で使用できますが、Google 検索や Google マップに表示されるようにするには、オーナー確認を行う必要があります。ビジネス情報は accounts.locations コレクションで表されます。

始める前に

My Business Business Information API を使用するには、事前にアプリケーションを登録し、OAuth 2.0 の認証情報を取得する必要があります。My Business Business Information API のご利用方法について詳しくは、基本設定をご覧ください。

ビジネス情報を作成する

My Business Business Information API では、accounts.locations.create を使って新しいビジネス情報を作成できます。

ビジネスを作成するには、以下を使用します。

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

ビジネス情報を削除する

My Business Business Information API で locations.delete を使用すれば、ビジネス情報を削除できます。

ビジネス情報を削除するには、次のように記述します。

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

名前を指定してビジネス情報を取得する

多くのビジネスがアカウントに関連付けられている場合は、1 つのビジネス情報を取得することをおすすめします。locations.get を使用すると、ビジネス名でフィルタして特定のビジネス情報を取得できます。

名前でロケーションを取得するには、次のコマンドを使用します。特定のフィールドを取得するには、readMask を指定する必要があります。:

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

Google マップ バージョンを返す

HTTP

ビジネス情報の Google マップ バージョンを返すには、次の例のようにリクエスト URL に googleUpdated を追加します。

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

結果がない場合は、404 NOT FOUND HTTP ステータス コードが返されます。Google による変更の管理について詳しくは、こちらをご覧ください。

ロケーションの一覧表示

1 つ以上のビジネス情報を管理している場合は、アカウントに関連付けられているすべてのビジネス情報を一覧表示できます。特定のユーザーに関連付けられているすべてのビジネス情報のリストを取得するには、accounts.locations.list API を使用します。

認証されたユーザーが直接所有または管理しているすべてのビジネスを一覧表示するには、次のコマンドを使用します。

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

リクエスト URL のアカウントには、'-' ワイルドカードを使用して、間接的に所有または管理されている(グループが所有または管理している)リスティングを含めます。

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

ビジネス情報のリスト結果を絞り込む

HTTP

フィルタを使用すると、accounts.locations.list を呼び出したときに返される結果を制限できます。 リクエストをフィルタするには、次の例に示すように、ベース URL にフィルタ式を追加します。

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

基本的なクエリ構文

制限の構文は <field><operator><value> で、演算子は EQUALS(=)または HAS(:)のいずれかです。EQUALS(=)と HAS(:)演算子は locationName を除くすべてのフィールドで同等です(以下の表を参照)。

引用符は「%22」、スペースはプラス記号(+)としてエンコードされます。

特に明記されていない限り、すべての比較は大文字と小文字を区別しません。たとえば、「4 drive」は「4, Privet Drive」に一致します。

フィルタクエリで複数のフィールドを結合する

API を使用すると、AND ですべてのフィールド制限を結合できます。ただし、OR キーワードに関しては、すべての制限を同じフィールドに適用する必要があります。たとえば、locationName=A または labels=B は使用できません。

次の例は、「Pepé Le Pew」という名前のすべての場所を返すフィルタ式を示しています。「french_restaurant」または「european_restaurant」のカテゴリと、「新規営業」のラベルが表示されます。

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

距離またはアカウントを指定して検索する

次の例は、ある地点から一定の距離内にある場所を検索する方法を示しています。

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

米国コロラド州ボルダーから 1, 000 マイル以内のビジネス情報をフィルタするには:

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

サポートされているすべてのフィルタ フィールドのリスト

フィルタリングに使用できるすべてのフィールドの一覧を以下に示します。

フィールド 説明と例
文字列照合フィールド
title

ビジネスの実際の名前

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=title:"Bajis" (部分文字列として「Bajis」を使用する任意のビジネス名に一致)

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=title="Bajis"(トークン/単語として「Bajis」を使用する任意のビジネス名に一致)

categories

メインカテゴリと追加カテゴリの組み合わせ。 「gcid:」は省略する必要があるので注意してください。複数のカテゴリがある場合、少なくとも 1 つのカテゴリがこのパターンに一致する場合に、このフィルタが一致します。

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

phone_numbers.primary_phone

E.164 形式のメインの電話番号(例: +441234567890)。

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

storefront_address.region_code

住所の国/地域の CLDR リージョン コード

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

storefront_address.administrative_area

国または地域の住所の最上位の行政区画。

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

storefront_address.locality

住所の市区町村部分

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

storefront_address.postal_code

住所の郵便番号

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

metadata.place_id

ビジネスのオーナー確認が済んでおり、Google マップに関連付けられているか表示されている場合は、ビジネスのプレイス ID と同じ値になります。

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

openInfo.status

ビジネスが現在営業しているかどうかを表します(OPENCLOSED_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

ビジネスにタグを付けられるようにするための自由形式の文字列のコレクション。他のすべてのフィールドとは異なり、この値は、トークンだけでなく、大文字と小文字の区別も含めた完全なラベルと完全に一致する必要があります。たとえば、ラベルが「XX YY」の場合は、「XX」も「xx yy」も一致しません。

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

storeCode

このビジネスの外部識別子。アカウント内で一意である必要があります。

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

関数
distance

地点からの距離に基づいてフィルタできます。

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

クエリ フィールドで並べ替え

検索結果は、ビジネス名または店舗コードで昇順または降順で並べ替えることができます。並べ替え基準が複数ある場合は、次の例のように、orderBy 文字列内でカンマで区切ります。

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

ビジネス情報を修正する

My Business Business Information API を使用すると、locations.patch を使ってビジネス情報の項目を更新できます。

ビジネス情報の項目を変更するには、次のように記述します。

HTTP

場所フィールドを指定してフィールドと更新後の値を追加し、fieldMask の値として更新フィールドのカンマ区切りリストを使用します。

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