🔒 100% in your browser — nothing is uploaded

Move an API spec between any two versions

Paste OpenAPI/Swagger, Postman, GraphQL, gRPC, AsyncAPI, RAML or API Blueprint — and get any other format back, validated and honest about anything that can’t be carried across. No account, no upload, no install.

Swagger 2.0 OpenAPI 3.0 OpenAPI 3.1

What it is

A converter that runs entirely on your machine

Migrating an API description between spec versions usually means installing a toolchain or pasting your spec into someone’s server. This does it in the browser tab — instantly, and privately.

🔒

Private by design

Parsing and conversion happen locally in a Web Worker. Your spec never leaves the page — verified: a full conversion fires zero network requests.

⚖️

Honest about fidelity

Downgrades lose features. Every dropped or approximated construct is surfaced as a warning — you’re never handed a silently-broken spec.

Valid output

Conversions are tested against a real OpenAPI/Swagger validator, with a regression suite covering the awkward edge cases.

How it works

Hub-and-spoke, not point-to-point

Rather than a maze of pairwise converters, every spec is normalised into one canonical representation — OpenAPI 3.1 — and then written out to whatever you asked for. Add a format once as an importer and an exporter, and it converts to and from everything else.

OpenAPI / Swagger
Postman
GraphQL · gRPC
AsyncAPI · RAML · API Blueprint
OpenAPI 3.1canonical hub
+ warnings log
OpenAPI / Swagger
Postman
GraphQL · gRPC
AsyncAPI · RAML · API Blueprint
DetectThe source format and version are recognised automatically (you can override).
Import → normaliseThe spec is upgraded into the OpenAPI 3.1 hub, collecting warnings for anything lossy.
ExportThe hub is written out to your target version — downgrades flag every feature that can’t make the trip.

Honest about fidelity

Some conversions cost more than others

Upgrades are essentially lossless. Downgrades trade away features the older spec can’t express — and the tool tells you exactly which, instead of pretending nothing changed.

Full / High

OpenAPI 2.0 → 3.0 → 3.1

Version upgrades within the OpenAPI family carry everything across.

Lossy (flagged)

3.1 → 3.0 → 2.0

Type unions, webhooks, multiple examples, JSON-Schema-2020 keywords, callbacks — each collapse or drop is warned.

Best-effort

Beyond OpenAPI

Postman, AsyncAPI, GraphQL, gRPC, RAML and API Blueprint convert too — structurally different formats, mapped best-effort with clear warnings.

Coverage

Supported today, and on the way

FormatAs sourceAs targetStatus
Swagger 2.0YesYes (lossy)Live
OpenAPI 3.0.xYesYesLive
OpenAPI 3.1.xYesYesLive
Postman Collection v2.1YesYesBest-effort
AsyncAPI 2.x / 3.xYesYesBest-effort
GraphQL SDLYesYesBest-effort
gRPC / Protobuf (proto3)YesYesBest-effort
RAML 1.0 / 0.8YesYesBest-effort
API BlueprintYesYesBest-effort

Convert your spec now

It opens instantly and works offline once loaded.