Ready, set, Go
From license activation to binary distribution, we can help. Dive in with Keygen Cloud, or explore our self-hosted options.
- Protect your app with our flagship software licensing API. Add fine-grained license entitlements, restrict automatic upgrades to certain versions, enforce activation limits, and more.
- Use our software distribution API to distribute self-updating Go apps to your customers. Keygen is a perfect fit for CLI tools and other on-prem Go software.
keygen.LicenseKey = "C1B6DE-39A6E3-DE1529-8559A0-4AF593-V3"keygen.Account = "1fddcec8-8dd3-4d8d-9b16-215cac0f9b52"keygen.Product = "1f086ec9-a943-46ea-9da4-e62c2180c2f4" opts := keygen.UpgradeOptions{CurrentVersion: "1.0.0", Channel: "stable", PublicKey: "5ec69b78d4b5d4b624699cef5faf3347dc4b06bb807ed4a2c6740129f1db7159"} // Check for an upgraderelease, err := keygen.Upgrade(opts)switch {case err == keygen.ErrUpgradeNotAvailable: fmt.Println("No upgrade available, already at the latest version!") return nilcase err != nil: return err} // Install the upgradeif err := release.Install(); err != nil { return err} fmt.Println("Upgrade complete! Please restart.")
Trusted by over 6,000 software businesses all over the worldincluding these industry leaders
Solutions for licensing & distribution
dns Choice
Managed Keygen Cloud, or explore self-hosting.
library_books Quickstarts
Guides and API references for developers of all skill levels.
insert_chart Dashboard
Manage your products from an intuitive dashboard.
business Pricing
From indie to enterprise, we have options for everyone.