Fern Autorelease

View as Markdown
Early Access

Fern Autorelease is in early access. Contact us to get started.

Fern Autorelease automates SDK releases end-to-end. When your API specification changes, Autorelease regenerates SDKs, determines the version bump, and publishes to package registries.

How it works

When changes to your API specification are committed, Autorelease:

  1. Regenerates SDKs for all configured languages
  2. Analyzes the API diff and determines the appropriate semantic version bump
  3. Commits to repositories, tags releases, and publishes packages
  4. Updates changelogs automatically

If a release fails, Autorelease pauses and sends alerts via Slack (if configured) or the Fern Dashboard where you can review and retry.

Setup

To enable Autorelease, add autorelease: true to your generators.yml and ensure the Fern GitHub App is installed on your SDK repositories. Releases trigger automatically on commits to your spec repository and appear as commit status checks. No changes to your CI/CD setup are required.

generators.yml
1autorelease: true
Autorelease commit status check

Review releases before publishing

Set mode: pull-request to review releases before publishing. Autorelease opens a pull request for you to review instead of publishing directly.

generators.yml
1groups:
2 ts-sdk:
3 generators:
4 - name: fernapi/fern-typescript-sdk
5 ...
6 github:
7 repository: your-org/your-repo-name
8 mode: pull-request

Disable autorelease

To disable Autorelease for a specific generator while keeping it enabled globally, set autorelease: false on that generator:

generators.yml
1groups:
2 internal-sdk:
3 generators:
4 - name: fernapi/fern-python-sdk
5 version: 5.3.11
6 autorelease: false