Free developer tools · Spec Converter

A different format.
The contract you choose.

Convert API specifications to the OpenAPI version you choose. Review mappings and consequential changes before exporting JSON or YAML.

Rust poweredRuns in your browserOpen source · Apache-2.0
Start with your API source

Fetched through Octri’s source proxy. Restricted URL? Upload the file instead.

Advanced configuration

Provide variables, HTTP mappings, credential selections or duplicate choices. Target, output format and browser limits follow the controls above. Configuration reference.

Files and pasted content stay on this device. Processing runs in a Rust WebAssembly worker. External references require supplied files; they are never fetched automatically.

Every migration deserves a paper trail.

Conversion is a contract migration. The report makes its assumptions and tradeoffs inspectable.

01

Detect the source

Start from a specification, collection, captured traffic or protocol description. Supply related files and environment variables where needed.

02

Choose the contract

Select an exact target version and provide explicit HTTP mappings where the source does not define an HTTP API.

03

Review the changes

Inspect preserved, transformed, inferred, omitted and blocked decisions. Acknowledge consequential changes individually.

04

Export with context

Download JSON or YAML plus a portable review report. Blocked or unreviewed conversions remain clearly marked as drafts.

Inputs and targets

Popular sources. Explicit destinations.

Choose the destination deliberately. Downgrading a contract can change what it can express.

Inspect the resulting OpenAPI contract
Conversion support
HTTP specificationsSwagger/OpenAPI · RAML · WSDL
Collections & capturesPostman · Insomnia · HAR · cURL
Protocol descriptionsAsyncAPI · GraphQL · Protobuf/gRPC; explicit HTTP mappings where required
Targets2.0 · 3.0.0–3.0.4 · 3.1.0–3.1.2 · 3.2.0–3.2.1
ExportJSON or YAML · portable conversion report

The same engine, in your project

Try it here.
Build with it anywhere.

This demo uses the published WebAssembly package. The Rust core and language bindings live in the same open-source repository.

Browser / WebAssembly

npm install @octri/spec-converter-wasm

Also available as a Rust library and CLI, with native language bindings. Check the repository for each binding’s installation instructions and supported platforms.

Bounded browser processing

This demo accepts up to 100 UTF-8 files, 5 MiB each and 20 MiB combined. Each engine run has a 30-second limit. Large or deeply nested contracts may reach resource limits sooner.

A few practical questions.

What to expect from this tool, and where its boundaries are.

Swagger/OpenAPI, Postman, RAML, Insomnia, HAR, cURL, AsyncAPI, GraphQL, Protobuf/gRPC and WSDL. The converter detects the format and reports unsupported or ambiguous constructs rather than silently discarding them.

Next, check contract quality

A valid contract can still leave gaps.

Spec Auditor finds missing schemas, naming problems and other issues that affect the tools built from your OpenAPI.

Audit your specification