Compare two OpenAPI 3.0 or 3.1 documents, see which changes break existing clients, record a decision on each, and export migration notes.
JSON & YAML
Client-side view
Nothing is requested
Add both contractsPaste them or open files
Review the findingsBreaking, review or compatible
Export notesMarkdown, CSV or JSON
Download
Exports include your decisions and notes, and list anything that was not compared.
Ready.Documents are parsed locally and never requested or run
How changes are judged
Direction matters. Removing an enum value breaks requests but not responses; adding one can break response parsers. Required fields, nullability, limits, types, media types, parameters, status codes and security are all checked.
Limits
Only local $ref links are followed. oneOf and anyOf changes are flagged for review rather than matched. Items the tool skips, such as callbacks and webhooks, are listed under “Not compared”. Swagger 2.0 needs converting first.
Using API Contract Difference Analyzer
Compare two OpenAPI 3.0 or 3.1 documents, see which changes break existing clients, record a decision on each, and export migration notes.
Choose Try example, or paste or open the old and new OpenAPI documents in JSON or YAML.
Press Compare. Findings are grouped as Breaking, Review or Compatible, judged from the view of an existing client.
Filter and search the findings, then record a decision and note on each one. Check the Not compared list for anything skipped.
Open Export for Markdown migration notes, CSV or JSON findings, or a project file to continue later.
Example
The fictional Orders API example moves from 1.4.0 to 2.0.0. It shows a new required header, a removed DELETE operation, a tighter limit, a new enum value in a response and a path parameter rename that is correctly not treated as breaking.
Questions & answers
What does it treat as breaking?
Removed operations, success responses or media types; new required parameters or fields; type and security changes; tightened request limits; removed request enum values; and response changes such as new enum values, new nulls or fields no longer guaranteed.
Which documents can I open?
OpenAPI 3.0 and 3.1 in JSON or YAML, using local $ref links. Swagger 2.0 needs converting first.
What is not compared?
External references, callbacks, webhooks, links, discriminators and some advanced schema keywords. oneOf and anyOf changes are flagged for manual review. Whatever was skipped is listed in the results and the exports.
Is my API contacted or my document uploaded?
No. Documents are parsed as data in your browser and no request is made to any listed server. Project files contain both documents, so check them for secrets before sharing.