Suspending and Revoking Licenses
Cryptlex gives you two server-side ways to invalidate a license. Suspension is temporary, meaning access is restored automatically when you allow the license again. Revocation is permanent, meaning the local license data is invalidated and the user must reactivate if you ever allow the license again.
Suspending vs revoking
| Suspending | Revoking | |
|---|---|---|
IsLicenseGenuine() returns | LA_SUSPENDED | LA_FAIL |
| Local license data | Remains intact | Invalidated and removed |
| Reactivation attempt | Not needed | ActivateLicense() returns LA_E_REVOKED |
| Restoring access | Allow the license; IsLicenseGenuine() returns LA_OK automatically after first sync | Allow the license; the user must reactivate |
When to suspend
Suspending a license is appropriate when you expect the license to become valid again without requiring user action. Typical scenarios include:
- Temporary payment issues, such as a failed renewal or an invoice pending payment
- Short-term policy or usage violations that can be resolved
- Temporarily blocking access while an issue is being reviewed or investigated
- Grace period handling for subscriptions
In these cases, the license data remains intact on the client machine. Once the license is allowed on the server side, the application automatically returns to a valid state without requiring a reactivation.
When to revoke
Revoking a license is appropriate when the license should no longer be trusted and must be invalidated completely. Typical scenarios include:
- Refunds or chargebacks where the entitlement is permanently removed
- Cancellation scenarios where the existing activation must be invalidated
When a license is revoked, the client removes the local license data. If the license is later allowed again or replaced, the user must perform a fresh activation.
Suspending or revoking via the Web API
Both actions are done through the license update endpoint: set the suspended or revoked property to true, or back to false to allow the license again.
You can also perform both actions from the admin portal, using the Actions menu next to the license on the Licenses page.