The playground

Try any of 919 endpoints — live.

Pick an endpoint, load a working example, tweak the params, and send — no signup to try. Results render the way the data deserves; raw JSON, headers & code are one tab away.

Playground demo key · api.reefapi.com
post/a11y-audit/v1/audit_url3 credits

Render a URL in headless Chromium and run a full axe-core WCAG audit → score, severity summary, per-issue evidence + fix-hints, and an honest manual-review list.

Working example
Parameters

Page URL to audit (http/https; bare domains get https:// prefixed). Private/internal/metadata targets are SSRF-blocked on every hop.

Conformance standard to test against (selects the axe rule tag set).

Viewport to render at before auditing (responsive a11y differs by breakpoint).

Add axe 'best-practice' rules on top of the chosen WCAG standard (usability checks beyond strict conformance).

Also return the rules that PASSED (passes[]) — useful for evidence reports. Default false (smaller response).

Return axe 'incomplete' results — checks that need human review (folded into needs_review). Default true.

Attach a curated fix_hint to each issue (default true).

Restrict the audit to these axe rule ids (comma-separated or JSON array). Empty = all rules for the standard.

Disable these axe rule ids for the run (comma-separated or array).

Only audit elements inside these CSS selectors (axe context include).

Skip elements matching these CSS selectors (axe context exclude — drop third-party widgets you don't control).

Cap the number of returned issues (0 = no cap). Summary counts are always complete. (0–1000)

Navigation wait condition before auditing.

Additionally wait until this CSS selector is visible (15s budget) — the reliable signal for heavy SPAs.

Extra settle delay after load before auditing, 0-5000ms. (0–5000)

Browser locale (Accept-Language + Intl), e.g. en-US, de-DE, ar-EG.

Override the browser User-Agent.

Extra request headers (JSON object). Cookie/Authorization are stripped (no-login content policy).

Bypass the audit cache and force a fresh render+audit.

request preview
curl -X POST https://api.reefapi.com/a11y-audit/v1/audit_url \
  -H "x-api-key: $REEF_KEY" \
  -H "content-type: application/json" \
  -d '{"url":"https://example.com"}'

Hit Send to run this endpoint live.