SEARCH CONSOLE API SETUP
Search Consoleデータ取得の準備|スプレッドシートとApps Scriptの設定
準備完了までの
4つの設定
01シートをコピー
02Cloudを接続
03OAuthを設定
04取得をテスト
設定の前に、
使うデータを整理しませんか?
Search Console、GA4、BigQueryをつなぎ、判断に使える計測環境を設計します。
所要時間の目安
約20〜30分
- Search Consoleを閲覧できるGoogleアカウント
- Google Cloudプロジェクトを作成できる権限
- 自分のGoogle Driveへコピーした配布シート
この記事では、Search Console APIの検索データをGoogleスプレッドシートへ取得するための準備を行います。配布シートのコピー、Apps ScriptとGoogle Cloudプロジェクトの接続、OAuth設定、初回認証までを順番に進めます。
始める前に確認すること
この手順は、下記のような用途を想定しています。
- 日付・国・クエリ・デバイスなどを組み合わせて確認したい
- CSVで保存し、別の分析ツールへ読み込みたい
- データベースを用意せず、Googleスプレッドシートで検索データを扱いたい
- 日次で検索データを保存したい
この配布シートについて:このテンプレートはOAuth2ライブラリとOAuthクライアントを使う構成です。Google APIへ接続するApps Scriptには、組み込みの認証トークンを使う別の実装方法もありますが、この記事では配布シートの構成を変更せずに設定します。
作業前に、次の点を確認してください。
- 対象サイトのSearch Consoleプロパティを閲覧できるGoogleアカウントで作業する
- Google Cloudの標準プロジェクトを新規作成、または編集できる
- 配布シートとApps Scriptを、不特定多数へ共有しない
標準Cloudプロジェクトへ切り替えたApps Scriptは、元のデフォルトプロジェクトへ戻せません。既存の運用中スクリプトではなく、コピーした配布シートで進めてください。
スプレッドシートをコピーする
Google Search Console RAW Data Exportを開き、ファイル > コピーを作成 から自分のGoogle Driveへ保存します。
コピー後のシートには、次の機能が含まれています。
- 指定期間の検索パフォーマンスを取得
- 日次バックアップ
- 取得結果をGoogle DriveへCSV保存
標準Cloudプロジェクトを用意する
Apps ScriptとスクリプトIDを確認する
コピーしたスプレッドシートで、拡張機能 > Apps Script を選びます。Apps Scriptエディタが開いたら、左側の歯車アイコン 「プロジェクトの設定」 を選び、スクリプトID を控えます。後ほどOAuthのリダイレクトURIで使用します。
画面は旧UIです。現在は「拡張機能 > Apps Script」から開きます。
現在は左側の「プロジェクトの設定」にスクリプトIDが表示されます。
Google Cloudプロジェクトを作成して接続する
Google Cloudコンソールで、このシート専用の標準Cloudプロジェクトを作成します。プロジェクトの 名前、英数字の プロジェクトID、数字だけの プロジェクト番号 は別の値です。Apps Scriptとの接続にはプロジェクト番号を使います。
- Google Cloudコンソールで対象プロジェクトの プロジェクト番号 を控えます。
- Apps Scriptへ戻り、左側の 「プロジェクトの設定」 を開きます。
- 「Google Cloud Platform(GCP)プロジェクト」 の 「プロジェクトを変更」 を選びます。
- プロジェクト番号を入力し、設定します。
現在は「プロジェクトの設定」から標準Cloudプロジェクトへ変更します。
Search Console APIを有効にする
Apps Scriptへ接続したCloudプロジェクトをGoogle Cloudコンソールで開きます。
APIとサービス > ライブラリを開きます。- Google Search Console API を検索します。
- APIの詳細画面で 「有効にする」 を選びます。
APIを有効にしたプロジェクトと、Apps Scriptへ接続したプロジェクトが同じであることも確認します。
OAuth同意画面とクライアントを設定する
OAuth同意画面を設定する
Google CloudコンソールでOAuth同意画面を設定します。画面によっては 「Google Auth Platform」 内に、ブランディング、対象、データアクセス、クライアントの項目が表示されます。
アプリ名とサポート用メールアドレスを入力し、利用者の範囲を設定します。個人利用や限定テストの場合は、実行するGoogleアカウントをテストユーザーへ追加してください。
OAuthクライアントを作成する
APIとサービス > 認証情報 > 認証情報を作成 > OAuthクライアントID を開きます。
- アプリケーションの種類:ウェブアプリケーション
- 名前:任意(例:Search Console Sheets)
- 承認済みのリダイレクトURI:
https://script.google.com/macros/d/{スクリプトID}/usercallback
{スクリプトID} は、先ほどApps Scriptのプロジェクト設定で確認した値へ置き換えます。
項目名や配置が変わっていても「OAuthクライアントID」を作成します。
作成後に表示される クライアントID と クライアントシークレット を控えます。
認証情報の扱い:クライアントシークレットを記事、チャット、公開リポジトリへ貼らないでください。この配布シートではApps Script内へ設定するため、スプレッドシートやスクリプトの編集権限を信頼できる人だけに限定します。漏えいした場合はCloudコンソールで認証情報を削除し、作り直してください。
Apps Scriptへ認証情報を設定する
Apps Scriptエディタで Variable.gs を開き、配布時の値を自分の認証情報へ置き換えて保存します。
var CLIENT_ID = 'YOUR_CLIENT_ID';
var CLIENT_SECRET = 'YOUR_CLIENT_SECRET';
入力後、YOUR_CLIENT_ID と YOUR_CLIENT_SECRET の文字が残っていないことを確認します。値の前後にある引用符は削除しません。
初回認証とテスト実行
スプレッドシートへ戻り、Search Console > List Account Sites を選びます。初回は、Apps Script自体の権限確認とSearch Console APIのOAuth認証が続けて表示されます。
- 自分がコピーしたスプレッドシートと、自分で作成したCloudプロジェクトであることを確認します。
- 実行するGoogleアカウントを選び、必要な権限を許可します。
- スクリプトが認証用URLを表示した場合は、URL全体を新しいタブで開きます。
- Search Consoleへのアクセスを許可し、スプレッドシートへ戻ります。
- もう一度
Search Console > List Account Sitesを実行します。
提供元を確認できないスクリプトで、警告画面を無条件に進めないでください。この手順では、自分でコピーした配布シートと、自分で作成・接続したCloudプロジェクトであることを確認してから許可します。
表示内容は現在のOAuth同意画面と異なる場合があります。
プロパティ一覧が 「Account Sites」 シートへ表示されたら準備完了です。
- 接続
Apps Scriptと対象の標準Cloudプロジェクトが接続されている - API
同じCloudプロジェクトでSearch Console APIが有効になっている - 取得
Account Sitesに閲覧可能なプロパティが表示されている
データの抽出条件や日次バックアップは、Search Consoleデータ取得・使い方編で設定します。
うまくいかないとき
- プロパティが表示されない:実行アカウントがSearch Consoleプロパティを閲覧できるか確認します。
- redirect_uri_mismatch:OAuthクライアントへ登録したURIと、スクリプトIDを含むURIが完全に一致しているか確認します。
- APIが無効と表示される:Apps Scriptへ接続したものと同じCloudプロジェクトでAPIを有効にしたか確認します。
- アクセスをブロックされた:OAuth同意画面の対象ユーザーまたはテストユーザー設定を確認します。
参照した公式情報
検索データを改善判断につなげる
取得項目、保存方法、レポート運用まで、現在の環境に合わせて整理します。