axe Monitor API
Einführung
Die axe Monitor API bietet Entwicklern eine einfache Möglichkeit, mit den Daten der Barrierefreiheitstest-Ergebnisse außerhalb der axe Monitor-Benutzeroberfläche zu interagieren. Mit RESTful-Webdiensten bietet die API Zugriff auf:
- Scans für einen Benutzer
- Scan-Durchläufe für einen Scan
- Seitendetails für einen Scan-Durchlauf
- Problemdetails für einen Scan-Durchlauf
- Problemdetails für eine Seite
Lizenzierte axe Monitor-Benutzer können die API mit externen Anwendungen verwenden, vorausgesetzt, die Nutzung entspricht dem Subscription License Agreement.
Erste Schritte
-
Erstellen Sie einen API-Schlüssel über axe-Konto.
Beachten Sie die folgenden regionsspezifischen Anweisungen:
-
axe-Konto in der US-Region: axe.deque.com - Um einen API-Schlüssel zu erstellen, klicken Sie auf diesen Link: API-Schlüssel erstellen.
-
axe-Konto in der EU-Region: axe-eu.deque.com - Um einen API-Schlüssel zu erstellen, klicken Sie auf diesen Link: API-Schlüssel erstellen.
-
axe-Konto in der AUS-Region: axe-au.deque.com - Um einen API-Schlüssel zu erstellen, klicken Sie auf diesen Link: API-Schlüssel erstellen.
Führen Sie die folgenden Schritte aus, um Ihren API-Schlüssel zu generieren:
-
Wählen Sie auf der API-Schlüssel-Seite im axe-Konto die Schaltfläche „Neuen API-Schlüssel hinzufügen“ aus.
Der Dialog NEUEN API-SCHLÜSSEL HINZUFÜGEN erscheint. -
Wählen Sie axe Monitor aus dem Produkt-Dropdown aus, benennen Sie Ihren API-Schlüssel und wählen Sie die Schaltfläche Speichern.
-
Kopieren Sie unter der Spalte Aktionen den API-Schlüssel in die Zwischenablage.
-
-
Geben Sie die API-Basis-URL ein: Verwenden Sie Ihre bevorzugte API-Plattform, wie Postman oder SwaggerUI, oder Ihr Arbeitsverzeichnis, um auf die axe Monitor API zuzugreifen. Ersetzen Sie „yourcompany“ durch die Subdomain für Ihre axe Monitor-Instanz.
https://yourcompany.dequecloud.com/monitor-public-api/v1/{endpoint}Kopfzeilen hinzufügen:
Um auf die API zuzugreifen, müssen Sie sich mit dem API-Schlüssel aus dem axe-Konto authentifizieren.
X-API-Key: <your_api_key>Optionale Header-Parameter
| Name | Typ | Beschreibung |
|---|---|---|
| X-Pagination-Per-Page | Ganzzahl | Die maximale Anzahl von Elementen, die auf einer Seite zurückgegeben werden. Standardwert: 10 |
| X-Pagination-Page | Ganzzahl | Die angeforderte Seitenzahl. Standardwert: 1 |
Beispielhafte CURL-Anfrage
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>'Endpunkte
Alle Endpunkte können Informationen mit GET-Anfragen abrufen.
| Endpunkt | Zweck |
|---|---|
/scans |
Liste aller Scans, auf die ein Benutzer zugreifen kann. Ermöglicht das Abrufen von scanId. |
/scans/[scanId]/runs |
Liste aller Scanläufe für einen Scan mit Übersichtsinformationen zum Scan. Ermöglicht das Abrufen der runId. |
/scans/[scanId]/runs/[runId]/pages |
Detaillierte Seiteninformationen für einen Scanlauf |
/scans/[scanId]/runs/[runId]/pages/[pageId]/issues |
Detaillierte Zugänglichkeitsprobleme für eine Seite |
/scans/[scanId]/runs/[runId]/issues |
Detaillierte Zugänglichkeitsprobleme für einen Scanlauf |
Scans für einen Benutzer auflisten
Beispielanfrage
GET
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans
X-API-Key: <your_api_key>Beispielantwort
{
"scans": [
"id": 1,
"name": "Test Scan",
"groups": [
"id": 1,
"name": "Group A"
]
]
}Beispiel Fehlerantwort
Scanläufe für einen Scan
Beispielanfrage
GET
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans/[scanId]/runs
X-API-KEY: <your_api_key>Erforderliche Parameter
| Name | Typ | Beschreibung |
|---|---|---|
| scanId | String | Der eindeutige Bezeichner des Scans. |
Optionale Parameter
| Name | Typ | Beschreibung |
|---|---|---|
| needsReview | String | „true“ oder „false“ ermöglicht die Steuerung, ob „Überprüfung erforderlich“ Probleme in die Antwort einbezogen werden. |
Beispielantwort
{
"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
}
]
}
]
}Hinweis: Wenn Ihr Scan ein oder mehrere Phrasen im „Text finden“ Einstellung eingegeben hat, enthält die API-Antwort ein findText-Array.
Jeder Eintrag enthält:
- Die eingegebene Phrase.
- Die Anzahl der Seiten, auf denen die Phrase identifiziert wurde.
Seitendetails für einen Scanlauf
Beispielanfrage
GET https://yourcompany.dequecloud.com/monitor-public-api/v1/scans/[scanId]/runs/[runNumber]/pages
X-API-KEY: <your_api_key>Erforderliche Pfadparameter
| Name | Typ | Beschreibung |
|---|---|---|
| scanId | String | Der eindeutige Bezeichner des Scans. |
| runNumber | Integer | Die spezifische Laufnummer des Scans. |
Optionale Anfrageparameter
| Name | Typ | Beschreibung |
|---|---|---|
| status | string | Filtert Seiten nach Status (Abgeschlossen, Fehlgeschlagen). |
| sortBy | String | Gibt die Spalte an, nach der sortiert werden soll (Titel, URL). Standardwert ist Titel. |
| order | String | Gibt die Sortierrichtung an (asc oder desc). Standardwert ist desc. |
Beispielantwort
{
"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"
}
]
}Hinweis: Wenn die „Text suchen“-Einstellung für den Scan aktiviert ist, enthält das Array alle Phrasen aus der Einstellung „Text suchen“, die auf dieser Seite gefunden wurden.
Details zu Problemen für eine Seite
Beispielanfrage
GET
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans/[scanId]/runs/[runNumber]/pages/[pageId]/issues
X-API-KEY: <your_api_key>Erforderliche Parameter
| Name | Typ | Beschreibung |
|---|---|---|
| scanId | String | Die eindeutige Kennung des Scans. |
| runNumber | Integer | Die spezifische Laufnummer des Scans. |
| pageId | String | Die eindeutige Kennung der Seite. |
Optionale Parameter
| Name | Typ | Beschreibung |
|---|---|---|
| status | string | Filtert Probleme nach Status (offen, behoben oder ignoriert). |
| sortBy | String | Gibt die Spalte an, nach der sortiert werden soll (testPageTitle, testUrl, selector, createdAt oder status). Standardwert ist testPageTitle. |
| order | String | Gibt die Sortierrichtung an (asc oder desc). Standardwert ist desc. |
Beispielantwort
{
"issues": [
{
"issueId": 0,
"ruleId": "string",
"description": "string",
"help": "string",
"helpUrl": "string",
"impact": "string",
"issuegroup”: “string"
"needsReview": true,
"isExperimental": true,
"isManual": true,
"summary": "string",
"selector": [
"string"
],
"source": "string",
"tags": [
"string"
],
"igt": "string",
"testName": "string",
"createdAt": "2024-12-02T14:59:24.232Z",
"testUrl": "string",
"testPageTitle": "string",
"status": "string"
}
]
}
Details zu Problemen für einen Scanlauf
Beispielanfrage
GET
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans/{scanId}/runs/{runNumber}/issues
X-API-KEY: <your_api_key>Erforderliche Parameter
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
| scanId | String | Ja | Die eindeutige Kennung des Scans. |
| laufNummer | Ganzzahl | Ja | Die spezifische Laufnummer des Scans. |
Optionale Anfrageparameter
| Name | Typ | Erforderlich | Beschreibung |
|---|---|---|---|
| status | Zeichenkette | Nein | Filtert Probleme nach Status (offen, behoben oder ignoriert). |
| sortBy | Zeichenkette | Nein | Gibt die Spalte an, nach der sortiert werden soll (testPageTitle, testUrl, selector, createdAt oder status). Standardwert ist testPageTitle. |
| order | Zeichenkette | Nein | Gibt die Sortierrichtung an (asc oder desc). Standardwert ist desc. |
Beispielantwort
{
"issues": [
{
"issueId": 0,
"ruleId": "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": "2025-08-07T10:54:30.268Z",
"testUrl": "string",
"testPageTitle": "string",
"status": "string"
}
]
}Fehler
| HTTP-Statuscode | Fehlertyp | Beschreibung |
|---|---|---|
| 401 | Nicht autorisiert | Der Benutzer ist nicht authentifiziert oder besitzt keine Zugriffsrechte. |
| 400 | UngültigeAnfrage | Die Anfrage enthält ungültige Parameter. |
| 500 | Interner Serverfehler | Beim Verarbeiten der Anfrage ist ein Fehler aufgetreten. |
