← Về thư mục
📄 / / workspace / claude-seo / skills / seo-google / references / search-console-api.md

Google Search Console API Reference

Table of Contents

  1. Search Analytics API
  2. URL Inspection API
  3. Sitemaps API
  4. Sites API

Search Analytics API

Endpoint: POST https://www.googleapis.com/webmasters/v3/sites/{siteUrl}/searchAnalytics/query

Request Body

Field Type Description
startDate string Required. YYYY-MM-DD format.
endDate string Required. YYYY-MM-DD format.
dimensions string[] query, page, country, device, date, searchAppearance
type string web (default), image, video, news, discover, googleNews
dimensionFilterGroups object[] Array of filter groups (see below)
aggregationType string auto (default), byPage, byProperty, byNewsShowcasePanel
rowLimit int 1-25000 (default: 1000)
startRow int Pagination offset (default: 0)
dataState string final (default), all, hourly_all

Dimension Filters

{
  "dimensionFilterGroups": [{
    "filters": [{
      "dimension": "query",
      "operator": "contains",
      "expression": "seo"
    }]
  }]
}

Operators: contains, equals, notContains, notEquals, includingRegex, excludingRegex - Regex uses RE2 syntax, max 4096 characters

Response

{
  "rows": [
    {
      "keys": ["seo tools", "https://example.com/tools"],
      "clicks": 150,
      "impressions": 5000,
      "ctr": 0.03,
      "position": 4.2
    }
  ],
  "responseAggregationType": "byPage"
}

Important Notes

Rate Limits


URL Inspection API

Endpoint: POST https://searchconsole.googleapis.com/v1/urlInspection/index:inspect

Request

{
  "inspectionUrl": "https://example.com/page",
  "siteUrl": "sc-domain:example.com",
  "languageCode": "en"
}

Response Fields

indexStatusResult:

Field Values
verdict PASS, FAIL, NEUTRAL, PARTIAL, VERDICT_UNSPECIFIED
coverageState Human-readable coverage description
robotsTxtState ALLOWED, DISALLOWED
indexingState INDEXING_ALLOWED, BLOCKED_BY_META_TAG, BLOCKED_BY_HTTP_HEADER
pageFetchState SUCCESSFUL, SOFT_404, BLOCKED_ROBOTS_TXT, NOT_FOUND, ACCESS_DENIED, SERVER_ERROR, REDIRECT_ERROR, ACCESS_FORBIDDEN, BLOCKED_4XX, INTERNAL_CRAWL_ERROR, INVALID_URL
lastCrawlTime ISO 8601 timestamp
googleCanonical URL Google selected as canonical
userCanonical URL declared canonical by the page
crawledAs DESKTOP, MOBILE

richResultsResult: Verdict + detected rich result types (e.g. Product, Breadcrumb, Review snippet, Event). Note: FAQPage and HowTo no longer produce rich results (FAQ retired 2026-05-07; HowTo retired 2023), so don't expect them as current rich-result types.

Rate Limits


Sitemaps API

Base: https://www.googleapis.com/webmasters/v3/sites/{siteUrl}/sitemaps

Method Endpoint Description
GET /sitemaps List all sitemaps
GET /sitemaps/{feedpath} Get specific sitemap
PUT /sitemaps/{feedpath} Submit a sitemap
DELETE /sitemaps/{feedpath} Delete a sitemap

Sitemap Resource

Field Description
path URL of the sitemap
lastSubmitted Last submission timestamp
isPending Whether processing is incomplete
isSitemapsIndex Whether this is a sitemap index
type sitemap, atomFeed, rssFeed, urlList, notSitemap
warnings Warning count
errors Error count
contents[] Array with type (web, image, video, news) and submitted count

Sites API

Base: https://www.googleapis.com/webmasters/v3/sites

Method Endpoint Description
GET /sites List all verified properties
GET /sites/{siteUrl} Get property info
PUT /sites/{siteUrl} Add a property
DELETE /sites/{siteUrl} Remove a property

Property Resource

Field Values
siteUrl Property URL (e.g., sc-domain:example.com)
permissionLevel siteOwner, siteFullUser, siteRestrictedUser, siteUnverifiedUser