REST API Overview
The License Key Manager provides a simple REST API to validate and manage licenses in your applications.
All license keys use the UUID v4 format (e.g. 64842089-2fda-4dc9-900a-8a89482e5f14).
All API requests must be made over HTTPS (if configured) and include a valid API token in the headers.
https://lkmanager.qdate.online/api
Authentication
Include your API token in the X-API-Token header for every request.
X-API-Token: your_secret_token_here
1. Validate License
Checks if a license key is valid and optionally activates it for the current machine/domain.
/validate
Request Body
{
"license_key": "64842089-2fda-4dc9-900a-8a89482e5f14",
"domain": "example.com", // optional: for domain lock
"ip": "192.168.1.1", // optional: for IP lock
"machine_id": "abc123789...", // optional: for hardware binding
"activate": true // optional: default is true
}
Note: The license_key must be a valid UUID (e.g. xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx).
Success Response (200 OK)
{
"valid": true,
"status": "active",
"message": "License is valid",
"type": "lifetime",
"expires_at": null,
"remaining_activations": null,
"product": {
"id": 1,
"name": "My App",
"version": "1.0.0"
}
}
2. Check Status
Check the status of a license without performing an activation.
/check
3. Deactivate
Remove an activation from a license key.
/deactivate
Error Codes
| Code | Description |
|---|---|
LICENSE_INVALID | The license key does not exist. |
LICENSE_INACTIVE | The license has been disabled by the admin. |
LICENSE_EXPIRED | The license has reached its expiration date. |
LICENSE_REVOKED | The license has been permanently revoked. |
ACTIVATION_LIMIT | Maximum number of activations reached. |
DOMAIN_MISMATCH | License is locked to a different domain. |
IP_MISMATCH | License is locked to a different IP address. |
RATE_LIMITED | Too many requests from your IP. |
4. Legacy Installer Adapter
For compatibility with legacy installers (like Envato-style GET-based validators), a special adapter endpoint is available. This allows older applications to validate licenses without modifying their existing code.
/validator/validate.php
Query Parameters
| Parameter | Description |
|---|---|
purchase_code | The license key to validate (required) |
domain_url | The domain requesting validation (optional) |
Example Request
GET https://lkmanager.qdate.online/validator/validate.php?purchase_code=64842089-2fda-4dc9-900a-8a89482e5f14&domain_url=example.com
Success Response
{
"error": false,
"message": "License verified successfully"
}
Error Response
{
"error": true,
"message": "Invalid license key or domain mismatch."
}