Получить сайты
Получите ID зарегистрированных сайтов перед полным сканированием, чтением тренда или выбором сохранённого сценария. Требуется sites:read.
GET /api/v1/sitesИспользуйте API-ключ организации с ограниченными правами, чтобы запускать сканы страниц и сайтов и читать стабильные структурированные результаты.
Developer API использует ключи с ограниченными правами, а не вход для браузера.
curl https://api.wcagc.com/api/v1/sites \
-H "Accept: application/json" \
-H "Authorization: Bearer $WCAGC_API_KEY"Ключи начинаются с wcagc_ и полностью показываются один раз. Храните их как секреты, выдавайте только нужные права и сразу отзывайте при утечке.
В публичной спецификации нет /api/auth/login: этот маршрут создаёт cookie-сессию веб-приложения и намеренно не используется скриптами.
По умолчанию каждый ключ допускает 120 запросов в минуту. Ответ 429 содержит Retry-After для безопасного повтора.
Большинство REST-маршрутов требует плановую возможность Developer API. Для CI используются отдельное право ci:check и квота плана; у ИИ-ассистентов и расширения браузера своя документация.
sites:readscans:writescans:readci:checkСправочник построен вокруг стабильных пользовательских задач, а не внутренних маршрутов веб-приложения. Каждый ресурс ограничен организацией, которой принадлежит ключ.
Получите ID зарегистрированных сайтов перед полным сканированием, чтением тренда или выбором сохранённого сценария. Требуется sites:read.
GET /api/v1/sitesПоставьте страницу зарегистрированного сайта в очередь, опрашивайте скан и затем получите стабильные записи находок. Требуются scans:write и scans:read.
POST /api/v1/scans
GET /api/v1/scans/{id}
GET /api/v1/scans/{id}/violationsПоставьте полный обход в очередь, читайте прогресс, находки и детерминированные группы первопричин. Требуются scans:write и 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-causesИспользуйте сохранённые на сервере шаги и учётные данные: запросы API никогда не передают секреты входа. Тренды и точечные перепроверки используют обычные права чтения и записи.
GET /api/v1/sites/{id}/journeys
POST /api/v1/journeys/{id}/runs
GET /api/v1/sites/{id}/trend
POST /api/v1/remediation-items/{id}/verificationsПроверьте разрешённое планом число URL одного верифицированного сайта, получите вердикт и находки с учётом baseline. Требуется ci:check.
POST /api/v1/ci/checks
GET /api/v1/ci/checks/{id}
GET /api/v1/ci/checks/{id}/violationsСоздание сканов, обходов, CI-проверок, сценариев и перепроверок исправлений асинхронно. Успешный POST возвращает 202 Accepted, ID ресурса и заголовок Location.
Опрашивайте ресурс из Location с ограниченной задержкой до конечного статуса. Читайте находки только после завершения; ответ QUEUED или RUNNING ещё не является результатом.
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"Ошибки имеют тип application/problem+json. Ветвите логику по code, сохраняйте traceId для поддержки, а detail считайте пояснением для человека, которое может меняться.
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 перечисляет все поддерживаемые операции Developer API v1, нужные права, схемы запросов, статусы ответов и примеры. Исходный OpenAPI 3.1 JSON можно импортировать в API-клиенты и генераторы кода.
Подпишите HTTPS-адрес на завершение сканов, регрессии и смену статуса исправлений. JSON-доставка содержит HMAC-SHA256 подпись, стабильный delivery ID и автоматические повторы.
Настроить вебхукиПроверяйте X-Wcagc-Signature по строке timestamp + '.' + неизменённому телу запроса. Отклоняйте старые метки времени для защиты от повторного воспроизведения.
X-Wcagc-Event: scan_run.completed
X-Wcagc-Delivery: 019f…
X-Wcagc-Timestamp: 178406…
X-Wcagc-Signature: v1=<hmac-sha256>