Last Modified October 1, 2026
- Home
- Guides
- Activation API V1
- Saving the License
The Application will need to read/write the DNA License (a JSON encoded string)
on the Device. (see below)
The DNA License can be stored directly given that the DNA License itself is a signed object and
exchanged during every API call.
The followng API’s return a DNA License that needs to be stored:
- WEB_Activate()
- WEB_Validate()
- WEB_Reactivate()
- WEB_Deactivate()
- WEB_EvaluateNow()
When retrieving the DNA License before a WEB_Validate() or to retrieve any License info, always verify
it’s SIGNATURE.
SAAS Applications
For a SAAS Application, the DNA License (a JSON encoded string) can be stored
in a browser HTTP Cookie that will be registered for the domain of the SAAS Application.
The SAAS application would set the following license Cookie properties :
| License Cookie Name |
any name |
Ex: softwareDNA |
| License Cookie Domain |
your domain.com domain name to allow using or not using the "www" to access your SAAS application |
Ex: .softworkz.com |
| License Cookie Expiry |
The expected (arbitrary) life of your SAAS Application (not the License expiry period) |
Ex: 365 days |
| License Cookie Value |
The DNA License JSON string |
Device Applications
For a Device Application, the DNA License (a JSON encoded string) can be stored in any Read / Write storage / file system supported
by the device and accesible by all Users on the device (typically a "Shared" or "Public" folder).
Recommended locations for storing the License depend on the platform:
| OS |
License Objective |
Recommended License Location |
| Windows |
One License per Computer |
C:\Users\Public\ <app_name> \ <app_name>.txt |
| Window Vista, 7, 8, 10 |
One License per User |
<Application.UserAppDataPath> <app_name> \ <user_name>_<app_name>.txt |
| MAC OSX |
All scenarios |
Use the default location Package Contents -> MacOS.
|
| Linux |
One License per Computer |
/var/tmp/<app_name>/<app_name>.CDM
|
| Linux |
One License per User |
/home/<username>/.config/<app_name>/<app_name>.CDM
|
| Android |
All scenarios |
getApplicationContext().getFilesDir() + File.seperator + <app_name>.txt |
| iOS |
All scenarios |
|
See our Code Samples for implementation examples.