API di axe Monitor
Introduzione
L'API di axe Monitor offre agli sviluppatori un modo semplificato per interagire con i dati dei risultati dei test di accessibilità al di fuori dell'interfaccia utente di axe Monitor. Utilizzando servizi web RESTful, l'API fornisce accesso a:
- Scansioni per un utente
- Esecuzioni di Scansione per una Scansione
- Dettagli della Pagina per un'Esecuzione di Scansione
- Dettagli dei Problemi per un Esecuzione della Scansione
- Dettagli dei Problemi per una Pagina
Gli utenti con licenza di axe Monitor possono utilizzare l'API con applicazioni esterne, a condizione che l'uso rispetti il Contratto di Licenza di Sottoscrizione.
Per iniziare
-
Crea una chiave API tramite axe Account.
Consulta le istruzioni specifiche per la regione fornite di seguito:
-
Account axe nella regione US: axe.deque.com - Per creare una chiave API, fai clic su questo link: Crea una chiave API.
-
Account axe nella regione EU: axe-eu.deque.com - Per creare una chiave API, fai clic su questo link: Crea una chiave API.
-
Account axe nella regione AUS: axe-au.deque.com - Per creare una chiave API, fai clic su questo link: Crea una chiave API.
Esegui i seguenti passaggi per generare la tua chiave API:
-
Nella pagina delle chiavi API nell'account axe, seleziona il pulsante „Aggiungi nuova chiave API“
. Viene visualizzata la finestra di dialogo AGGIUNGI NUOVA CHIAVE API. -
Seleziona axe Monitor dal menu a tendina del prodotto, dai un nome alla tua chiave API e seleziona il pulsante Salva.
-
Sotto la colonna Azioni, copia la chiave API negli appunti.
-
-
Inserisci l'URL di base dell'API: Usando la tua piattaforma API preferita, come Postman o SwaggerUI, o la tua directory di lavoro, accedi all’API di axe Monitor. Sostituisci “yourcompany” con il sottodominio per la tua istanza di axe Monitor.
https://yourcompany.dequecloud.com/monitor-public-api/v1/{endpoint}Aggiungi intestazioni:
Per accedere all'API, è necessario autenticarsi utilizzando la chiave API fornita da axe Account.
X-API-Key: <your_api_key>Parametri opzionali dell'intestazione
| Nome | Tipo | Descrizione |
|---|---|---|
| X-Pagination-Per-Page | Intero | Il numero massimo di elementi restituiti in una singola pagina. Valore predefinito: 10 |
| X-Pagination-Page | Intero | Il numero della pagina richiesta. Valore predefinito: 1 |
Esempio di Richiesta CURL
curl -X 'GET' \
'https://{base_url}/monitor-public-api/v1/scans/1/runs/1/issues?sortBy=testPageTitle&sortDir=desc' \
-H 'accept: application/json' \
-H 'X-API-Key: <your_api_key>'Endpoint
Tutti gli endpoint possono recuperare informazioni con richieste GET.
| Endpoint | Scopo |
|---|---|
/scans |
Elenca tutte le scansioni a cui un utente può accedere. Ti consente di recuperare scanId. |
/scans/[scanId]/runs |
Elenca tutte le esecuzioni di scansione per una scansione, con informazioni di riepilogo della scansione. Ti consente di recuperare il runId. |
/scans/[scanId]/runs/[runId]/pages |
Informazioni dettagliate sulla pagina per un'esecuzione di scansione |
/scans/[scanId]/runs/[runId]/pages/[pageId]/issues |
Problemi di accessibilità dettagliati per una pagina |
/scans/[scanId]/runs/[runId]/issues |
Problemi di accessibilità dettagliati per un'esecuzione di scansione |
Elenca Scansioni per un Utente
Esempio di Richiesta
GET
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans
X-API-Key: <your_api_key>Esempio di risposta
{
"scans": [
"id": 1,
"name": "Test Scan",
"groups": [
"id": 1,
"name": "Group A"
]
]
}Risposta di Errore di Esempio
Esecuzioni di Scansione per una Scansione
Esempio di Richiesta
GET
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans/[scanId]/runs
X-API-KEY: <your_api_key>Parametri Richiesti
| Nome | Tipo | Descrizione |
|---|---|---|
| scanId | Stringa | L'identificatore unico della scansione. |
Parametri Opzionali
| Nome | Tipo | Descrizione |
|---|---|---|
| needsReview | Stringa | “vero” o “falso” ti consente di controllare se i problemi “Da esaminare” sono conteggiati nella risposta. |
Esempio di risposta
{
"scanRuns": [
{
"runNumber": 1,
"status": "Completed",
"queuedAt": "2025-08-21T06:50:27Z",
"startedAt": "2025-08-21T06:50:37Z",
"completedAt": "2025-08-21T06:51:52Z",
"axeVersion": "4.10.3",
"standard": "WCAG 2.1 AA",
"score": 0,
"issues": {
"total": 392,
"critical": 77,
"serious": 315,
"moderate": 0,
"minor": 0
},
"pages": {
"total": 18,
"completed": 17,
"critical": 17
},
"violationGroups": [
{
"name": "color",
"pageCount": 17
},
{
"name": "forms",
"pageCount": 17
},
{
"name": "name-role-value",
"pageCount": 10
},
{
"name": "parsing",
"pageCount": 1
},
{
"name": "text-alternatives",
"pageCount": 13
}
]
}
]
}Nota: Se la tua scansione ha una o più frasi inserite nell'impostazione “Trova testo”, la risposta dell'API include un array findText.
Ogni voce contiene:
- La frase inserita.
- Il numero di pagine in cui la frase è stata identificata.
Dettagli della Pagina per un'Esecuzione di Scansione
Esempio di Richiesta
GET https://yourcompany.dequecloud.com/monitor-public-api/v1/scans/[scanId]/runs/[runNumber]/pages
X-API-KEY: <your_api_key>Parametri di Percorso Richiesti
| Nome | Tipo | Descrizione |
|---|---|---|
| scanId | Stringa | L'identificatore unico della scansione. |
| runNumber | Intero | Il numero specifico di esecuzione della scansione. |
Parametri di richiesta opzionali
| Nome | Tipo | Descrizione |
|---|---|---|
| stato | stringa | Filtra le pagine per stato (Completato, Fallito). |
| ordinaPer | Stringa | Specifica la colonna per l'ordinamento (titolo, url). Il valore predefinito è titolo |
| ordine | Stringa | Specifica la direzione dell'ordinamento (asc o desc). Il valore predefinito è desc. |
Esempio di risposta
{
"pages": [
{
"id": 0,
"url": "string",
"title": "string",
"reasonForFailure": "string",
"totalCriticalIssues": 0,
"totalSeriousIssues": 0,
"totalModerateIssues": 0,
"totalMinorIssues": 0,
"totalNeedsReview": 0,
"totalFixedIssues": 0,
"totalOpenIssues": 0,
"health": "string",
"status": "string",
"scriptName": "string",
"scriptStep": 0,
"template": true,
"date": "2024-12-02T15:03:40.211Z",
"domainUrl": "string"
"findtext"
[ "Accessibility Statement",
"WCAG"
}
]
}Nota: Quando l'impostazione Trova testo è abilitata per la scansione, l'array contiene tutte le frasi dall'impostazione “Trova testo” che sono state identificate su quella pagina.
Dettagli dei Problemi per una Pagina
Esempio di Richiesta
GET
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans/[scanId]/runs/[runNumber]/pages/[pageId]/issues
X-API-KEY: <your_api_key>Parametri Richiesti
| Nome | Tipo | Descrizione |
|---|---|---|
| scanId | Stringa | L'identificatore unico della scansione. |
| runNumber | Intero | Il numero specifico di esecuzione della scansione. |
| pageId | Stringa | L'identificatore unico della pagina. |
Parametri Opzionali
| Nome | Tipo | Descrizione |
|---|---|---|
| stato | stringa | Filtra i problemi per stato (aperti, risolti o ignorati). |
| ordinaPer | Stringa | Specifica la colonna per ordinare (titoloPaginaTest, urlTest, selettore, creatoIl o stato). Il valore predefinito è titoloPaginaTest. |
| ordine | Stringa | Specifica la direzione dell'ordinamento (asc o desc). Il valore predefinito è desc. |
Esempio di risposta
{
"issues": [
{
"issueId": 0,
"ruleId": "string",
"axeRuleId": "string",
"description": "string",
"help": "string",
"helpUrl": "string",
"impact": "string",
"issueGrouping": "string",
"needsReview": true,
"isExperimental": true,
"isManual": true,
"summary": "string",
"selector": [
"string"
],
"source": "string",
"tags": [
"string"
],
"igt": "string",
"testName": "string",
"createdAt": "2026-07-10T06:17:38.854Z",
"testUrl": "string",
"testPageTitle": "string",
"status": "string"
}
]
}
Dettagli dei Problemi per un Esecuzione della Scansione
Esempio di Richiesta
GET
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans/{scanId}/runs/{runNumber}/issues
X-API-KEY: <your_api_key>Parametri Richiesti
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| scanId | Stringa | Sì | L'identificatore unico della scansione. |
| runNumber | Intero | Sì | Il numero specifico di esecuzione della scansione. |
Parametri di richiesta opzionali
| Nome | Tipo | Obbligatorio | Descrizione |
|---|---|---|---|
| stato | stringa | No | Filtra i problemi per stato (aperti, risolti o ignorati). |
| ordinaPer | Stringa | No | Specifica la colonna per ordinare (titoloPaginaTest, urlTest, selettore, creatoIl o stato). Il valore predefinito è titoloPaginaTest. |
| ordine | Stringa | No | Specifica la direzione dell'ordinamento (asc o desc). Il valore predefinito è desc. |
Esempio di risposta
{
"issues": [
{
"issueId": 0,
"ruleId": "string",
"axeRuleId": "string",
"description": "string",
"help": "string",
"helpUrl": "string",
"impact": "string",
"issueGrouping": "string",
"needsReview": true,
"isExperimental": true,
"isManual": true,
"summary": "string",
"selector": [
"string"
],
"source": "string",
"tags": [
"string"
],
"igt": "string",
"testName": "string",
"createdAt": "2026-07-10T06:17:38.854Z",
"testUrl": "string",
"testPageTitle": "string",
"status": "string"
}
]
}Errori
| Codice di stato HTTP | Tipo di errore | Descrizione |
|---|---|---|
| 401 | Non autorizzato | L'utente non è autenticato o manca dei diritti di accesso. |
| 400 | Richiesta non valida | La richiesta contiene parametri non validi. |
| 500 | Errore interno del server | Si è verificato un errore durante l'elaborazione della richiesta. |
