Skip to main content

Accessibility Audit

developer
GET/v1/domain/accessibility

Performs automated HTML-based accessibility analysis across 24 checks covering key WCAG 2.1 success criteria (also applicable to WCAG 2.2). Covers ARIA, semantic HTML, form labels, headings, images, language, navigation, viewport, media, tables, links, SVGs, and more. Automated checks cover approximately 63% of automatable WCAG 2.1 Level A/AA success criteria but cannot replace manual testing — areas like color contrast, keyboard navigation, and dynamic content require browser-based or manual evaluation. Returns a weighted score out of 100 with letter grade and actionable recommendations.

What It Does

Analyzes the page across 24 accessibility checks: ARIA attributes and landmarks, semantic HTML elements, form input label associations (explicit, implicit, and aria-based), language attributes, heading hierarchy, image alt text presence and quality, skip navigation links, tab index misuse, generic link text, page title, viewport zoom restrictions, autoplay media, media captions, table accessibility, button accessible names, iframe titles, duplicate IDs, link accessible names, autocomplete attributes, meta refresh, SVG accessibility, fieldset/legend form groups, inline focus suppression, and object/embed/canvas alternatives.

Why It's Useful

Web accessibility is both a legal requirement (ADA, WCAG) and a business imperative — it expands your audience and improves usability for everyone. Automated audits catch common issues at scale that manual testing would miss.

Use Cases

Accessibility Specialist

WCAG Compliance Check

Audit pages against WCAG 2.1/2.2 Level A and AA criteria to identify compliance gaps across 24 automated checks.

Reduce legal risk and improve inclusivity for users with disabilities.

Frontend Developer

Development QA

Check new pages or components for accessibility regressions before deployment with detailed per-category scoring.

Catch a11y regressions early in the development cycle with actionable recommendations.

Compliance Officer

Enterprise Compliance

Monitor accessibility compliance across all public-facing web properties with consistent scoring methodology.

Track and report on accessibility progress across the organization with transparent, weighted scoring.

Parameters

NameTypeRequiredDescription
domainstringRequiredThe domain to audit accessibility forExample: example.com

Response Fields

FieldTypeDescription
domainstringThe audited domain
ariaobjectARIA attributes, landmarks, and issues found
semanticHtmlobjectSemantic element usage with score
formLabelsobjectForm input label coverage and issues
languageobjectLang attribute presence and validity
headingsobjectHeading order validation and skipped levels
imagesobjectImage alt text coverage, quality, and decorative detection
skipNavigationobjectSkip navigation link detection
tabIndexobjectPositive tabindex anti-pattern detection
linkTextobjectGeneric link text detection
pageTitleobjectPage title presence, emptiness, and generic title detection
viewportobjectViewport zoom restriction detection
autoplayMediaobjectUnmuted autoplay media detection
mediaCaptionsobjectVideo/audio caption and subtitle detection (WCAG 1.2.2)
tablesobjectTable caption, header, and scope usage
buttonsobjectEmpty button accessible name detection
iframesobjectIframe title attribute coverage
duplicateIdsobjectDuplicate ID attribute detection
linkAccessibilityobjectEmpty and image-only link detection
autocompleteobjectAutocomplete attribute coverage on identifiable inputs
metaRefreshobjectMeta refresh redirect detection
svgsobjectSVG accessible name detection
formGroupsobjectFieldset/legend usage for radio/checkbox groups
focusSuppressionobjectInline outline suppression detection
mediaAlternativesobjectObject, embed, canvas alternative text detection
scorenumberAccessibility score 0-100
gradestringLetter grade (A+ to F)
gradeDescriptionstringHuman-readable description of the grade (e.g., "Very Good - strong posture")
breakdownobjectPer-category score breakdown with max weights
recommendationsarrayActionable accessibility improvements
supplementaryChecksobjectInformational WCAG checks not included in scoring: orientation lock (1.3.4), accesskeys (2.1.4), aria-live regions (4.1.3)
wcagCoverageobjectWCAG 2.1 criteria coverage transparency: list of covered criteria and percentage
confidenceobjectResult confidence indicator: level (high/medium/low) and limitations list

Scoring Methodology

24 checks / 100 pts

Each check maps to a WCAG 2.1 success criterion at Level A or AA. The weighted score (0-100) determines the letter grade: A+ (95-100), A (85-94), B (70-84), C (50-69), D (30-49), F (0-29). Categories without applicable elements on the page receive full marks.

CheckWCAGLevelWeight
Semantic HTML

Usage of semantic elements (header, nav, main, footer, article, section)

1.3.1A10
Form Labels

Input label coverage via explicit, implicit, or ARIA labeling

1.3.1 / 4.1.2A10
Image Alt Text

Alt text presence (60%) and quality (40%) blended score

1.1.1A10
Heading Order

H1 presence, sequential hierarchy, no skipped levels

1.3.1 / 2.4.6A10
Language

Valid lang attribute on the html element

3.1.1A7
ARIA

ARIA landmark roles and attribute usage

4.1.2A6
Viewport Zoom

No user-scalable=no or maximum-scale < 2

1.4.4AA5
Skip Navigation

Skip-to-content link for keyboard navigation

2.4.1A4
Page Title

Descriptive title element present (generic titles like "Home" or "Untitled" receive partial credit)

2.4.2A4
Link Text

No generic link text (click here, read more, etc.)

2.4.4A3
Tab Index

No positive tabindex values (anti-pattern)

2.4.3A3
Link Accessibility

No empty or image-only links missing alt text

2.4.4 / 4.1.2A3
Autoplay Media

No unmuted autoplay audio or video

1.4.2A2
Media Captions

Captions/subtitles on video and audio elements

1.2.2A3
Tables

Caption, header cells, and scope on data tables

1.3.1A3
Duplicate IDs

Each id attribute must be unique (*SC 4.1.1 removed in WCAG 2.2 but duplicate IDs break ARIA/label associations)

4.1.1*A2
Autocomplete

Autocomplete on identifiable inputs (name, email, phone)

1.3.5AA2
Meta Refresh

No meta http-equiv=refresh redirect or reload

2.2.1A2
SVG Accessibility

Accessible names on non-decorative SVGs via title or aria-label

1.1.1A2
Form Groups

Fieldset and legend for radio/checkbox groups

1.3.1A2
Buttons

All buttons have accessible names

4.1.2A2
Focus Management

No inline outline:none suppressing focus indicators

2.4.7AA2
Iframes

Title attribute on all iframe elements

2.4.1A2
Media Alternatives

Alternative text for object, embed, and canvas elements

1.1.1A1
Total100

Code Examples

cURL
curl "https://api.edgedns.dev/v1/domain/accessibility" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d "domain=example.com"
JavaScript
const response = await fetch(
  'https://api.edgedns.dev/v1/domain/accessibility?domain=example.com',
  {
    headers: {
      'Authorization': 'Bearer YOUR_API_KEY'
    }
  }
);

const data = await response.json();
console.log(data);
Python
import requests

response = requests.get(
    'https://api.edgedns.dev/v1/domain/accessibility',
    headers={'Authorization': 'Bearer YOUR_API_KEY'},
    params={
    'domain': 'example.com'
    }
)

data = response.json()
print(data)

Read the full Accessibility Audit guide

Why it matters, real-world use cases, parameters, response fields, and how to call it from Claude, ChatGPT, or Gemini via MCP.

Read the guide →

Related Endpoints

External References

Learn more about the standards and protocols behind this endpoint.

Try This Endpoint

Test the Accessibility Audit endpoint live in the playground.