# How to implement cloud-based floating licenses for cross-platform applications

### Overview

If you are developing a cross-platform application and are using the QLM REST API to protect your non-Windows application, you can implement a cloud-based floating license mechanism by following the approach outlined in this article.

&#x20;

### First-run workflow&#x20;

When your application is launched for the first time from a system, follow the same approach as you would do for a normal node-locked license. Prompt the user for an Activation Key and use the [ValidateLicenseHttp ](/docs/api-reference/http-methods/validatelicensehttp.md)API to activate the license. If the activation is successful, a digitally signed license file is returned and stored on the end-user system (you must store the file).&#x20;

Additionally, you must store the Activation Key so that you can retrieve it later.&#x20;

When your application exits, you must do the following:

* Call [Releaselicensehttp](/docs/api-reference/http-methods/releaselicensehttp.md) to deactivate the license from the server.
* Delete the license file stored in the previous step.

### Subsequent runs

When your application is subsequently launched on the same system, you must do the following:

* Retrieve the Activation Key stored in the previous step.
* Call [ValidateLicenseHttp ](/docs/api-reference/http-methods/validatelicensehttp.md)API to activate the license with the Activation Key retrieved in the previous step. There should be no need to prompt the user.


---

# 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.soraco.co/docs/floating-licenses/cloud-floating-licenses/how-to-implement-cloud-based-floating-licenses-for-cross-platform-applications.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.
