MonSPHERE

Monitoring

robots.txt & Meta Noindex Monitoring

Alert the moment a page or an entire site is accidentally deindexed — a one-line config mistake that otherwise goes unnoticed for weeks.

Catching an accidental deindex isn't a separate monitor type — it's an HTTP/HTTPS monitor's existing keyword/forbiddenKeyword body-matching pointed at the right target, checked by Blackbox Exporter on every probe alongside the monitor's normal up/down check. No new infrastructure, no extra request.

Availability

Available on every plan that already includes Advanced HTTP Monitoring (the keyword/forbiddenKeyword fields).

Site-wide: robots.txt disallowing everything

Point the monitor's target directly at the robots.txt file, and use forbiddenKeyword with a regex that only matches a real "block everything" rule:

curl -X POST https://api.monsphere.com/api/v1/organizations/{orgId}/monitors \
  -H "X-Api-Key: msph_live_..." -H "Content-Type: application/json" \
  -d '{
    "name": "Site not fully disallowed",
    "type": "https",
    "target": "https://example.com/robots.txt",
    "intervalSeconds": 300,
    "timeoutSeconds": 10,
    "config": {
      "forbiddenKeyword": "Disallow:\\s*/\\s*$",
      "keywordIsRegex": true
    }
  }'

The anchored regex only matches a bare Disallow: / line — a normal robots.txt with specific disallowed paths (Disallow: /admin, Disallow: /search) never trips it.

Per-page: an accidental noindex tag

Point a monitor at the actual page and check for the noindex meta tag directly:

curl -X POST https://api.monsphere.com/api/v1/organizations/{orgId}/monitors \
  -H "X-Api-Key: msph_live_..." -H "Content-Type: application/json" \
  -d '{
    "name": "Homepage stays indexable",
    "type": "https",
    "target": "https://example.com",
    "intervalSeconds": 300,
    "timeoutSeconds": 10,
    "config": {
      "forbiddenKeyword": "<meta[^>]+name=[\"'"'"']robots[\"'"'"'][^>]+content=[\"'"'"'][^\"'"'"']*noindex",
      "keywordIsRegex": true
    }
  }'

How it runs

Same as every other http/https monitor: a Blackbox Exporter HTTP probe, region-selectable, with the standard uptime/latency analytics — deindex detection just rides along on the same check as a body-content assertion, using fail_if_body_matches_regexp under the hood.