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
|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"|
ResultIf 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.|