Google Business Profile API を使用して Location(店舗)の一覧を取得する方法

Google Business Profile API を使用して Location(店舗)の一覧を取得する方法

Google Business Profile API を利用すると、アカウントに紐づいている全ての Location(店舗)を取得 することができます。
本記事では、Bubble の API Connector を使って、Google の Location リストを取得する方法 を詳しく解説します。

アクセストークンの取得

Google Business Profile(GBP) APIを使用するには、まずOAuth2.0認証を行いアクセストークンを取得する必要があります。
アクセストークンを取得する方法は以下の記事で解説しています。

関連記事

Google Calendar API や Google Drive API、Gmail API などの Google アカウントに紐づいたサービスを Bubbleで利用するには、OAuth 2.0 を使用した認証が必要です。本記事では[…]

BubbleでGoogle OAuth 2.0 APIを設定する方法

また、認証の際には以下のスコープを追加してください。

https://www.googleapis.com/auth/business.manage

必須の API & 設定

Google 口コミを操作するには、以下の API を有効にする必要があります。

API名用途申請の有無
Business Profile API店舗取得必要

Google Cloud Console で上記の API を有効化し、OAuth 2.0 認証を設定してください。

サイドメニューの「APIとサービス」→「ライブラリ」から使用したいGoogle APIを検索し、APIの詳細画面でそのAPIを有効化します。

Location の一覧を取得する

Google Business Profile API を使って、アカウントに紐づいているすべてのLocation(店舗)を取得します。

メソッドとエンドポイント

メソッドGET
エンドポイントhttps://mybusiness.googleapis.com/v4/[accountId]/locations?read_mask=[readMask]
Use asAction/Data

URL Parameters
この項目はエンドポイントを入力すると表示されます

accountIdアカウント情報を取得した時のaccount.name
“accounts/*********” の形式
readMask必須。レスポンスで返されるフィールドを指定するリードマスク。
例:name,title
この例の場合、locationID(name)と店舗名(title)がレスポンスに含まれます。

Headers

AuthorizationBearer [アクセストークン]

アクセストークンについて
アクセストークンの有効期限は1時間です。期限が切れたアクセストークンを使用してAPIにアクセスしようとすると“401 UNAUTHENTICATED”のようなエラーレスポンスが返されます。
この際、再度アクセストークンを取得するためには「リフレッシュトークン」を使用して、アクセストークンを取得し直す必要があります。
詳細はこちら

Parameters

parametervalueallow blank説明
pageSize10(デフォルト)yes(省略可)一回の呼び出しあたりで取得するビジネス情報の数です(最大100・最小1・指定なしの場合10)。
pageToken取得したnextPageTokenyes(省略可)このAPIを実行した後、まだ未取得の店舗がある場合のレスポンスに含まれます。
初回は空白で設定

レスポンスの解説

レスポンス例

{  "locations": [ {"name": "locations/12341234","title": "〇〇カフェ" }  ]}
項目内容
locations.name各lcoartionのID
locations.title各locationの店舗・施設名
nextPageToken次のレビューリストを取得するためのトークン(未取得の店舗がある場合のみ表示されます)