Activation use cases

We highly recommend using the manual activation for your first device to understand the process. You can activate the device several times to make yourself familiar with the process. Activating the same device several times won’t change your balance.

Manual activation

You have access to the device

The steps for manual activation when you have access to the device are:
  1. Generate a Runtime Key as explained in the previous sections.

  2. Login to the web application.

  3. Select the activation icon next to the master you want to use to open the activation page.

  4. Enter the Runtime Key. The Master Key should be already automatically filled.

  5. Press “Send” to activate.

  6. A new box with the token will appear at the bottom if the operation succeed. Later, you can retrieve the token using the web application (Runtimes page) without repeating the activation process.

  7. Copy the token and put it on a file on the target device.

  8. When you initialize the engine use JSON entry license_token_data or license_token_file to set the token. The first option accepts a base64 string while the second requires a path to a file.

This method is time consuming but could be useful when the target device doesn’t have access to internet.

You don’t have access to the device

When you don’t have access to the device their are 2 solutions:
Solution A:
  1. Ask the end user to send you the Runtime Key.

  2. Use steps in the previous section to activate the Runtime Key.

  3. Send back a file containing the Token to the end user.

Solution B:
  1. Use the web application to create a Slave Key.

  2. Copy the Slave Key.

  3. When the end user runs the application for the first time, redirect him to

  4. The end user will have to follow steps [5, 6 and 7] described in the previous section.

Please note that for solution B you can also redirect the user to your own website and use the REST API to activate the Runtime Key.

Automatic activation

The manual activation is time consuming with poor user experience. You can use the manual activation if your company is the end user with low number of Runtime Keys to activate. If you’re sub-licensing the product to your customers or have a large number of licenses to activate then, it’s definitely not for you.

The automatic activation uses the REST API defined in the previous sections which means the end user must have internet connection. This is only required at the activation time, the first time the application is opened.

The activation server is hosted on Doubango cloud but sometimes you need the end user to connect to your own servers instead of ours. What we recommend in such cases is to host a node.js proxy-like REST API server and let the end user connect to the proxy instead of our cloud.

Here are the steps for automatic activation:
  1. Using the REST API (see previous sections), generate as many Slave Keys as end users. You can also use the web application to generate the Slave Keys.

  2. Copy every Slave Key (Base64) to a file and package it with the application binaries to be sent to the end user. For example, on Android, put the file in “assets” folder.

  3. When the end user opens the application for the first time then, use the REST API to activate the Runtime Key. The Runtime Key is generated on the device using API function requestRuntimeLicenseKey() as explained in the previous sections. The activation requires a Slave Key and the Runtime Key.

  4. The activation will return a Token (Base64). Save the Token to a file. Next time the user opens the application then, just read the Token from the file instead of repeating the activation process.


  • Our sample applications contains the code needed for automatic activation.

  • You can also use our header-only C++ SDK to add support for automatic activation in your products.