Créer, Modifier et Exécuter des Analyses via l'API
Les administrateurs d'Axe Monitor peuvent générer une clé API dans Axe Account et créer, modifier ou exécuter des analyses systématiquement, sans utiliser l'interface utilisateur.
En savoir plus sur Commencer.
Points de Terminaison
| Méthode | Point de Terminaison | Objectif |
|---|---|---|
| POST | /scans |
Créer une analyse. |
| PATCH | /scans/[scanId] |
Modifier un ou plusieurs paramètres d'une analyse. |
| POST | /scans/[scanId]/runs |
Mise en file d'attente d'une nouvelle exécution. |
Créer une Analyse
Crée une analyse à partir d'un seul objet de paramètres d'analyse. Pour créer plusieurs analyses à la fois, envoyez une demande par analyse.
Remarque : Pour sécuriser vos identifiants, l'API n'accepte pas les mots de passe, les fichiers de keystore ou les valeurs des variables d'environnement. Ajoutez ces valeurs dans l'interface utilisateur d'Axe Monitor dans les détails de connexion de l'analyse.
Exemple de Requête
GET
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans
X-API-Key: <your_api_key>
Content-Type: application/jsonParamètres Requis
| Nom | Type | Description |
|---|---|---|
| nom | String | Le nom de l'analyse. |
| sites | String | Les URL de départ pour l'analyse. Requis uniquement s'il n'y a pas de scripts sur l'analyse. |
| axeCoreVersion | String | La version de axe-core utilisée pour l'analyse. Utilisez une valeur version de GET /axe-versions. |
| standardLevel | String | La norme d'accessibilité contre laquelle tester, par exemple wcag22aa. |
| profondeur | Entier | Combien de niveaux de liens explorer à partir des URL de départ. |
| limiteDePages | Entier | Le nombre maximum de pages analysées à chaque exécution. |
Paramètres Optionnels
Des paramètres d'analyse supplémentaires peuvent être utilisés avec le point de terminaison Créer une Analyse. Consulter la documentation des Paramètres d'Analyse.
Exemple de Requête
{
"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
}Exemple de Réponse
Statut : 201 Créé
{
"scanId": 12345
}Utilisez le [scanId] retourné pour lire, modifier ou exécuter l'analyse.
Remarque : L'API n'accepte pas les mots de passe, les keystores ou les valeurs des variables d'environnement. Si votre analyse se connecte à un site ou exécute des scripts nécessitant des valeurs secrètes, créez l'analyse via l'API, puis ajoutez ces valeurs dans axe Monitor sous Paramètres Avancés, Débuter une session.
Réponses d'Erreur
| Code Statut HTTP | Code d'Erreur | Quand cela se produit |
|---|---|---|
| 400 | out_of_range |
Un nombre est en dehors de sa plage autorisée. |
| 400 | unknown_version |
axeCoreVersion n'est pas disponible dans votre instance. |
| 400 | conflicting_pdf_config |
pdfTarget est défini, mais application/pdf est dans excludeMimeTypes. |
| 400 | conflicting_url_scope |
ignoreAllParams est vrai et meaningfulParams ou meaninglessParams n'est pas vide. |
| 400 | unknown_reference |
Un groupe de scan ou une équipe n'existe pas. |
Modifier un Scan
Met à jour un ou plusieurs paramètres d'un scan existant. Envoyez uniquement les paramètres que vous souhaitez modifier ; les paramètres que vous omettez conservent leurs valeurs actuelles.
Remarque :
- Certains paramètres nécessitent des identifiants pour être modifiés. Consultez la documentation pour obtenir les identifiants.
- Lorsqu'un scan a un préréglage appliqué, certains paramètres peuvent ne pas être modifiables. Consultez la documentation des préréglages.
- Consultez la liste complète des paramètres de scan qui peuvent être modifiés via l'API.
Exemple de Requête
PATCH
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans/[scanId]/settings
X-API-Key: <your_api_key>
Content-Type: application/jsonParamètres Requis
| Nom | Type | Description |
|---|---|---|
| scanId | Entier | L'identifiant unique du scan. |
Au moins un paramètre supplémentaire est nécessaire pour effectuer une modification. Consultez la documentation des Paramètres de Scan .
Remarque :
- « null » réinitialise un champ à sa valeur par défaut
- Les tableaux remplacent la valeur stockée
Exemple de Requête
{
"name": "Marketing Site - Production (weekly)",
"depth": 4,
"pageLimit": 250
}Exemple de Réponse
Statut : 200 OK
{
"scanId": 12345,
"updatedFields": ["name", "depth", "pageLimit"]
}updatedFields liste les paramètres qui ont changé.
Réponse d'erreur
| Code Statut HTTP | Code d'Erreur | Quand cela se produit |
|---|---|---|
| 400 | field_locked_by_preset |
Le préréglage appliqué au scan verrouille ce paramètre. |
| 400 | field_not_editable |
Le paramètre ne peut pas être modifié après la création du scan. |
Lancer un Exécution de Scan
Met en file d'attente un nouvel exécution d'un scan existant. L'exécution commence lorsque axe Monitor la prend de la file d'attente. Pour vérifier sa progression, utilisez GET /scans/[scanId]/runs.
Exemple de Requête
POST
https://yourcompany.dequecloud.com/monitor-public-api/v1/scans/[scanId]/runs
X-API-Key: <your_api_key>Paramètres Requis
| Nom | Type | Description |
|---|---|---|
| scanId | Entier | L'identifiant unique du scan. |
Exemple de Réponse
Statut : 202 Accepté
La réponse n'a pas de corps.
Exemple de Réponse d'Erreur
{
"title": "Bad Request",
"status": 400,
"detail": "Couldn't queue job since it's already running",
"instance": "/v1/scans/20/runs"
}Réponses d'Erreur
| Code Statut HTTP | Description |
|---|---|
| 400 | Le scan est déjà en cours d'exécution. Attendez que le cycle actuel soit terminé, puis réessayez. |
| 404 | Le scan n'existe pas. |
