# Offline License Activation

Licenses can be activated and deactivated without the client device having access to the internet. Additionally, device variables and consumptions will be synced with the cloud platform at the moment of deactivating licenses offline. Offline activation supports both key-based and user-based licenses.

{% embed url="<https://youtu.be/mN4KiwQbNrI>" %}

{% hint style="info" %}
Subscription licenses cannot be managed using the offline portal (since subscription licenses rely on an external system for determining the validity of the subscription), but time-limited licenses can be refreshed.
{% endhint %}

{% hint style="info" %}
The SDKs can be configured to run offline license checks. Please see their documentation for more information.
{% endhint %}

### Activating a License Offline

In order to implement offline licensing in your application, follow these steps:

{% stepper %}
{% step %}

### Issue the license

Issue a license for the end user. The end user will enter the license in the application (either a key, or user credentials), and the SDK needs to be set to activate offline. For more information on how to activate offline, check the extended options in your respective SDK.
{% endstep %}

{% step %}

### Enter the license into the app

The end user enters the license file into the app, which will unlock the application and complete the binding of the license to their machine.
{% endstep %}
{% endstepper %}

### Retrieving the License File From the Vendor Platform

Regardless of how a license has been activated, you can retrieve the license file from the vendor platform. Entitlements for a license can be modified and the license file will be updated. You can then retrieve the license file and send it to the customer.

Follow these steps:

{% stepper %}
{% step %}
Go to vendor platform and find the license.
{% endstep %}

{% step %}
On the devices tab find the device where the offline license is located.
{% endstep %}

{% step %}
Click on the `download license refresh file`.
{% endstep %}

{% step %}
Save the `license_refresh.lic` and send it to the user.
{% endstep %}

{% step %}
The end user enters the file into the app, which will refresh the local license file with new entitlements and changes.
{% endstep %}
{% endstepper %}

![Downlading License Refresh File](/files/974ecc8d09297a996e54a9bd5b5595991364a525)

### Deactivating a License Offline

The end user can uncouple the computer from the license, which generates a deactivation file. If they then upload this file to the vendor portal, the license will be released and can be used on another machine.

### Updating Consumption Values Offline

To update the values of total consumptions and total feature consumptions, run the procedure of deactivating the license offline. The vendor can always send a license refresh file to the user with new entitlements periodically.

{% hint style="info" %}
If you are working with a license that is of type consumption, or with consumption features, then the deactivation file will contain the cached consumptions which will be added to the usage information on the license on our server.
{% endhint %}

### White Labeling the Offline Portal

Contact us if you would like to white label the offline portal on your own subdomain.

### Allow offline activation

By default every license can be activated using online, offline, or airgap activation processes.

If you want to limit your licenses to be activated only online, you can toggle the Allow offline activation checkbox on a license. When set to `False`, the License API will not allow the license to be activated offline or airgap (airgap being a variation of offline licensing).

![Allow offline activation on a license](/files/2dfbbe907183dfe96f146940a5e8b1324d53da33)

The same can also be set on a specific license policy, so when a license is created using that policy code the offline activation setting will be applied accordingly.

![](/files/3963eee7da31d4f360555eb0d2b27a71fae51cc0)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.licensespring.com/license-entitlements/license-activation-types/offline-license-activation.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
