Descubrir sitios
Obtén los ID de los sitios registrados antes de iniciar una ejecución de todo el sitio, leer una tendencia o seleccionar un recorrido guardado. Requiere sites:read.
GET /api/v1/sitesUsa una clave de API de organización con ámbitos para iniciar análisis de una página o de todo el sitio y leer resultados estables y estructurados.
La API para desarrolladores usa claves con ámbitos, no el endpoint de inicio de sesión del navegador.
curl https://api.wcagc.com/api/v1/sites \
-H "Accept: application/json" \
-H "Authorization: Bearer $WCAGC_API_KEY"Las claves empiezan por wcagc_ y se muestran completas una sola vez. Guárdalas como secretos, concede solo los ámbitos que necesites y revócalas de inmediato si quedan expuestas.
No verás /api/auth/login en la especificación pública: crea una sesión con cookie para la aplicación web y, de forma intencionada, no es el método de autenticación para scripts.
Cada clave permite 120 solicitudes por minuto de forma predeterminada. Una respuesta 429 incluye Retry-After para que los clientes reduzcan el ritmo sin riesgo.
La mayoría de las rutas REST requieren la función API para desarrolladores del plan. CI usa un ámbito ci:check y una cuota de plan aparte; las credenciales de asistentes y de la extensión de navegador tienen su propia documentación.
sites:readscans:writescans:readci:checkLa referencia se organiza en torno a tareas estables, no a los endpoints internos de la aplicación web. Cada recurso está limitado a la organización propietaria de la credencial.
Obtén los ID de los sitios registrados antes de iniciar una ejecución de todo el sitio, leer una tendencia o seleccionar un recorrido guardado. Requiere sites:read.
GET /api/v1/sitesPon en cola una página de un sitio registrado, consulta el análisis y lee sus registros estables de hallazgos. Requiere scans:write y scans:read.
POST /api/v1/scans
GET /api/v1/scans/{id}
GET /api/v1/scans/{id}/violationsPon en cola una ejecución de todo el sitio y lee el progreso, los hallazgos y los grupos deterministas de causas raíz. Requiere scans:write y scans:read.
POST /api/v1/scan-runs
GET /api/v1/scan-runs/{id}
GET /api/v1/scan-runs/{id}/violations
GET /api/v1/scan-runs/{id}/root-causesUsa pasos y credenciales guardados en el servidor; las solicitudes a la API nunca llevan secretos de inicio de sesión. Las tendencias del sitio y las recomprobaciones específicas usan los ámbitos normales de lectura y escritura.
GET /api/v1/sites/{id}/journeys
POST /api/v1/journeys/{id}/runs
GET /api/v1/sites/{id}/trend
POST /api/v1/remediation-items/{id}/verificationsComprueba hasta el límite de URL del plan en un sitio verificado, lee el veredicto y obtén hallazgos con referencia a la línea base. Requiere ci:check.
POST /api/v1/ci/checks
GET /api/v1/ci/checks/{id}
GET /api/v1/ci/checks/{id}/violationsLa creación de análisis, ejecuciones, comprobaciones de CI, recorridos y verificaciones de correcciones es asíncrona. Un POST correcto devuelve 202 Accepted, un ID de recurso y una cabecera Location.
Consulta el recurso de Location con espera progresiva acotada hasta que alcance un estado final. Lee los hallazgos solo cuando haya terminado; no trates una respuesta en cola o en curso como un resultado.
curl -X POST https://api.wcagc.com/api/v1/scans \
-H "Authorization: Bearer $WCAGC_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com/checkout"}'curl https://api.wcagc.com/api/v1/scans/{id} \
-H "Authorization: Bearer $WCAGC_API_KEY"
curl https://api.wcagc.com/api/v1/scans/{id}/violations \
-H "Authorization: Bearer $WCAGC_API_KEY"Los errores usan application/problem+json. Decide según code, conserva traceId para soporte y trata detail como contexto legible que puede cambiar.
401 API_KEY_INVALID403 API_KEY_SCOPE_MISSING / FEATURE_NOT_IN_PLAN404 *_NOT_FOUND409 *_ALREADY_RUNNING422 VALIDATION_FAILED / INVALID_URL429 RATE_LIMITED + Retry-After{
"type": "https://wcagc.com/problems/api-key-scope-missing",
"title": "API key scope missing",
"status": 403,
"detail": "The API key does not grant the required scope.",
"instance": "/api/v1/sites",
"code": "API_KEY_SCOPE_MISSING",
"traceId": "019c…",
"timestamp": "2026-08-19T20:57:19Z"
}Swagger lista cada operación compatible de la API para desarrolladores v1, el ámbito requerido, el esquema de la solicitud, el estado de la respuesta y un ejemplo. El JSON OpenAPI 3.1 sin procesar se puede importar en clientes de API y generadores de código.
Suscribe un endpoint HTTPS a eventos de análisis finalizados, de regresión y de corrección. Cada envío JSON incluye una firma HMAC-SHA256 con marca de tiempo, un ID de entrega estable y reintentos automáticos.
Configurar webhooksVerifica X-Wcagc-Signature con timestamp + '.' + el cuerpo sin procesar e intacto de la solicitud. Rechaza marcas de tiempo antiguas para reducir el riesgo de repetición.
X-Wcagc-Event: scan_run.completed
X-Wcagc-Delivery: 019f…
X-Wcagc-Timestamp: 178406…
X-Wcagc-Signature: v1=<hmac-sha256>