Optional Field

The following page is kept as a reference only. If you start a new project, please consider using Data Objects (aka additional variables) in Web API 3 instead. Optional field is deprecated.

Each key has an optional field associated with it. When you create a key, you can set it to any positive integer. The purpose of the optional field is to allow storage of quotas for the client application. The client application will only be able to get the value of this field or decrease it by a constant amount. All results are in JSON format.

This method is accessed by https://serialkeymanager.com/Ext/OptionalField


Parameter Description Remarks
uid the user id required
pid the product id required
hsum the control value required
sid the serial key string required
todo action to perform. either "get" or "set" optional. by default, it's "get"
decrement the number that should be subtracted from the optional field optional. by default, it's "0"


If an operation is successful, either the new or the current value of the optional field (depending on "todo") will be returned in JSON format.

Example result

[optva: 4]


  • If the decrement is less than zero, an error is going to be thrown.
  • If the decrement is greater than the optional field, the optional field is going to be set to zero.


The hsum was incorrect.
The subscription level of the user does not allow this functionality.
Unable to access the given product. Either it does not exist or it is not set to be public.
Unable to access the key. Either, the key does not exist, it is blocked or was in incorrect format.
The optional field value has not been specified.
The optional field can only be decreased. In order to increase it, authentication is required.