Basic License Enforcement Using Web Services

Activation Pro includes a simple web service, called actpro_keyvalid.php that can be used to enforce basic licensing on any platform that supports a web services client, for example, mobile devices. This does not involve license authentication in the client or communicating with the RLM license server using the RLM SDK, therefore platform support is much wider than with the RLM SDK. All the web service client needs to be able to do is to connect via HTTPS to the web service where Activation Pro runs, supply an activation key and unique device identifier in the query string, and parse the JSON string returned.


Steps for Using actpro_keyvalid.php

Create an activation key in Activation Pro. This should be a Normal type activation key, should specify some number of fulfillments, and optionally a License Expiration Date. You may also populate the “Optional: Other RLM keyword=value pairs” box with a free-formatted string up to 255 bytes in length. Other fields in the Activation Key are ignored by the web service, as they are involved with creating license file-based licenses. Notes and Contact Person may be specified.

On the client device, connect to the URL: https://<activation URL>?akey=<activation key>?hostid=<device ID>

Where:

  • activation URL is the host where Activation Pro is running.

  • activation_key is the activation key created in RLC.

  • device ID is a device identification string identifying the client device (for example a mobile phone’s phone number).

    Note

    This is not a standard RLM hostid, it is any arbitrary string.

Example:

https://hostedactivation.com/reprise/actpro_keyvalid.php?akey=1234-5678-90ab-cdef?hostid=012069997400

If there is available activation count on the key specified, this will create a fulfillment on that key for hostid “012069997400”.

The web service will return a JSON string containing a status code, a status code description, and if successful, an expiration date and a string of extra license parameters from the activation key.

For example:

{"status":0,"description":"success","expiration":"2017-11-04","extra":"Some text from the
activation key"}

Note

The extra license parameters returned are the contents of the “Optional: Other RLM keyword=value pairs” box in the Activation Key edit screen in Activation Pro. While that box must contain keyword=value pairs when the activation key is used to make a standard RLM license, no specific format is required if the activation key is for use solely by this web service.


Return Status and Description

Status values and descriptions are as follows:

0

Success

1

No matching activation key exists

2

Activation key specified is inactive

3

No fulfillments left on specified activation key

4

Licf table update failed

5

Keyf table update failed

6

License expired

7

Activation key expired

8

Hostid supplied < 8 characters long

9

No hostid supplied in query string

10

No akey supplied in query string


Notes

  • If no expiration date is specified in the activation key, the string “permanent” is returned.

  • If a fulfillment already exists for the activation key / hostid pair passed in the query string, success will be returned, along with the expiration date of the fulfillment and the extra license parameters.

  • If the Activation Pro server is running at hostedactivation.com, the activation URL must include the ISV name, for example:

    https://hostedactivation.com/reprise/actpro_keyvalid.php?…