Inspect URLs
Google's live index status and canonical choice for up to 25 URLs in one call.
https://api.rankparse.com/v1/gsc/url-inspection/bulkFreeAPI key + connected Google accountRuns the Search Console URL Inspection for up to 25 URLs and compares, for each, the canonical you declared with the canonical Google chose. It reads Google live and costs nothing in credits, but Google allows 2000 inspections a day per property, so inspect the pages that matter, for example the pages from Find keyword cannibalization. For one URL, Inspect a URL returns the full detail including mobile usability and rich results.
Body parameters
sitestringrequiredThe property, or a bare host matched to a property you own. Every URL must belong to it.
urlsarray of stringsrequiredThe full http or https URLs to inspect, 1 to 25. Repeats are inspected once.
Response
resultsarrayOne entry per URL, in the order sent. An inspected URL has url, verdict, coverage_state, indexing_state, robots_txt_state, page_fetch_state, last_crawl_time, user_canonical, google_canonical, canonical_status and inspection_link. A URL that failed has url and an error with code and message; it does not stop the others.
canonical_statusstringmatch: Google chose the canonical you declared. The two are compared exactly: http versus https, www versus no www and a different query string all count as different, and only a trailing slash, a fragment and the letter case of the host are ignored. google_chose_different: Google ignored it, the pages to fix first. no_user_canonical: the page declares none and Google chose one. unknown: Google reports no canonical, as it does for pages it does not know.
canonical_mismatchesarrayThe inspected URLs whose canonical_status is google_chose_different.
summaryobjectinspected, failed, by_verdict (counts by PASS, FAIL, NEUTRAL and so on) and by_canonical_status.
Behavior and limits
- Credits: 0.
- Google's quota: 2000 inspections a day and 600 a minute per property. A call over the quota reports
quota_exceededon the URLs it affects. - URLs outside the property: a URL the property does not cover is reported on its own with the error
url_not_in_property, and the others are still inspected. A Domain property covers the host and its subdomains over either protocol; a URL-prefix property covers one scheme, host and path. If no URL is covered, the call returns400 url_not_in_property. - A property you cannot read fails the whole call with the same error as Inspect a URL.
- Quota used up mid-call: once Google reports the quota exceeded, the URLs not yet sent are not sent and are reported with the error
skipped_quota_exceeded.
Errors
| HTTP | Code | When |
|---|---|---|
| 400 | invalid_body, missing_site, invalid_urls | The body is not { site, urls }, or a URL is not an http or https URL. |
| 400 | too_many_urls | More than 25 URLs. |
| 400 | url_not_in_property | None of the URLs is covered by the property. |
| 400, 401, 403, 404, 429, 502, 503 | Search Console codes | The same as Query search analytics. |
| 401 | invalid_api_key | Missing, invalid or revoked API key. |
| 429 | rate_limited | More than 60 requests per minute for this key. |
Related
MCP tool: inspect_gsc_urls (accepts site and urls).