# License verification

You can verify a license type and its validity period by checking the license status records.

Where you look depends on how you run WProofreader:

* Docker: logs are written to stdout (use `docker logs`).
* Windows/Linux (non-Docker): logs are stored in `AppServer/Logs`.

**Good to know:**

* License Ticket ID is a special license activation key that is required for the WebSpellChecker application usage.
* There are two types of License Ticket IDs available: 30-day trial and commercial (1 year). Except the validity period, there is no difference between ticket types from the technical perspective.
* WebSpellChecker license is hardware-based.

### 1. Locating Log Files <a href="#licenseverification-1.locatinglogfiles" id="licenseverification-1.locatinglogfiles"></a>

The location of **Logs** folder directly depends on the type of the environment where the WebSpellChecker application is installed and running.

#### Docker

In Docker, WProofreader logs are redirected to stdout/stderr. Use Docker logging commands instead of reading files from `AppServer/Logs`.

Example:

```bash
docker logs <container_id_or_name>
```

#### Windows/Linux server

* Path to **Logs** folder:

/\<WebSpellChecker\_Installation\_Path>/WebSpellChecker/AppServer/Logs

### 2. Verifying the License Status <a href="#licenseverification-2.verifyingthelicensestatus" id="licenseverification-2.verifyingthelicensestatus"></a>

To verify the license status:

1. Open the application logs.
   * Docker: run `docker logs <container_id_or_name>`.
   * Windows/Linux (non-Docker): open a log file from `AppServer/Logs`.
2. Search for the **License status** records.
   * These lines are written by the licensing subsystem.
   * They show whether the license is active and (for term licenses) how many days are left.

```javascript
License status: Successful activation. License term is <365/30> days.
License status: Successful activation. License is permanent.
License status: License is absent. The license activation is required.
```

### 3. Monitoring license via API <a href="#licenseverification-3.monitoringlicenseviaapi" id="licenseverification-3.monitoringlicenseviaapi"></a>

If you need automated checks (monitoring, alerting, dashboards), query the license status via API.

Use the [health check command](/v6.12.0/api-reference/auxiliary-api-commands/health-check.md):

* `license.valid` shows whether the license is currently valid.
* `license.remaining_seconds` shows how many seconds are left until expiration.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.wproofreader.com/v6.12.0/deployment/licensing/license-verification.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
