FixWeb

// docs / domains

Domains

A domain is a verified hostname you own. Verifying once unlocks owner-depth scans, scheduled quality re-scans, and live website monitoring on that hostname.

Verifying a domain

Add a hostname at Dashboard โ†’ Domains. Pick one of two verification methods:

  • DNS TXT โ€” add a record at _fixweb.<hostname> with the token we generate. We re-resolve it from our server, not yours, so SPF / DMARC settings don't interfere. Typical propagation: 1-5 minutes; we re-check every 30 seconds for 10 minutes.
  • HTTP file โ€” host a small text file at /.well-known/fixweb-verification.txt with the token. We fetch over HTTPS via the SSRF-guarded request path.

Verifications are re-checked daily by the domain-reverify cron. If a previously-verified domain stops resolving the token (e.g. you removed the DNS record), the verification is revoked and active scans against it drop back to verify_required until you re-add it.

Scheduled re-scans Pro+

The Pro plan can re-scan a verified domain at โ‰ฅ3h cadence; the Unlimited plan at โ‰ฅ1h. Open Dashboard โ†’ Domains โ†’ Schedule, enable the toggle, pick a cadence:

  • 1 hour โ€” available only on the Unlimited plan
  • 3h, 6h, 12h, daily, every 2 days, weekly

Every cron tick (every 15 min) the scheduler picks up due schedules, claims them via an optimistic compare-and-swap on next_run_at (so two crons can't double-enqueue), increments your scan-usage counter, and enqueues a fresh passive scan. The scan inherits your domain-verification attestation โ€” you don't re-attest per run โ€” so disable the schedule to revoke.

On completion, the scan-completed email goes out using the scheduled_scan_email preference (manage at Account โ†’ Settings).

Live website monitoring Unlimited+

The Unlimited plan automatically watches every verified domain for quality-affecting signals between scheduled scans:

  • Certificate transparency โ€” every 30 minutes we query crt.sh for new certs containing your hostname or any subdomain. New certs fire a new_certificate alert.
  • DNS diff โ€” every 30 minutes we resolve A, AAAA, MX, TXT, NS, CNAME and compare against the last snapshot. Changes fire a dns_change alert.
  • External listing signals โ€” periodic public reputation/listing checks for the apex hostname. Listings fire an external_listing alert when they may affect reachability or visitor trust.

Alerts dedupe on a content-hash signature so re-detecting the same change does not re-fire. View / dismiss alerts at Dashboard โ†’ Domains โ†’ [domain] โ†’ Monitor. Email notifications follow the site-monitor preference.

Snapshot retention

Monitor snapshots auto-prune after 7 days, except the most recent baseline per (domain, signal-type) pair โ€” that one stays regardless of age so the next diff is correct. Dismissed alerts purge after 90 days.

Trigger from API or MCP

Domain management is currently UI-only โ€” no API surface for verification or schedule changes. To start a scan against an already-verified domain via API, use POST /api/v1/scans:

curl
curl -X POST https://fixweb.app/api/v1/scans \
  -H "Authorization: Bearer fxw_..." \
  -H "content-type: application/json" \
  -d '{"target":"https://example.com"}'
Domains โ€” Docs ยท FixWeb