IndexerNow

Is Google's Indexing API real? Read the receipt.

6 min read · updated 2026-05-28

There's a healthy instinct that kicks in the first time you use any "get indexed faster" tool: is this actually doing anything, or is it a progress bar and a prayer? Fair question. The honest answer is that you never have to trust us on it — Google sends back a receipt for every single URL, and you can read it.

First, untangle two things with almost the same name

Most of the confusion comes from a naming collision. There are two different Google features people call "request indexing," and only one of them has an API:

  • The "Request Indexing" button inside the Search Console web UI — a manual click, one URL at a time. Google does not expose this as an API, so no tool can automate it. This is the thing that's "blocked."
  • The Google Indexing API — a real, public, officially documented endpoint (indexing.googleapis.com). This is what IndexerNow calls. It is not blocked, deprecated, or unofficial.

So when you hit Submit, you're not poking at the locked manual button — you're calling a separate, fully supported API that Google built specifically for programmatic crawl requests.

What Google sends back — the receipt

Each submit is one real HTTPS call: POST to urlNotifications:publish, authenticated with your own Google token. When Google accepts it, you get HTTP 200 and a body like this:

{
  "urlNotificationMetadata": {
    "url": "https://example.com/new-page",
    "latestUpdate": {
      "url": "https://example.com/new-page",
      "type": "URL_UPDATED",
      "notifyTime": "2026-05-28T14:03:11.870934Z"
    }
  }
}

That notifyTime is the receipt. It's Google confirming, to the millisecond, that it received your crawl request and logged it against the URL. There's no guessing involved — if you see a notifyTime, the request landed.

When it doesn't work, Google tells you that too

Failures aren't silent. If something is wrong, Google returns an error envelope with a status and a human-readable message — for example, the most common one on day one:

{
  "error": {
    "code": 403,
    "message": "Permission denied. Failed to verify the URL ownership.",
    "status": "PERMISSION_DENIED"
  }
}
  • 403 PERMISSION_DENIED — you don't own a Search Console property that covers this URL (often you signed in with the wrong Google account).
  • 429 RESOURCE_EXHAUSTED — you've hit Google's ~200 publishes/day project quota.
  • 400 — the URL is malformed or not a valid http(s) address.

See it yourself: the raw response viewer

We surface exactly this. After you submit on the Index tab, every URL row has a "Raw response" toggle that expands to show the verbatim JSON Google returned — success metadata or error envelope, plus the HTTP status. The same view lives under History → any batch, so you can pull up the receipt for a submission you made last week.

Use it as proof

If a client or teammate ever asks "did you actually submit this?", open the batch in History, expand the raw response, and show them the notifyTime straight from Google. It's a per-URL audit trail you didn't have to build.

"Accepted" is not "indexed" — and that's true of every method

Here's the one thing the receipt does not promise: that Google will ultimately index the page. Indexing is Google's editorial decision, made on quality and relevance signals. No tool — not the API, not the manual button, not a plugin — can force it. What the Indexing API guarantees is the fastest, strongest crawl request available programmatically. Whether the page earns a spot in the index is still about the page.

How to confirm a page actually got indexed

  1. Submit the URL on the Index tab and confirm the notifyTime in the raw response.
  2. Wait an hour or two for Googlebot to act on the hint.
  3. Run the same URL through the Status tab — it calls the URL Inspection API and reports the real coverage state ("Submitted and indexed," "Crawled — currently not indexed," etc.).
  4. If it's stuck, run the Audit tool to find the on-page reason and fix it before resubmitting.

Sign in with Google, paste your URLs, ship them through Google's Indexing API. Free daily quota, $9.99 for a 50-URL pack.

Try IndexerNow free