Changelog
The API and each SDK version separately. There is no single “Licensr 2.0” number.
Sellers: API behavior you care about (new fields, error codes) is described in the license calls guide. Integrators: pin an SDK tag and read that language’s GitHub Releases.
API
Breaking and additive changes to https://api.licensr.app are documented in the license calls guide and reflected in the API reference. The SDKs declare a minimum supported API version against that contract.
Response shapes grouped (pre-launch)
The license responses now keep what your product acts on at the top level and group the rest as information:
/v1/license/validate:valid,status,entitlementandfeature_flagsstay at the top. Plan, limits and expiry moved underlicense(plan_id,activation_mode,max_seats,max_domains,seats_in_use,expires_at).plan_name(alwaysnull) andfallback(the same asentitlement: "limited") were removed./v1/license/activate:activation_idandfeature_flagsstay at the top. The echoedactivation_typeandidentifiermoved underactivationastypeandidentifier./v1/license/token:tokenstays at the top.algorithm,kid,issued_at,expires_atandjwks_urlmoved underdetails. The claims inside the token are unchanged.
The three official SDKs return the same grouped shape (result.license, result.activation, token.details).
SDKs
Each SDK ships on its own SemVer track. Release notes live on the public mirror for that language:
| SDK | Package | Releases |
|---|---|---|
| JavaScript / TypeScript | @licensr/sdk | github.com/tekunodev/licensr-js/releases |
| C++ | licensr (CMake) | github.com/tekunodev/licensr-cpp/releases |
| C# | Licensr.Sdk (NuGet / UPM) | github.com/tekunodev/licensr-dotnet/releases |
Pin to a tagged release in production. Pre-1.0 SDKs may still move the public surface — read the release notes before upgrading.