この記事について
この記事について
この記事は、生成AIを活用した自動生成フローで作成しています。Google Search Console APIの公式一次情報を2026年9月19日時点で確認し、検索実績の取得、サイトマップ管理、URL検査を「何のための部品か」から初心者向けに整理しています。情報確認基準日:2026年9月19日
GoogleのAPI、認証方式、利用条件、URLは変更されることがあります。利用時は記事末尾のGoogle公式リンクも確認してください。
まず一言でいうと
Search Console APIは、Google検索で自分のサイトがどう見つけられているかを、プログラムから取得・確認するための窓口です。
Search Consoleの管理画面を人が開いて確認する代わりに、Pythonなどから同じ種類の情報を定期取得してCSVや分析処理へ渡せます。ただし、検索結果への掲載順位を自由に変更したり、普通の記事を強制的にGoogleへインデックス登録したりするAPIではありません。
Google全体ではどこにいる?
| 観点 | 位置づけ |
|---|---|
| 大分類 | Google Search / Webサイト運営 |
| 分類 | 検索パフォーマンス・インデックス確認API |
| 大きな目的 | サイトがGoogle検索で発見・クロール・表示される状態を把握し改善する |
| このAPIの役割 | Search Consoleのデータや一部操作を自動処理へ渡す「接続部品」 |
| 一緒に使うもの | Search Console、Sitemap、Google Analytics、必要に応じBigQuery等 |
| 主な利用者 | サイト運営者、SEO担当、IT管理者、開発者 |
flowchart LR U[利用者がGoogle検索] --> G[Google Search] G --> SC[Search Console] SC --> API[Search Console API] API --> SA[Search Analytics] API --> SM[Sitemaps] API --> UI[URL Inspection] SA --> A[CSV・分析・ダッシュボード] UI --> A
全体→部品で見ると、Search Consoleが検索とサイトの状態を蓄積・表示する場所で、Search Console APIはその情報を自動処理へ取り出す部品です。
何ができる?
| 機能 | できること | 実務例 |
|---|---|---|
| Search Analytics | 検索トラフィックを条件指定して取得 | 記事別のクリック数・表示回数を毎日集計 |
| Sitemaps | サイトマップ情報の取得・管理 | 登録済みサイトマップの状態確認 |
| Sites | Search Consoleプロパティ情報を扱う | 管理対象サイトを確認 |
| URL Inspection | Google Index上でURLがどう認識されているか調べる | 公開記事がインデックス対象として認識されているか確認 |
初心者向け用語
APIは、画面を人が操作する代わりに、別のプログラムから機能やデータを利用するための窓口です。
プロパティは、Search Consoleで管理するWebサイトの単位です。URLプレフィックス型とドメイン型があり、ドメイン型は sc-domain:example.com のように表現されます。
dimension(ディメンション)は、データをどの切り口で分けるかという意味です。たとえば「日付」「検索クエリ」「ページ」「国」「デバイス」などです。
Search Analyticsは「検索された結果」を分析する
Search Analyticsでは、日付、クエリ、ページ、国、デバイスなどを組み合わせ、クリック数や表示回数などを取得できます。
ただしGoogle公式リファレンスでは、内部制限のためすべての行が必ず返るわけではなく、上位行が返されると説明されています。APIだから検索ログを完全に全件取得できる、と考えないことが重要です。
認証はどう流れる?
Search Consoleの非公開ユーザーデータを読むにはOAuth 2.0による認可を使います。
OAuth 2.0は、Googleアカウントのパスワードをアプリへ渡す代わりに、「このアプリにはSearch Consoleを読むことを許可する」と限定した権限を与える仕組みです。
sequenceDiagram participant User as 利用者 participant App as Python等のアプリ participant Google as Google認証 participant SC as Search Console API User->>App: データ取得を開始 App->>Google: 必要な権限を要求 Google->>User: 許可内容を表示 User->>Google: 許可 Google-->>App: アクセス用の認証情報 App->>SC: 認証付きでAPI要求 SC-->>App: 許可されたSearch Consoleデータ
読み取り中心なら webmasters.readonly Scopeを検討できます。Scopeとは「アプリにどこまで許可するか」を表す権限範囲です。
Google Cloud Projectは、APIを有効化しOAuthクライアント等を管理するために使います。認証できても、利用者または処理主体が対象Search Consoleプロパティへの権限を持っていなければデータは取得できません。
Pythonで安全に試す最小例
以下は、認証済みの creds がすでにある前提で、読み取りだけを行う例です。実サイトや秘密情報はコードへ直書きしません。
from googleapiclient.discovery import build
service = build("searchconsole", "v1", credentials=creds)
request = {
"startDate": "2026-09-01",
"endDate": "2026-09-07",
"dimensions": ["date", "query"],
"rowLimit": 1000,
}
response = service.searchanalytics().query(
siteUrl="sc-domain:example.com",
body=request,
).execute()
for row in response.get("rows", []):
print(row["keys"], row.get("clicks"), row.get("impressions"))
ここを見る: rows が返り、日付・検索語とクリック数・表示回数が表示されるか確認します。
成功条件: 認証エラーや権限エラーではなく、対象期間の行を取得できることです。
1か所変えるなら: dimensions を ["date", "page"] に変えると、検索語ではなくページ単位で見る意味を体験できます。
実サイトのURL、検索クエリ、ページURLをGitHubへ保存するときは、公開してよい情報か確認してください。
仕事ではどう使う?
一般利用者・事務職
毎日管理画面を開いて数字を書き写す代わりに、定型レポート用データを自動取得できます。たとえば「先週表示回数が増えたページ」を一覧にして記事改善会議の材料にできます。
IT管理者・サイト管理者
複数プロパティの確認、サイトマップ状態の点検、URL Inspection結果の収集など、運用確認を標準化できます。OAuth ScopeとSearch Console側の権限を必要最小限にすることも管理上重要です。
開発者
Search AnalyticsをGA4等のデータと結合し、「検索で表示された→クリックされた→サイト内で読まれた」という流れを独自ダッシュボードへ組み込めます。APIの上限やデータ特性を前提に設計します。
URL InspectionとIndexing APIを混同しない
URL Inspection APIは、指定URLがGoogle Indexでどう認識されているかを調べるためのものです。Search Analyticsのアクセス実績とも別物です。
また、GoogleのIndexing APIは一般的な全Webページを自由に即時登録する仕組みではありません。Google Search Centralの現行資料では、主に JobPosting を持つ求人ページや BroadcastEvent を伴うライブストリームページについて案内されています。通常の記事ではサイトマップや通常のクロール・Search ConsoleのURL検査を適切に使います。
Microsoftを知っている人なら
Search Console APIとMicrosoft Graphは1対1の対応製品ではありません。
| 観点 | Search Console API | Microsoft Graph |
|---|---|---|
| 主目的 | Google検索とサイトの状態・検索実績 | Microsoft 365等の組織データへの統合API |
| 対象 | Search Consoleプロパティ | Users、Mail、Calendar、Filesなど幅広い |
| 共通点 | OAuthで権限を限定しプログラムからデータ取得できる | OAuthで権限を限定しプログラムからデータ取得できる |
| 理解のコツ | 「Google検索運用専用のAPI」 | 「Microsoftクラウド全体への統合窓口」 |
Microsoft経験者は「GraphのSearch Console版」と完全対応させるより、Google検索運用という特定領域のAPIと理解する方が正確です。
セキュリティ
OAuth Client Secret、access token、refresh tokenをGitHubへ保存しない
Service Account keyを公開しない
Search Consoleプロパティの権限とOAuth Scopeを必要最小限にする
CSVへ実メールアドレスや不要な識別子を残さない
APIのrawレスポンスをそのまま公開リポジトリへ置かない
書き込み系操作を自動化する前に、まず読み取り処理で対象と権限を確認する
Papandaで触ってわかる:Search Console APIをCSVへ
見える成果物:検証用データまたは安全な取得結果をCSV化し、query/page/date等をExcelで開ける。 Daily Codeは読み取り処理とCSV整形を分離し、PowerShell/Excel Power Query側はダミーCSVでも再現できるようにします。サイトURLや個人識別子を公開fixtureへ固定しません。
結局どういうサービス?
Search Console APIは、Google検索における自分のサイトの状態や検索実績を、手作業ではなくプログラムで扱うための部品です。
最初に試すなら、Search Analyticsを読み取り専用で取得し、日付やページ単位のクリック数・表示回数を見るところから始めると役割を理解しやすくなります。インデックス状態を調べたいときはURL Inspection、サイトマップ管理ならSitemapsというように、目的ごとにAPI機能を使い分けます。
