> ## Documentation Index
> Fetch the complete documentation index at: https://help.cryptolens.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Unblock Key

> This method will unblock a specific license key to ensure that the key can be accessible by most of the methods in the Web API (activation, validation, [optional...

This method will unblock a specific license key to ensure that the key can be accessible by most of the methods in the Web API
([activation](https://app.cryptolens.io/docs/api/v2/Activate), [validation](https://app.cryptolens.io/docs/api/v2/Validate), [optional field](https://app.cryptolens.io/docs/api/v2/OptionalField), and [deactivation](https://app.cryptolens.io/docs/api/v2/Deactivate)).
To do the reverse, please see [Block Key](/api-reference/generated/BlockKey).

This method is accessed by [https://api.cryptolens.io/api/key/UnblockKey](https://api.cryptolens.io/api/key/UnblockKey)

### Parameters

| **Parameter** | **Description** | **Remarks** |
| - | - | - |
| ProductId | the product id (=\*\*\[ProductId] \*\*) | required |
| Key | the serial key string | required |
| v | Method version. | optional. by default, it's 1. |

### Results

| **Parameter** | **Description** | **Remarks** |
| - | - | - |
| Result | This is either **0**(=success) or **1**(=error). | always returned |
| Message | The message that provides additional information about the result. If it's a successful result,either **Changed** or **Not changed** will be returned (i.e. if the key was already unblocked, **Not changed** is returned.) Otherwise, in case of an error, a short message will be returned describing the error. | always returned. |

### Example results

```text theme={null}
{"result":0,"message":""}
```

### Errors

| **Error** |
| - |
| Access denied. |
| The input parameters were incorrect. |
| Could not find the product. |
| Could not find the key. |
