PLATFORM

What is actually running.

A map of the surfaces, with the ones you can build against today separated from the ones that exist but are not stable enough to publish.

Surfaces

SurfaceStatusWhat it is
Public scan API Available now Unauthenticated. Queue a scan, poll it, read the scorecard. Documented in full.
Scanning engine Available now Fetches public HTML the way search and answer-engine crawlers do, and runs the rubric against what came back.
Rubric catalogue Available now 129 checks across 8 weighted categories, each declaring its method and fix capability.
Brand-scoped API Not built yet Fix queue, audits, watchdog and citations exist behind auth but are not publicly documented, which means they are not stable enough to build against.
Webhooks Not built yet Outbound notification on scan completion and queue events.
Delivery connectors Not built yet The access ladder: pull requests, CMS drafts. Designed, not built.

How a scan actually runs

  1. 01

    Submit

    A URL arrives. Verification runs before anything else (before URL validation, before any DNS lookup) so the endpoint cannot be used as an unauthenticated probe. The host is then checked against an SSRF guard, because this is a surface where a stranger causes us to fetch something.

  2. 02

    Queue

    Accepted with a scan id. A repeat request for the same domain inside 24 hours returns that day's scan rather than crawling again, which also stops the endpoint being pointed repeatedly at a third party.

  3. 03

    Crawl and score

    A capped crawl of public HTML, then the rubric. Every check resolves to pass, fail or unmeasured, and coverage is recorded alongside the score.

  4. 04

    Report

    Score, grade, per-category scores and finding count are returned. The findings themselves are withheld until an email is verified: omitted from the payload entirely rather than blanked, because a locked field that is still present is one devtools tab away from unlocked.

If the engine is unavailable

The scan fails and says so. There is no path that returns a grade without a crawl behind it. This used to be untrue and was fixed, and it is the single most important property of the platform to understand.

API documentation Queue and scan limits