Individua i siti
Ottieni gli ID dei siti registrati prima di avviare una scansione dell’intero sito, leggere un andamento o selezionare un percorso salvato. Richiede sites:read.
GET /api/v1/sitesUsa una chiave API dell’organizzazione con ambiti limitati per avviare scansioni di singole pagine o dell’intero sito e leggere risultati strutturati e stabili.
La Developer API usa chiavi con ambiti limitati, non l’endpoint di login del browser.
curl https://api.wcagc.com/api/v1/sites \
-H "Accept: application/json" \
-H "Authorization: Bearer $WCAGC_API_KEY"Le chiavi iniziano con wcagc_ e vengono mostrate per intero una sola volta. Conservale come segreti, concedi solo gli ambiti che ti servono e revocale subito se esposte.
Non vedrai /api/auth/login nella specifica pubblica: crea una sessione con cookie per l’app web e non è, per scelta, il metodo di autenticazione per gli script.
Ogni chiave consente 120 richieste al minuto per impostazione predefinita. Una risposta 429 include Retry-After, così i client possono rallentare in sicurezza.
La maggior parte degli endpoint REST richiede la funzione Developer API del piano. La CI usa un ambito ci:check separato e una quota del piano; le credenziali per gli assistenti e per l’estensione del browser hanno una documentazione propria.
sites:readscans:writescans:readci:checkIl riferimento è organizzato per operazioni stabili e non per gli endpoint interni dell’app web. Ogni risorsa è limitata al tenant dell’organizzazione che possiede la credenziale.
Ottieni gli ID dei siti registrati prima di avviare una scansione dell’intero sito, leggere un andamento o selezionare un percorso salvato. Richiede sites:read.
GET /api/v1/sitesMetti in coda una pagina di un sito registrato, controlla lo stato della scansione, poi leggi i record stabili dei problemi rilevati. Richiede scans:write e scans:read.
POST /api/v1/scans
GET /api/v1/scans/{id}
GET /api/v1/scans/{id}/violationsMetti in coda una scansione dell’intero sito, leggi avanzamento, problemi rilevati e gruppi deterministici di cause principali. Richiede scans:write e 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 passaggi e credenziali salvati sul server; le richieste API non includono mai credenziali di accesso. Andamenti del sito e nuovi controlli mirati usano gli stessi ambiti di lettura e scrittura.
GET /api/v1/sites/{id}/journeys
POST /api/v1/journeys/{id}/runs
GET /api/v1/sites/{id}/trend
POST /api/v1/remediation-items/{id}/verificationsControlla fino al numero di URL previsto dal piano su un sito verificato, leggi l’esito e recupera i problemi rilevati rispetto alla baseline. Richiede ci:check.
POST /api/v1/ci/checks
GET /api/v1/ci/checks/{id}
GET /api/v1/ci/checks/{id}/violationsLa creazione di scansioni, esecuzioni, controlli CI, percorsi e verifiche delle correzioni è asincrona. Una POST riuscita restituisce 202 Accepted, un ID risorsa e un’intestazione Location.
Fai polling sulla risorsa Location con un backoff limitato finché non raggiunge uno stato finale. Leggi i problemi rilevati solo a completamento avvenuto; non trattare una risposta «in coda» o «in esecuzione» come un risultato.
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"Gli errori usano application/problem+json. Gestisci i casi in base a code, conserva traceId per il supporto e tratta detail come contesto leggibile da persone, che può cambiare.
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 elenca ogni operazione supportata della Developer API v1, l’ambito richiesto, lo schema della richiesta, lo stato della risposta e un esempio. Il JSON OpenAPI 3.1 grezzo può essere importato nei client API e nei generatori di codice.
Iscrivi un endpoint HTTPS agli eventi di scansione terminata, regressione e correzione. Ogni consegna JSON include una firma HMAC-SHA256 con timestamp, un ID di consegna stabile e nuovi tentativi automatici.
Configura i webhookVerifica X-Wcagc-Signature rispetto a timestamp + '.' + il corpo grezzo della richiesta, invariato. Rifiuta i timestamp troppo vecchi per ridurre il rischio di replay.
X-Wcagc-Event: scan_run.completed
X-Wcagc-Delivery: 019f…
X-Wcagc-Timestamp: 178406…
X-Wcagc-Signature: v1=<hmac-sha256>