Search Console APIとSEO

コードでGoogle Search Consoleデータを取得・管理する方法 — Search Analytics、URL Inspection、Sitemaps、Sites API、OAuth、割り当て、そしてBigQueryを使うべき場合について。

初回公開:2026年6月23日 · 最終更新:2026年8月3日 · Advanced
言語

ウェブサイトプロパティの場合、Google Search Console APIはOAuth 2,0を通じてSearch Analytics、URL Inspection、Sitemaps、Sitesリソースを公開します。Search Analyticsはリクエストごとに最大25 000行の上位行を返します。URL Inspectionはプロパティごとに1日2 000クエリ、1分あたり600回に制限されています。Search Consoleには現在、Instagram、TikTok、X、YouTubeのプラットフォームプロパティもありますが、Googleの現在のプラットフォームドキュメントではレガシーAPI識別子やエンドポイントのサポートが指定されていないため、このガイドではそれらのAPI互換性を主張しません。

TL;DR — Search Console APIは、webmaster-tools/v1配下の4つのREST APIです。Search Analytics、URL Inspection、Sitemaps、Sitesの4つで、すべてOAuth 2,0、すべて検証済みプロパティのみにスコープされます。Search Analyticsはリクエストごとに1〜25 000行(デフォルトは1 000行)を返しますが、「すべてのデータ行を保証するものではなく、上位の行を返す」ため、大規模な完全性を求める場合はBigQuery一括データエクスポートに移行します。URL Inspectionはサイトごとに2 000 QPD / 600 QPMでハードキャップされています。この計算が大規模なインデックス監視の制約となります。

Evidence for this claim The Search Console API exposes Search Analytics, Sitemaps, Sites, and URL Inspection operations. Scope: Current Search Console API surface. Confidence: high · Verified: Google Developers: Search Console API Evidence for this claim Search Analytics results are bounded by API quotas and may omit some rows; the API does not guarantee every data row. Scope: Current Search Analytics query behavior and quotas. Confidence: high · Verified: Search Console API: Search Analytics query

このAPIガイドはウェブサイトプロパティを対象としています。Googleが識別子とエンドポイントの契約を文書化するまで、Sites、Search Analytics、URL Inspection、Sitemapsの各エンドポイントがInstagram、TikTok、X、YouTubeのプラットフォームプロパティをサポートしていると想定しないでください。

4つのAPIの概要

Google自身によるAPIの説明は次のとおりです。「Search Consoleで管理しているプロパティのプロパティとサイトマップを表示、追加、削除し、Google検索結果データの高度なクエリを実行し、個々のページをテストすることができます。」 これは、webmaster-tools/v1 の下にある4つのリソースに明確に対応しています。

  • Search Analytics API — パフォーマンスレポートをプログラムで操作: クリック数、インプレッション数、CTR、ディメンション(クエリ、ページ、国、デバイス、検索表示、日付、時間)ごとの掲載順位。
  • URL Inspection API — 単一URLのインデックスステータス。URL検査ツールのプログラム版。
  • Sitemaps API — サイトマップの一覧表示、取得、送信、削除。
  • Sites API — 検証済みプロパティの一覧表示、追加、削除。
Evidence for this claim The Search Console API exposes Search Analytics, Sitemaps, Sites, and URL Inspection operations. Scope: Current Search Console API surface. Confidence: high · Verified: Google Developers: Search Console API

このAPIは、インターフェースで既に使用している機能(パフォーマンスレポートやURL検査ツール)の多くを、スクリプトで操作できるエンドポイントとして公開しています。ただし、完全に1対1で対応しているわけではありません。APIはUIとの完全な同等性を保証していません(たとえば、URL検査のライブテストはUIのみで、後述します)。また、APIアクセスや自動化自体が、インデックス、ランキング、トラフィック診断、AI検索での可視性を保証するものではありません。

認証: OAuth 2,0、2つのスコープ、検証済みプロパティのみ

APIキーはありません。すべての呼び出しはOAuth 2,0です。Googleは*「Google Search Console APIへのすべてのリクエストは、認証されたユーザーによって承認される必要があります」*と明示しています。Google Cloudでアプリを登録し、スコープをリクエストし、短期間有効なアクセストークンを取得します。スコープは2つあります。

  • https://www.googleapis.com/auth/webmasters — 読み取り/書き込み。
  • https://www.googleapis.com/auth/webmasters.readonly — 読み取り専用。

サーバー間の自動化(夜間のレポートジョブ、インデックスモニター)では、サービスアカウントにプロパティへのアクセスを許可し、インタラクティブな同意フローをスキップします。

ウェブサイトプロパティの場合、ここでも2つのプロパティ識別子形式が重要です。URLプレフィックスプロパティは完全なプロパティURLとして渡されます(Google自身の例は http://www.example.com/ です)。ドメインプロパティは sc-domain:example.com 形式を使用します。Search Consoleでプロパティが検証されている方法に一致する形式を渡す必要があります。いずれの場合も、サービスアカウント(またはユーザー)には、その正確なプロパティへのアクセスが許可されている必要があります。これは所有権のバイパスや、アカウント上のすべてのプロパティへの包括的な許可ではありません。

そして、誰もがつまずくゲートは次のとおりです。「APIを使用してアクセスするGoogle Search Consoleアカウントには、適切なアクセス権(所有者、フル、読み取り)が必要です。」 検証されていないプロパティに対してAPIを呼び出すと、何も返されません。必ずしも気付くエラーではなく、単に空のデータが返されるだけです。

Search Analytics API — パフォーマンスレポートを大規模に

利便性ではなく上限から始めましょう。Google自身の注意書きは次のとおりです。「APIはSearch Consoleの内部的な制限に拘束され、すべてのデータ行を返すことを保証するものではなく、上位の行を返すものです。」 ページネーションは、その上位行リストをどこまでページングできるかを拡張しますが、上限をなくすわけではありません。すべての行が必要な場合は、より大きな rowLimit ではなく、BigQuery一括エクスポート(後述)を利用するのが適切です。

その上限内であれば、これが最も多くの人が求めるものです。インターフェースよりも優れている理由は、rowLimit パラメータ: 「[オプション; 有効な範囲は1〜25,000; デフォルトは1,000]」 です。インターフェースのエクスポートは約1 000行で上限に達しますが、APIはリクエストごとに最大25 000行を提供し、startRow でそれを超えてページングできます。クエリのロングテールがあるサイトでは、データの上位だけを見るのと、より多くを見るのとの違いがあります。それでもすべてではありません。

さらに、結果を左右する要素が2つあります。まず、dataState が鮮度を制御します。final(デフォルト)は確定済みデータのみを返し、all は新しく収集されたデータを含み、hourly_all は明示的に部分的な時間別の内訳を提供します。レスポンスのメタデータは first_incomplete_date または first_incomplete_hour をフラグし、Google はその時点以降の値は変更される可能性があると注記しています。次に、Search Analytics の割り当ては単一の数値ではありません。使用量制限ページでは、これらを負荷制限(10分単位と1日単位で測定されるリソースベースの許容量で、日付範囲が広いほど、ディメンションが多いほど、フィルタリングが重いほど、消費が速くなります)と、後述の QPS/QPM/QPD リクエストレート制限に分割しています。リクエストレートの上限に達する前に、負荷の上限に達する可能性があります。

URL Inspection API — そして実際に制約となる割り当て

URL Inspection API は、「提供された URL のインデックス済み、またはインデックス可能なステータスを表示します。現在、Google インデックス内のバージョンのステータスのみが利用可能です。ライブ URL のインデックス可能性をテストすることはできません。」 この最後の節は、技術的な問題ではなく、実際のスコープ制限です。インターフェースの URL Inspection ツールは、現在存在するページに対してライブテストを実行できますが、API は Google がすでにインデックスしているバージョンのみを報告できます。API を使用して、多数の URL にわたるインデックスカバレッジの監視を構築してください。UI のライブテストの代わりとしてではなく。

ここで計算が重要になります。サイトごとに、1日あたり2 000クエリ、1分あたり600クエリを利用できます。(プロジェクトごとの上限ははるかに高く、1日あたり10 000 000、1分あたり15 000ですが、サイトごとの上限が実際に影響します。)50 000 URL のサイトのインデックスステータスを監視したい場合、1日ですべてを検査することはできません。複数日にわたってバッチ処理とスケジュール設定を行うか、優先順位を付ける必要があります。この計算を行う投稿はほとんどなく、これは大規模なインデックス監視における最大の計画上の制約です。

対照的に、Search Analytics は寛大です(サイトごと、ユーザーごとに1 200 QPM)。他のリソース(Sitemaps、Sites)はユーザーごとに20 QPS / 200 QPM です。URL Inspection が厳しいものです。

Sitemaps および Sites API

Sitemaps API は、サイトマップの管理レイヤーです。「サイトのサイトマップを送信し」「このサイトからサイトマップを削除し」「特定のサイトマップに関する情報を取得し」「このサイトに送信されたサイトマップエントリ、またはサイトマップインデックスファイルに含まれるサイトマップエントリを一覧表示します。」 返されるサイトマップリソースには、pathlastSubmittedisPendingisSitemapsIndexlastDownloadedwarningserrorscontents 配列などのフィールドが含まれ、大規模なサイトマップの健全性を監査するのに便利です。

Sites API は、確認済みプロパティを一覧表示、追加、削除します。多数のプロパティを管理し、プログラムでプロビジョニングまたは監査したい場合に便利です。

代わりに BigQuery 一括エクスポートを使用する場合

大規模なサイトの場合、API のリクエストあたり25 000行、上位行のみというモデルが上限になります。Google の答えは、同じ形状のデータを返す5番目の API リソースではなく、別のスケジュールされたエクスポートパイプライン、つまり BigQuery への一括データエクスポートです。この選択は、「API A と API B」ではなく、プルとスケジュールされたプッシュの選択と考えてください。Google 自身の説明:「Search Console のパフォーマンスデータを BigQuery に毎日エクスポートするようにスケジュールし、そこでデータに対して複雑なクエリを実行したり、外部ストレージサービスにエクスポートしたりできます。一括データエクスポート機能を使用すると、匿名化されたクエリを除いて、プロパティで Search Console に利用可能なすべてのパフォーマンスデータを確認できます。」

これが決定ルールです:

  • インターフェースエクスポート — 約1 000行、迅速な一回限りの確認。
  • Search Analytics API — リクエストあたり最大25 000行、ページネーション、スクリプト可能。中程度のオンデマンド取得やダッシュボードに最適。
  • BigQuery 一括エクスポート — 利用可能なすべてのパフォーマンスデータ、毎日、行数上限なし。数万ページまたはクエリがある場合に適したツール。

どのツールも提供してくれないのは、匿名化されたクエリです。これはGoogleがプライバシーのために隠している検索語です。これは回避できるバグではなく、本当のギャップです。私はその規模を直接知っています。Ahrefsのブランドアンバサダーとして、非常に大規模なサイトサンプルにわたってAPIから利用可能なすべてのデータを取得し、Googleがクリックの大部分でキーワードを隠していることを発見した調査の発表を支援しました。その後、これをAhrefs Rank Trackerに組み込みました。GSCデータの完全な履歴、匿名化されたクエリに送られるクリックの割合、そして自社の数値から構築したカスタムCTRカーブです。誰かがAPIが「すべてのデータ」を返すと言ったとき、その匿名化された部分が正直な但し書きです。

一般的なユースケース

  • 自動レポート — Sheetsやデータウェアハウスへのスケジュール取得。
  • BIダッシュボード — Performanceデータの上にLooker StudioやBigQueryを構築。
  • 大規模なインデックス/カバレッジ監視 — URL Inspectionを2 000件/日のクォータ内でバッチ処理。
  • CTRカーブ構築 — 自社データからポジション別の期待CTRをモデル化。
  • 異常アラート — クリック/インプレッションの低下を自動的にフラグ付け。

これはサードパーティツールの動作方法でもあります。AhrefsやLooker Studioコネクタが「Search Consoleと統合」するとき、それらはあなたの代わりにこれらの同じAPI(そしてますますBigQueryエクスポート)を呼び出しています。

Add an expert note

Pin an expert quote

New person? Create their unclaimed profile at /admin/experts/ → Pin a quote first.