Validateur de contrat de reponse API

Valide une reponse JSON reelle contre le schema de reponse defini dans OpenAPI 3.x

Collez un document OpenAPI 3.x et une reponse API reelle, puis indiquez le path, la methode et le code HTTP. Loutil resolve le schema de reponse correspondant et signale les champs manquants, erreurs de type, enums invalides et champs non documentes.

Mode demploi :

  • Spec OpenAPI : collez YAML ou JSON
  • JSON de reponse : collez la charge reelle
  • Chemin / Methode / Code HTTP : identifiez loperation et la reponse
  • Format du spec : gardez auto si besoin
  • Interdire les champs en trop : avertit sur les champs hors schema

Exemples de résultats

1 Exemples

Verifier quune reponse reelle suit encore le schema utilisateur

Compare une reponse JSON reelle au contrat OpenAPI pour detecter champs manquants ou derives.

Contract validation issues
Voir paramètres d'entrée
{ "openApiSpec": "openapi: 3.0.3\npaths:\n /users/{id}:\n get:\n responses:\n \"200\":\n description: ok\n content:\n application/json:\n schema:\n type: object\n required: [id, name]\n properties:\n id: { type: integer }\n name: { type: string }\n active: { type: boolean }", "responseJson": "{\"id\":\"1\",\"active\":\"yes\"}", "path": "/users/42", "method": "get", "statusCode": "200", "specFormat": "yaml", "disallowAdditionalProperties": true }

Points clés

Catégorie
Développement et Web
Types d’entrée
textarea, text, select, checkbox
Type de sortie
html
Couverture des échantillons
4
API disponible
Yes

Vue d’ensemble

Le Validateur de contrat de réponse API permet de vérifier instantanément si une réponse JSON réelle correspond au schéma défini dans votre spécification OpenAPI 3.x. En collant votre documentation YAML ou JSON et la charge utile renvoyée par l'API, vous pouvez identifier rapidement les champs manquants, les erreurs de type, les énumérations invalides ou les propriétés non documentées pour garantir la stricte conformité de vos contrats d'API.

Quand l’utiliser

  • Lors du développement d'une nouvelle route API pour s'assurer que la réponse correspond exactement à la spécification OpenAPI.
  • Pour déboguer des erreurs d'intégration entre le frontend et le backend liées à des types de données inattendus ou modifiés.
  • Lors de l'évaluation d'une API tierce pour vérifier si ses réponses réelles respectent sa documentation officielle.

Comment ça marche

  • Collez votre spécification OpenAPI 3.x (au format YAML ou JSON) et la réponse JSON réelle renvoyée par votre API.
  • Indiquez le chemin (path), la méthode HTTP (GET, POST, etc.) et le code de statut (ex: 200) correspondant à l'opération à valider.
  • Cochez l'option pour interdire les champs en trop si vous souhaitez une validation stricte du schéma.
  • Consultez le rapport généré pour identifier les erreurs de type, les champs manquants ou les propriétés non documentées.

Cas d’usage

Validation de contrats pilotée par le consommateur (Consumer-Driven Contract Testing).
Audit de conformité de la documentation d'une API existante.
Vérification stricte des charges utiles (payloads) lors de la mise à jour d'un endpoint critique.

Exemples

1. Vérification d'une réponse utilisateur

Développeur Backend
Contexte
Le développeur vient de modifier l'endpoint de récupération d'un utilisateur et veut s'assurer qu'il n'a pas cassé le contrat API.
Problème
Vérifier si la nouvelle réponse JSON contient bien tous les champs requis et les bons types de données.
Comment l’utiliser
Coller la spécification OpenAPI, insérer la réponse JSON {"id":"1","active":"yes"}, définir le chemin sur /users/{id}, la méthode sur GET et le code sur 200.
Configuration d’exemple
Activer 'Interdire les champs en trop'.
Résultat
L'outil signale que 'id' devrait être un entier (reçu string) et 'active' un booléen (reçu string).

2. Validation d'un message d'erreur standardisé

Ingénieur QA
Contexte
L'équipe QA teste les scénarios d'échec d'authentification pour s'assurer que le format d'erreur standard est respecté par l'API.
Problème
Valider que la réponse d'erreur 400 correspond au schéma d'erreur global défini dans l'OpenAPI.
Comment l’utiliser
Fournir le YAML de l'API, coller le JSON d'erreur {"error":"Invalid credentials","code":400}, indiquer le chemin /login, la méthode POST et le code HTTP 400.
Résultat
Le validateur confirme que la réponse correspond parfaitement au schéma d'erreur attendu pour le code 400, sans champs manquants.

Tester avec des échantillons

json

Hubs associés

FAQ

Quels formats de spécification sont supportés ?

L'outil prend en charge les spécifications OpenAPI 3.x aux formats YAML et JSON. Le format peut être détecté automatiquement ou forcé manuellement.

Que fait l'option 'Interdire les champs en trop' ?

Cette option déclenche un avertissement si la réponse JSON contient des propriétés qui ne sont pas explicitement définies dans le schéma OpenAPI (équivalent à additionalProperties: false).

Puis-je valider des codes d'erreur HTTP comme 400 ou 500 ?

Oui, il suffit de renseigner le code HTTP correspondant (par exemple 400 ou 404) dans le champ dédié pour valider le schéma de la réponse d'erreur.

L'outil supporte-t-il Swagger 2.0 ?

Non, ce validateur est spécifiquement conçu pour résoudre et valider les schémas de réponse définis dans la norme OpenAPI 3.x.

Comment l'outil gère-t-il les chemins avec des paramètres ?

Vous devez saisir le chemin tel qu'il est défini dans votre spécification OpenAPI, par exemple /users/{id}, pour que l'outil puisse faire la correspondance.

Documentation de l'API

Point de terminaison de la requête

POST /fr/api/tools/api-response-contract-validator

Paramètres de la requête

Nom du paramètre Type Requis Description
openApiSpec textarea Oui -
responseJson textarea Oui -
path text Oui -
method select Non -
statusCode text Oui -
specFormat select Non -
disallowAdditionalProperties checkbox Non -

Format de réponse

{
  "result": "
Processed HTML content
", "error": "Error message (optional)", "message": "Notification message (optional)", "metadata": { "key": "value" } }
HTML: HTML

Documentation de MCP

Ajoutez cet outil à votre configuration de serveur MCP:

{
  "mcpServers": {
    "elysiatools-api-response-contract-validator": {
      "name": "api-response-contract-validator",
      "description": "Valide une reponse JSON reelle contre le schema de reponse defini dans OpenAPI 3.x",
      "baseUrl": "https://elysiatools.com/mcp/sse?toolId=api-response-contract-validator",
      "command": "",
      "args": [],
      "env": {},
      "isActive": true,
      "type": "sse"
    }
  }
}

Vous pouvez chaîner plusieurs outils, par ex.: `https://elysiatools.com/mcp/sse?toolId=png-to-webp,jpg-to-webp,gif-to-webp`, max 20 outils.

Si vous rencontrez des problèmes, veuillez nous contacter à [email protected]