Automation
Stop manually regenerating and publishing SDKs every time your API changes. Packable's automation features keep your SDKs always in sync with your API specification.
Why Automate?
Manual SDK management is time-consuming and error-prone. With automation, you get:
- Always up-to-date SDKs: Automatically regenerate when your API changes
- Consistent releases: No more forgetting to update SDKs after API changes
- Reduced errors: Eliminate manual mistakes in the release process
- Time savings: Focus on building features, not managing SDKs
- Faster delivery: Your users get new SDK versions immediately
How Automation Works
Packable monitors your OpenAPI specification and automatically triggers the SDK generation process when changes are detected.
GitHub Integration
Install the Packable GitHub Bot
To enable automation, install the Packable GitHub bot into your GitHub account or organization:
- Navigate to Settings → Automation in your Packable dashboard
- Click Install GitHub App
- Authorize the bot for your repositories
- Grant access to the repositories where you want to publish SDKs
The bot needs access to:
- Read your OpenAPI specification
- Create pull requests
- Create releases and tags
Automated Workflow
When Packable detects a change in your OpenAPI specification:
1. PR Creation
A pull request is automatically created in each configured SDK repository containing:
- Generated SDK code based on the new specification
- Updated version number
- Changelog with detected changes
- Updated documentation
2. Build Validation
The PR triggers your CI pipeline, which:
- Validates that the SDK compiles successfully
- Checks code quality and linting
- Ensures no syntax errors
3. Unit Tests
Automated tests run to verify:
- All endpoints are properly generated
- Type definitions are correct
- SDK initialization works
- Basic functionality tests pass
Packable includes generated tests, but you can add your own custom test suite in the repository using the Custom Code feature.
4. Review & Approval
Team members can:
- Review the generated code changes
- Verify the changelog matches expectations
- Approve or request modifications
5. Merge & Release
After approval:
- Code is merged into the target branch
- Release is created with:
- Version tag (e.g.,
v1.2.3) - Release notes from changelog
- SDK artifact (source code archive)
- Version tag (e.g.,
- Package registry publishing (optional):
- Automatically publish to npm, PyPI, Maven Central, RubyGems, NuGet, etc.
- Configure credentials securely in your own Github repository
- See Package Registries for detailed setup
Enable auto-merge for trusted automation by configuring branch protection rules to auto-merge PRs after all checks pass.
Best Practices
- Start with manual merges: Review the first few PRs before enabling auto-merge
- Use semantic versioning: Let Packable automatically bump versions based on changes
- Enable notifications: Get alerts when PRs are created and tests fail
- Test in staging: Use a test repository to validate the workflow first
Next Steps
- Learn about versioning to control SDK version numbers
- Add custom code that persists across automated generations
- Set up project structure for managing multiple APIs