A monorepo of GitHub Actions for automating SDK generation, publishing, and API spec management with Fern.
All actions are referenced directly from this repo — no separate installs needed:
uses: fern-api/actions/<action-name>@<version>Install the Fern CLI in your workflow.
- uses: actions/setup-node@v4
with:
node-version: "lts/*"
- uses: fern-api/actions/setup-cli@v1Keep your Fern config up to date — pull OpenAPI specs from a public URL or sync files between repositories, and open a PR with the changes.
- uses: fern-api/actions/sync-openapi@v4
with:
token: ${{ secrets.OPENAPI_SYNC_TOKEN }}
update_from_source: truegenerate (alpha)
Run fern generate on push to main and open SDK PRs in SDK repos. Includes breaking change detection and failure issue management.
- uses: fern-api/actions/generate@v1
with:
fern-token: ${{ secrets.FERN_TOKEN }}upgrade (alpha)
Upgrade Fern CLI and generator versions on a schedule and open or update a single shared PR.
- uses: fern-api/actions/upgrade@v1
with:
fern-token: ${{ secrets.FERN_TOKEN }}verify (alpha)
Validate Fern changes on PRs before merge — runs generation, self-verification, and breaking change detection. Enables automerge on clean PRs, requests reviewers on failures.
- uses: fern-api/actions/verify@v1
with:
fern-token: ${{ secrets.FERN_TOKEN }}See CONTRIBUTING.md for development setup, how to add a new action, and the release process.