Business Profile Performance API がリリースされました。移行作業が必要です。
サポート終了スケジュールと、サポートが終了した古い v4 API から新しい v1 API に移行する手順をご確認ください。
こちらのアンケートにご回答いただき、サポート対象国に関して提供可能な場所、メニュー、料理の属性について理解を深め、食品のエクスペリエンス向上にご協力ください。

位置情報の使用

コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。

このチュートリアルでは、位置情報を作成、編集する方法を説明します。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}

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

ロケーションの一覧表示

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

特定の認証済みユーザーに関するすべてのビジネス情報のリストを取得するには、次のように記述します。

HTTP
GET
ttps://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/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=Alabels=B は許可されません。

次の例は、「&Pepé Le Pew."」という名前のすべてのビジネスを返すフィルタ式を示しています。「french_restaurant"」または「european_restaurant,"」のカテゴリと「newly open」のラベルが表示されます。

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