SDK Creation Overview

Language Support

LanguageAvailabilityPackage Manager
TypeScript✅ GANPM
Python✅ GAPyPI
Go✅ GAGitHub
C#🔵 BetaNuGet
Java🔵 BetaMaven
PHP🔵 BetaPackagist
Swift🔵 BetaSPM
Ruby🏗️ AlphaGems
Unity🏗️ AlphaTBD
Info Icon

Stages of availability

✅ GA: Available for self-service use, has full support for all available features. Support subscribes to SLAs.

🔵 Beta: Available for self-service use, may not support all generation features (see language page for details). Support subscribes to SLAs.

🏗️ Alpha: Available via CLI, all feature support is experimental. Support does not subscribe to SLAs.

What You'll Need

To get started with Speakeasy SDK creation, you will need an API spec in one of our supported formats:

Spec FormatSupported
OpenAPI 3.0
OpenAPI 3.1
JSON Schema
Postman Collections🔜
Success Icon


If your spec is in an unsupported format, you can use one of the following tools to convert it to a supported format:

Walkthrough SDK Creation

Step by Step

Success Icon


These instructions are for creating SDKs using the managed pipeline in the web app. If you prefer to set up the CI/CD using a GitHub action, you can find instructions here.

1. Create a workspace

Log in to the Speakeasy web app (opens in a new tab). If you don't have a workspace yet, you'll be prompted to create one.

2. Upload your spec

You may upload your spec as a local file or publicly hosted URL.

If your spec is hosted on GitHub, make sure you are linking to the raw URL:

3. Pick your language

Select the languages you will generate SDKs for. For more information about the design of each SDK language, check out the SDK design section.

4. Generate your SDK

Once you've selected the languages you want to generate for, click the Start Generating button to kick off the SDK generation process. Your SDK will be created in a repo in the speakeasy-sdks GitHub organization.

Next Step: Customize Your SDK

Generating SDKs is the first step, but there are several optimizations you can make to improve the quality of your SDKs. We recommend you check out the following guide on customizing your SDKs.