---
title: "Wcag Report"
method: GET
path: "/v1/projects/{project_id}/wcag-report"
tags: ["reports"]
---

# Wcag Report

`GET /v1/projects/{project_id}/wcag-report`

## Request

- Base URL: `https://api.sonenta.dev`
- URL: `https://api.sonenta.dev/v1/projects/{project_id}/wcag-report`
- Auth: none declared

WCAG 2.2 measurement of the CONTENT layer Sonenta governs: per success-criterion
pass/fail/not_evaluated PER LOCALE, each stating its `method`: `computed` (the
requirement itself is evaluated) or `presence` (only that the expected content
exists). Returns `measures`: content completeness (NOT a conformance score),
the computed criteria as raw counters, and coverage.

This report does NOT attest a WCAG conformance level: a level requires SC that
can only be judged on the rendered DOM (contrast, keyboard, focus order), which
are declared out_of_scope and never reported as pass. Criteria with no key of
the required type are `not_evaluated` and stay in the coverage denominator, so
declaring fewer key types lowers coverage rather than raising a figure.

## Path parameters

- `project_id` string, required

## Query parameters

- `version_id` string, nullable

## Response `200`

Successful Response

- WcagReportOut
  - `report_schema` integer, required
  - `project_uuid` string, required
  - `version_uuid` string, nullable, required
  - `standard` string, required
  - `locales` string[], required
  - `source_locale` string, nullable, required
  - `keys_scanned` integer, required
  - `scope` WcagScope, required
    - `content_layer_sc` string[], required
    - `out_of_scope_sc` WcagOutOfScopeSc[], required
      - `sc` string, required
      - `name` string, required
      - `principle` string, required
      - `level` string, required
      - `reason` string, required
    - `note` string, required
  - `results` WcagScResult[], required
    - `sc` string, required
    - `name` string, required
    - `principle` string, required
    - `level` string, required
    - `method` string, required
    - `partial` boolean, required
    - `scored` boolean, required
    - `evaluated` boolean, required
    - `total_fail_count` integer, required
    - `by_locale` object, required
    - `note` string, nullable
  - `screen_reader_text` WcagScreenReaderText, required
    - `relevant_keys` integer, required
    - `with_screen_reader_text` integer, required
    - `coverage_pct` number, nullable, required
  - `measures` WcagMeasures, required
    - `content_completeness` WcagContentCompleteness, required
      - `label` string, required
      - `pct` number, nullable, required
      - `filled_cells` integer, required
      - `total_cells` integer, required
      - `by_locale` object, required
      - `criteria_evaluated` integer, required
      - `criteria_total` integer, required
      - `note` string, required
    - `evaluated_criteria` WcagEvaluatedCriteria, required
      - `criteria` string[], required
      - `pass_cells` integer, required
      - `fail_cells` integer, required
      - `failing_items` integer, required
      - `note` string, required
    - `coverage` WcagCoverage, required
      - `pct` number, nullable, required
      - `evaluated_cells` integer, required
      - `total_cells` integer, required
      - `criteria_evaluated` integer, required
      - `criteria_total` integer, required
      - `note` string, required
    - `target_level` WcagTargetLevel, required
      - `level` string, required
      - `attested` boolean, required
      - `note` string, required
      - `aa_sc_not_evaluated` string[], required
    - `out_of_scope_count` integer, required
  - `readability` WcagReadability, required
    - `metric_by_language` object, required
    - `thresholds` object, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/sonenta/apis/sonenta-api.md) · [All operations](https://skmtc.dev/sonenta/apis/sonenta-api/llms.txt) · [OpenAPI document](https://skmtc.dev/sonenta/apis/sonenta-api/revisions/f853ea49fb05?raw)
