Overview
The Google Indexing API integration tells Google the moment a job changes on your site. Whenever a job is published, updated, unpublished, or deleted, Loxo notifies Google directly, so the page is crawled quickly. This is the method Google recommends for time-sensitive content like job postings. It is far faster than waiting for the sitemap to be re-crawled.
Each site connects its own Google service account, so submissions and quota belong entirely to you.
Requirements
- A Google Cloud project with the Web Search Indexing API enabled.
- A Google service account with a JSON key.
- The service account added as an Owner of your site in Google Search Console.
Before You Start: Set Up Google Search Console
The Indexing API only accepts updates for a site you have proved you own in Google Search Console. If your site is already verified there, skip to Setting Up.
- Open Google Search Console, sign in with your Google account, and choose Add property.
- Pick a property type. A Domain property (for example
example.com) covers every version of your site, with or withoutwwwand on bothhttpandhttps, which is why we recommend it. A URL prefix property covers only the exact address you enter. - Verify that you own the site. For a Domain property, Search Console gives you a TXT record to add in your domain’s DNS settings, usually at your hosting company or domain registrar. Verification can take from a few minutes to a day while the record spreads. For a URL prefix property, the simplest method is the HTML tag.
- If you use Yoast SEO and chose the HTML tag, you do not need to edit your theme. Copy the verification code Search Console shows you, paste it into Yoast SEO → Settings → Site connections → Google, and save. Return to Search Console and click Verify.
- Once verified, open Sitemaps in Search Console and submit your sitemap. With Yoast SEO this is
sitemap_index.xml. Without an SEO plugin, submit the Loxo jobs sitemap,loxo-jobs-sitemap.xml.
Google’s own walkthrough of the verification methods:
Setting Up
- In the Google Cloud console, create or select a project.
- Open APIs & Services → Library, search for Web Search Indexing API, and click Enable.
- Go to IAM & Admin → Service Accounts → Create Service Account. Enter a name and continue — you can skip the optional permissions step, as no Cloud IAM role is required.
- Open the service account, go to the Keys tab, choose Add Key → Create new key → JSON, and download the file. Treat this file like a password: anyone who has it can send updates for your site. Paste it straight into WordPress in the next step, never send it by email, and delete the download once you are connected.
- In WordPress, go to Loxo Jobs → Google Indexing, paste the contents of the JSON key file, and save.
- In Google Search Console, open Settings → Users and permissions → Add user, enter the service account email address, and set the permission to Owner. This must be done by a verified owner of the property, and the property must cover your job URLs (a Domain property, or a URL-prefix property that matches your site’s scheme and host exactly).
- Back on the Google Indexing page, click Test connection. A success message shows the connected service account.
- Enable the Enable Google Indexing notifications toggle to start sending automatic updates.
- Click Submit all published jobs once, so the jobs already on your site are sent to Google too. From then on, Loxo sends updates automatically.
How It Works
Once enabled, Loxo notifies Google automatically as jobs change:
- Published or updated — Loxo asks Google to crawl the job page.
- Unpublished or deleted — Loxo asks Google to drop the job page from its index.
Notifications are queued and delivered in the background, and are retried automatically if Google is temporarily unavailable. A routine background sync that changes nothing meaningful does not trigger a notification.
Manual Actions
From the Google Indexing page you can also:
- Submit all published jobs — queue every current job for indexing, useful when first connecting.
- Submit or remove a single URL — send an update or removal for a specific page.
- Check a URL’s status — see when Google last received an update for it.
Daily Quota
Google allows 200 URL submissions per day per project by default. The Google Indexing page shows how much of today’s quota has been used. If the limit is reached, automatic and queued submissions resume on their own the next day. You can request a higher quota from Google if you regularly publish more than 200 jobs a day.
Activity Log
Every submission is recorded in an activity log on the Google Indexing page. It shows the URL, the type of notification, what triggered it, and the result. The log keeps the 50 most recent entries and can be cleared at any time.
Troubleshooting
- “Failed to verify the URL ownership” — the service account is not yet an Owner of a Search Console property that covers the URL. Add it as an Owner (not a Full or Restricted user), and make sure the property covers the exact site host, including any subdomain.
- “Web Search Indexing API is not enabled” — enable the API in the Google Cloud console for the same project the JSON key belongs to.
- “Service account key creation is disabled” when creating the JSON key — your Google Workspace organisation blocks key creation by default, through the
iam.disableServiceAccountKeyCreationpolicy. A Google Workspace or Google Cloud administrator in your organisation needs to allow key creation for this one project, under IAM & Admin → Organization Policies. Personal Google accounts are not affected. - “Service account key is invalid” — paste the entire JSON key file, not the service account email or a partial copy.
- Jobs are indexed slowly or not at all — the Indexing API asks Google to crawl a page sooner, but Google still decides whether to index it. Make sure each job’s structured data is valid and its description is unique rather than shared boilerplate.
Indexing vs Crawling
The Indexing API speeds up how quickly Google discovers and crawls your job pages. It does not force Google to index them — that remains Google’s decision. But it removes the delay of waiting for a scheduled crawl. That delay is the most common reason time-sensitive job postings are missed.
Related documentation
- REST API — browse the plugin’s full REST endpoint reference.
- Auto-Extend Expiry — each rolled-forward expiration date is resubmitted to Google automatically, provided this integration is active.
