API du axe Monitor

This page is not available in the language you requested. You have been redirected to the English version of the page.
Link to this page copied to clipboard
Not for use with personal data

Introduction

L'API axe Monitor offre aux développeurs un moyen simplifié d'interagir avec les données de résultats des tests d'accessibilité en dehors de l'interface utilisateur d'axe Monitor. En utilisant les services Web RESTful, l'API donne accès à :

  • Analyses pour un utilisateur
  • Exécutions d'analyse pour une analyse
  • Détails de la page pour une exécution d'analyse
  • Détails du problème pour une analyse
  • Détails du problème pour une page

Les utilisateurs sous licence d'axe Monitor peuvent utiliser l'API avec des applications externes, à condition que l'utilisation soit conforme au contrat de licence d'abonnement.

Pour commencer

  1. Créer une clé API via axe Account.
    1. Sur la page Clés API dans axe Account, sélectionnez le bouton « Ajouter une nouvelle clé API ».
    2. Une fenêtre modale apparaîtra. Sélectionnez axe Monitor dans la liste déroulante du produit, nommez votre clé API et sélectionnez le bouton Enregistrer.
    3. Sous la colonne Actions, copiez la clé API dans votre presse-papiers.
  2. Saisissez l'URL de base de l'API : À l'aide de votre plateforme API préférée, telle que Postman ou SwaggerUI, ou de votre répertoire de travail, accédez à l'API axe Monitor. Remplacez « votreentreprise » par le sous-domaine de votre instance axe Monitor.
https://yourcompany.dequecloud.com/monitor-public-api/v1/{endpoint}
  1. Ajouter des en-têtes :

    Pour accéder à l'API, vous devez vous authentifier à l'aide de la clé API du compte axe.

X-API-Key: <your_api_key>

Paramètres d'en-tête facultatifs

Nom Type Description
X-Pagination-Per-Page Integer Valeur par défaut : 10 Le nombre maximum d'éléments renvoyés sur une seule page
X-Pagination-Page Integer Valeur par défaut : 1 Le numéro de page demandé

Exemple de requête 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-KeyAuthorization: <your_api_key>' '

Points de terminaison

Tous les points de terminaison peuvent récupérer des informations avec des requêtes GET.

Endpoint Objectif
/scans Répertoriez toutes les analyses auxquelles un utilisateur peut accéder. Permet de récupérer scanId.
/scans/[scanId]/runs Répertoriez toutes les exécutions d'analyse pour une analyse, avec des informations d'aperçu de l'analyse. Permet de récupérer le runId.
/scans/[scanId]/runs/[runId]/pages Informations détaillées sur la page pour une exécution d'analyse
/scans/[scanId]/runs/[runId]/pages/[pageId]/issues Problèmes d'accessibilité détaillés pour une page
/scans/[scanId]/runs/[runId]/issues Problèmes d'accessibilité détaillés pour une analyse

Lister les analyses pour un utilisateur

Exemple de demande

GET
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans
X-API-Key: <your_api_key>

Exemple de réponse

{
  "scans": [
    "id": 1,
    "name": "Test Scan",
    "groups": [
        "id": 1,
        "name": "Group A"
    ]
  ]
}

Exemple de réponse d'erreur

Exécutions de scan pour une analyse

Exemple de demande

GET
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans/[scanId]/runs
X-API-KEY: <your_api_key>

Paramètres requis

Nom Type Description
scanId String L'identifiant unique du scan.

Paramètres optionnels

Nom Type Description
needsReview String « true » ou « false » vous permet de contrôler si les problèmes « Nécessite une révision » sont comptabilisés dans la réponse.

Exemple de réponse


{
  "runs": [
    {
      "runNumber" : 1,
      "status" : "Complete",
      "queuedAt": "2024-09-30T05:11:42Z",
      "startedAt": "2024-09-30T05:11:45Z",
      "completedAt": "2024-09-30T05:12:30Z",
      "totalIssueCount": 29,
      "completedPages": 1,
      "axeVersion" : "4.9.0",
      "standard" : "WCAG 2.2 AA"
“score”: “0”
“issues”: “28” 
[ "criticalissues": “20”,
"seriousissues": “2”,
"moderateissues": “4”,
"minorissues": “2”, 
]
pages: “40”
[ "criticalpages": “20”,
“aria”: “2”,
“color”: “2”,
“forms”: “2”,
“keyboard”: “2”,
“language”: “2”,
“namerolevalue”: “2”,
“pdf”: “2”,
“parsing”: “2”,
“semantics”: “2”,
“sensoryvisual”: “2”,
“structure”: “2”,
“tables”: “2”,
“alttext”: “2”,
“timemedia”: “2” 
]
    }
  ]
}

Détails de l'exécution d'une analyse pour une page

Exemple de demande

GET https://yourcompany.dequecloud.com/monitor-public-api/v1/scans/[scanId]/runs/[runNumber]/pages X-API-KEY: <your_api_key>

Paramètres de chemin requis

Nom Type Description
scanId String L'identifiant unique du scan.
runNumber Integer Le numéro d'exécution spécifique de l'analyse.

Paramètres de demande facultatifs

Nom Type Description
status String Filtre les pages par statut (Terminé, Échec).
sortBy String Spécifie la colonne par laquelle trier (titre, URL). La valeur par défaut est le titre
order String Spécifie le sens de tri (asc ou desc). La valeur par défaut est desc.

Exemple de réponse

{
  "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"
    }
  ]
}

Détails du problème pour une page

Exemple de demande

GET 
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans/[scanId]/runs/[runNumber]/pages/[pageId]/issues
X-API-KEY: <your_api_key>

Paramètres requis

Nom Type Description
scanId String L'identifiant unique du scan.
runNumber Integer Le numéro d'exécution spécifique de l'analyse.
pageId String L'identifiant unique de la page.

Paramètres optionnels

Nom Type Description
status String Filtre les problèmes par statut (ouvert, résolu ou ignoré).
sortBy String Spécifie la colonne par laquelle trier (testPageTitle, testUrl, sélecteur, createdAt ou statut). La valeur par défaut est testPageTitle.
order String Spécifie le sens de tri (asc ou desc). La valeur par défaut est desc.

Exemple de réponse

{
  "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"
    }
  ]
}

Détails du problème pour une exécution d'analyse

Exemple de demande


GET 
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans/[scanId]/runs/[runNumber]/pages/[pageId]/issues
X-API-KEY: <your_api_key>

Paramètres requis

Nom Type Obligatoire Description
scanId String Oui L'identifiant unique du scan.
runNumber Integer Oui Le numéro d'exécution spécifique de l'analyse.
pageId String Oui L'identifiant unique de la page.

Paramètres de demande facultatifs

Nom Type Obligatoire Description
status String Non Filtre les problèmes par statut (ouvert, résolu ou ignoré).
sortBy String Non Spécifie la colonne par laquelle trier (testPageTitle, testUrl, sélecteur, createdAt ou statut). La valeur par défaut est testPageTitle.
order String Non Spécifie le sens de tri (asc ou desc). La valeur par défaut est desc.

Exemple de réponse

{
  "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"
    }
  ]
}

Erreurs

Code d'état HTTP Type d'erreur Description
401 Non autorisé L'utilisateur n'est pas authentifié ou ne dispose pas de droits d'accès.
400 Demande invalide La demande contient des paramètres non valides.
500 Erreur interne du serveur Une erreur s'est produite lors du traitement de la demande.