Creare, Modificare ed Eseguire Scansioni tramite API
Gli amministratori di Axe Monitor possono generare una chiave API in Axe Account e creare, modificare o eseguire scansioni sistematicamente, senza utilizzare l'interfaccia utente.
Scopri di più su Per iniziare.
Endpoint
| Metodo | Endpoint | Scopo |
|---|---|---|
| POST | /scans |
Crea una scansione. |
| PATCH | /scans/[scanId] |
Modifica una o più impostazioni di una scansione. |
| POST | /scans/[scanId]/runs |
Mette in coda una nuova esecuzione. |
Creare una Scansione
Crea una scansione partendo da un singolo oggetto di impostazioni di scansione. Per creare più scansioni contemporaneamente, invia una richiesta per ciascuna scansione.
Nota: Per mantenere sicure le tue credenziali, l'API non accetta password, file del keystore o valori di variabili d'ambiente. Aggiungi questi valori nell'interfaccia utente di Axe Monitor nei dettagli di accesso della scansione.
Esempio di Richiesta
GET
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans
X-API-Key: <your_api_key>
Content-Type: application/jsonParametri Obbligatori
| Nome | Tipo | Descrizione |
|---|---|---|
| name | Stringa | Il nome della scansione. |
| sites | Stringa | Gli URL iniziali per la scansione. Richiesto solo se non ci sono script nella scansione. |
| axeCoreVersion | Stringa | La versione di axe-core con cui eseguire la scansione. Usa un valore version da GET /axe-versions. |
| standardLevel | Stringa | Lo standard di accessibilità da testare, per esempio wcag22aa. |
| depth | Intero | Quanti livelli di collegamento analizzare dagli URL iniziali. |
| pageLimit | Intero | Il numero massimo di pagine scansionate in ogni esecuzione. |
Impostazioni Opzionali
Impostazioni aggiuntive della scansione possono essere usate con l'endpoint Create Scan. Visualizza la documentazione delle Impostazioni della Scansione.
Esempio di Richiesta
{
"name": "Marketing Site - Production",
"sites": ["https://www.example.com"],
"axeCoreVersion": "latest",
"standardLevel": "wcag22aa",
"standardOptions": ["best-practice"],
"depth": 3,
"pageLimit": 100,
"skipSpecificUrls": ["https://www.example.com/logout"],
"teams": [
{ "name": "Digital Accessibility Team" }
],
"notifyGroup": true
}Esempio di Risposta
Stato: 201 Creato
{
"scanId": 12345
}Usa il [scanId] restituito per leggere, modificare o eseguire la scansione.
Nota: L'API non accetta password, keystores o valori di variabili d'ambiente. Se la tua scansione accede a un sito o esegue script che necessitano di valori segreti, crea la scansione tramite API, quindi aggiungi questi valori in Axe Monitor sotto Impostazioni Avanzate, Avvio di una sessione.
Risposte di Errore
| Codice di Stato HTTP | Codice di Errore | Quando si verifica |
|---|---|---|
| 400 | out_of_range |
Un numero è fuori dal range consentito. |
| 400 | unknown_version |
axeCoreVersion non è disponibile nella tua istanza. |
| 400 | conflicting_pdf_config |
pdfTarget è impostato, ma application/pdf è in excludeMimeTypes. |
| 400 | conflicting_url_scope |
ignoreAllParams è true e meaningfulParams o meaninglessParams non è vuoto. |
| 400 | unknown_reference |
Un gruppo di scansione o un team non esiste. |
Modifica una Scansione
Aggiorna una o più impostazioni di una scansione esistente. Invia solo le impostazioni che desideri modificare; le impostazioni che lasci fuori manterranno i loro valori attuali.
Nota:
- Alcune impostazioni richiedono ID per essere modificate. Consulta la documentazione per ottenere gli ID.
- Quando una scansione ha un preset applicato, alcune impostazioni potrebbero non essere modificabili. Consulta la documentazione dei preset.
- Consulta l'elenco completo delle impostazioni della scansione che possono essere modificate via API.
Esempio di Richiesta
PATCH
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans/[scanId]/settings
X-API-Key: <your_api_key>
Content-Type: application/jsonParametri Obbligatori
| Nome | Tipo | Descrizione |
|---|---|---|
| scanId | Intero | L'identificatore univoco della scansione. |
È richiesta almeno un'ulteriore impostazione per effettuare una modifica. Consulta la documentazione delle impostazioni della scansione.
Nota:
- ‘null’ reimposta un campo ai suoi valori predefiniti
- Gli array sostituiscono il valore memorizzato
Esempio di Richiesta
{
"name": "Marketing Site - Production (weekly)",
"depth": 4,
"pageLimit": 250
}Esempio di Risposta
Stato: 200 OK
{
"scanId": 12345,
"updatedFields": ["name", "depth", "pageLimit"]
}updatedFields elenca le impostazioni che sono cambiate.
Risposta di Errore
| Codice di Stato HTTP | Codice di Errore | Quando si verifica |
|---|---|---|
| 400 | field_locked_by_preset |
Il preset applicato alla scansione blocca questa impostazione. |
| 400 | field_not_editable |
L'impostazione non può essere modificata dopo che la scansione è stata creata. |
Avvia un Esecuzione di Scansione
Mette in coda un nuovo esecuzione di una scansione esistente. L'esecuzione inizia quando axe Monitor la preleva dalla coda. Per controllare il suo progresso, usa GET /scans/[scanId]/runs.
Esempio di Richiesta
POST
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans/[scanId]/runs
X-API-Key: <your_api_key>Parametri Obbligatori
| Nome | Tipo | Descrizione |
|---|---|---|
| scanId | Intero | L'identificatore univoco della scansione. |
Esempio di Risposta
Stato: 202 Accettato
La risposta non ha contenuti.
Esempio di Risposta di Errore
{
"title": "Bad Request",
"status": 400,
"detail": "Couldn't queue job since it's already running",
"instance": "/v1/scans/20/runs"
}Risposte di Errore
| Codice di Stato HTTP | Descrizione |
|---|---|
| 400 | La scansione è già in esecuzione. Attendi che l'esecuzione corrente finisca, quindi riprova. |
| 404 | La scansione non esiste. |
