LabAPI Contract Inspector

API Contract Inspector

Compare OpenAPI specifications and examine compatibility risks before changing an API.

Runs in your browser
First time here?Quick start & guided walkthrough

Compare two versions of an API contract and inspect changes that could affect callers.

  1. Read the original contractThe Before editor contains an OpenAPI example. You can paste JSON or YAML, or upload a local specification. External references are not fetched.
  2. Review the proposed versionThe sample After contract adds a required input and removes a response field. Compare the same endpoint in both editors before running the inspection.
  3. Inspect compatibility risksRun the comparison and review each explanation. Use the risk filter to narrow the list. Structural checks support a review; they cannot prove that an API change is behaviorally safe.

Load an example or enter your own input to begin.

How to use this tool

Paste or upload before and after OpenAPI 3.0/3.1 JSON or YAML specifications, then inspect changes. Use the risk filter and export a local JSON report.

The sample adds a required query parameter and removes a response property. Replace it with your own specifications to inspect actual differences.

How it works

The inspector compares paths/methods, parameters, required fields, property types, enums, request/response media types, status codes, and authentication declarations.

Local JSON Pointer references are resolved with depth and complexity limits. External references are never fetched. Recursive and unresolved references are flagged for manual review.

Scope and limitations

  • This is a conservative structural review, not full OpenAPI validation or a proof of behavioral compatibility.
  • Schema composition, constraints, security, strict response decoders, custom formats, and dialect changes may require manual review.
  • Both documents must contain paths. Webhook-only documents, remote references, and runtime response validation are outside scope.

Technical references

Discuss the engineering behind this tool

Your input stays in this tab. These tools do not upload, store, or send it to an AI service.

Try “PostgreSQL”, “testing”, or “architecture”.