Google Business Profile API(GBP API)を利用すると、Google マップや検索での 店舗(Location)のパフォーマンスデータ を取得できます。本記事では、Google API の getDailyMetricsTimeSeries
エンドポイントを使用し、Bubble の API Connector を使ってパフォーマンスデータを取得する方法 を解説します。
アクセストークンの取得
Google Business Profile(GBP) APIを使用するには、まずOAuth2.0認証を行いアクセストークンを取得する必要があります。
アクセストークンを取得する方法は以下の記事で解説しています。
Google Calendar API や Google Drive API、Gmail API などの Google アカウントに紐づいたサービスを Bubbleで利用するには、OAuth 2.0 を使用した認証が必要です。本記事では[…]
また、認証の際には以下のスコープを追加してください。
https://www.googleapis.com/auth/business.manage
店舗情報の取得
パフォーマンス情報を取得するには、事前にLocationのIDを取得しておく必要があります。
LocationIDを取得する方法は以下の記事を参考にしてください。
Google Business Profile API を利用することで、Bubble から Google マップに投稿された口コミを取得・編集・削除 することが可能です。本記事では、Bubble の API Connector を使って[…]
必須の API & 設定
Google 口コミを操作するには、以下の API を有効にする必要があります。
API名 | 用途 |
---|---|
Business Profile Performance API | パフォーマンス情報取得 |
Google Cloud Console で上記の API を有効化し、OAuth 2.0 認証を設定してください。
サイドメニューの「APIとサービス」→「ライブラリ」から使用したいGoogle APIを検索し、APIの詳細画面でそのAPIを有効化します。
Location のパフォーマンスデータを取得
Google Business Profile Performance API (businessprofileperformance.googleapis.com
) の fetchMultiDailyMetrics
を使用すると、日ごとのパフォーマンスデータを取得できます。
取得可能な指標(dailyMetric
)
指標 | 説明 |
---|---|
BUSINESS_FOOD_MENU_CLICKS | ビジネス プロフィールのメニュー コンテンツを表示または操作するためにクリックされた回数。 |
CALL_CLICKS | ビジネス プロフィールの通話ボタンがクリックされた回数。 |
BUSINESS_BOOKINGS | 「Google で予約」を介してビジネス プロフィールから行われた予約の数。 |
BUSINESS_DIRECTION_REQUESTS | ビジネス拠点へのルート リクエストがリクエストされた回数。 |
WEBSITE_CLICKS | ビジネス プロフィールのウェブサイトがクリックされた回数。 |
全ての指標を確認する際はGoogle Business Profile APIs リファレンスをご確認ください。
APIの設定
メソッドとエンドポイント
メソッド | GET |
エンドポイント | https://businessprofileperformance.googleapis.com/v1/[location] :fetchMultiDailyMetricsTimeSeries ?dailyMetrics=[dailymetric1] &dailyMetrics=[dailymetric2] &dailyMetrics=[dailymetric3] &dailyMetrics=[dailymetric4] &dailyMetrics=[dailymetric5] &dailyRange.start_date.year=[startYear] &dailyRange.start_date.month=[startMonth] &dailyRange.start_date.day=[startDate] &dailyRange.end_date.year=[endYear] &dailyRange.end_date.month=[endMonth] &dailyRange.end_date.day=[endDate] |
Use as | Action/Data |
URL Parameters
この項目はエンドポイントを入力すると表示されます
dailymetric* | 必須。上記の取得可能な指標のうち、必要なものを入力して下さい。 例:WEBSITE_CLICKSとCALL_CLICKSを取得したい場合 …:fetchMultiDailyMetricsTimeSeries ?dailyMetrics=WEBSITE_CLICKS &dailyMetrics=CALL_CLICKS &dailyRange.start_date.year…. |
startYear | 必須。データを取得する期間の開始年 |
startMonth | 必須。データを取得する期間の開始月 |
startDate | 必須。データを取得する期間の開始日 |
endYear | 必須。データを取得する期間の終了年 |
endMonth | 必須。データを取得する期間の終了月 |
endDate | 必須。データを取得する期間の終了日 |
dailyMetricsの指定について
dailyMetricsの指定は、dailyMetrics=WEBSITE_CLICKS,CALL_CLICKS
のような形では指定できません。
正しくはdailyMetrics=WEBSITE_CLICKS&dailyMetrics=CALL_CLICKS
のような形にしてください。
Headers
Authorization | Bearer [アクセストークン] |
アクセストークンについて
アクセストークンの有効期限は1時間です。期限が切れたアクセストークンを使用してAPIにアクセスしようとすると“401 UNAUTHENTICATED”のようなエラーレスポンスが返されます。
この際、再度アクセストークンを取得するためには「リフレッシュトークン」を使用して、アクセストークンを取得し直す必要があります。
詳細はこちら
Parameters
なし
レスポンスの解説
レスポンス例
{ "multiDailyMetricTimeSeries": [ {"dailyMetricTimeSeries": [ { "dailyMetric": "WEBSITE_CLICKS", "timeSeries": {"datedValues": [ {"date": {"year": 2025,"month": 1,"day": 1}, "value": "1" }, {"date": {"year": 2025,"month": 1,"day": 2}, "value": "3" }] } } { "dailyMetric": "CALL_CLICKS", "timeSeries": {"datedValues": [ {"date": {"year": 2025,"month": 1,"day": 1}, "value": "1" }, {"date": {"year": 2025,"month": 1,"day": 2}, "value": "3" }] } }] } ]}
項目 | 内容 |
---|---|
dailyMetricTimeSeries | 各dailyMetricの指標ごとのデータ |
dailyMetric | 指標の種類 |
timeSeries.datedValues | 日ごとのパフォーマンスデータ |
date | 日付(年・月・日) |
value | 指定日の指標の値 値がない場合は表示されません。 |