Migration guide
Migrate from Speakeasy to Octri
Upload your Speakeasy workflow with the spec it reads. Your languages, SDK name and package name come across, with method names, pagination and streaming from the x-speakeasy extensions already in your spec.
Written by Octri · Checked 25 October 2026
What to have to hand
Octri reads Speakeasy’s own files. A .zip of your repository or a single config file, up to 15 MB.
- .speakeasy/workflow.yaml
- gen.yaml
- openapi.yaml
What comes across
Each row is a field the Speakeasy importer reads, and where it lands. Rows marked “By hand” are what is left for you.
| What | In Octri | From Speakeasy |
|---|---|---|
| Spec | The project’s spec | sources in workflow.yaml |
| SDK languages | One SDK per target | targets in workflow.yaml |
| Project name | Project name | sdkClassName in gen.yaml |
| Package name and author | SDK package settings | The first language block in gen.yaml |
| Method names | Per-endpoint names | x-speakeasy-name-override |
| Pagination and streaming | Per-endpoint settings | x-speakeasy-pagination, x-speakeasy-streaming |
| Overlays and hooks | Applied to the spec, moved as code | By hand |
Step by step
Apply your overlays
Overlays change the spec, so apply them first and upload the result. Octri then reads the same document your SDKs are built from today.
Bring it in
Sign up, choose Switch to Octri when onboarding asks for your spec, and drop in a .zip with
.speakeasy/workflow.yaml,gen.yamland the spec. A spec held only in the Speakeasy registry needs your Speakeasy token, so add the file or a public URL to the upload.Check the preview
Before anything is created, Octri shows what it found: the spec, each target as an SDK language, the SDK and package names, and which endpoints carry x-speakeasy settings. Anything it could not carry is named in a note under the preview, so you know what is left to do by hand.
Set up your SDKs
Check each language in SDK Studio, set the package names past the first one, and move any hook code into the SDK repository, where custom code is kept through each regeneration. Give each language the package name your users already install, and publish the first Octri release as a new major version, since method names and types can change. Every later spec change arrives in the SDK repository as a pull request.
Go live
Publish, then point your custom domain at Octri last, so readers keep the old site until the new one is ready. From then on every merged spec change rebuilds the draft of your docs, SDKs and MCP tools, ready for you to publish.
Questions
The importer skips them and names each one in the preview. Octri generates SDKs in TypeScript, Python, Go, Java, Kotlin, Ruby, PHP, Rust, Swift and Dart.
Still deciding?
The comparison sets Octri against Speakeasy row by row, from each product’s own pages, with Octri’s prices beside them.
Other migration guides

Migrate from
Stainless
Targets, package name, repository and method names from stainless.yml and your spec.
Read the guide
Migrate from
Fern
SDK generators, package name, docs theme and the page list from the fern folder.
Read the guideMigrate from
liblab
Spec, languages, auth schemes and package name from liblab.config.json.
Read the guideMigrate from
Mintlify
Name, theme, spec and the page list from docs.json or mint.json, plus your MDX by Pull from GitHub.
Read the guideMigrate from
ReadMe
Your OpenAPI file and the Markdown that bi-directional sync keeps in Git.
Read the guideMigrate from
Redocly
Your bundled OpenAPI file, your Markdown in Git and the redirects in redocly.yaml.
Read the guideMigrate from
Scalar
The OpenAPI document from your Scalar registry or repository, and your Markdown and MDX guides.
Read the guideMigrate from
GitBook
The OpenAPI file your API blocks read and the Markdown that Git Sync keeps in your repository.
Read the guide
Migrate from
Stoplight
The OpenAPI file and Markdown articles in the repository your Stoplight project syncs with.
Read the guideMigrate from
Docusaurus
The OpenAPI file your plugin reads, your MDX pages and the layout in sidebars.js.
Read the guideMigrate from
APIMatic
The API definition your SDKs are built from and the Markdown guides in your portal.
Read the guideMigrate from
OpenAPI Generator
The spec you pass to -i and the package names in your generator config.
Read the guide
Try it on your own spec
Bring what you have from Speakeasy on the Free plan and see your reference written and your first SDK built.