docs / keyauth

KeyAuth

Guide

License key authentication system for ekisde.dev software. Validate keys, HWID locking, and expiry support.

content

KeyAuth is the license key system used for ekisde.dev software.
It validates keys, locks them to a machine (HWID), and supports optional expiry dates.

---

## Endpoint

POST https://ekisde.dev/api/keyauth/validate
Content-Type: application/json
User-Agent: Mozilla/5.0

**Important:** include a browser-like User-Agent header to avoid Cloudflare blocking.

---

## Request body

{
  "key": "EKISD-XXXXXX-XXXXXX-XXXXXX",
  "hwid": "unique-machine-identifier"
}

The hwid field is optional but strongly recommended.
On first use, the key locks to that machine. On subsequent calls it verifies the machine matches.

---

## Response (valid)

{
  "valid": true,
  "owner": "John Doe",
  "product": "my-ai-tool",
  "uses": 5,
  "expires_at": "2026-12-31",
  "hwid_locked": true
}

expires_at is null for lifetime keys.

---

## Response (invalid)

{
  "valid": false,
  "error": "Key is locked to another machine."
}

Possible errors:
- Key not found.
- Key has been revoked.
- Key has expired.
- Key is locked to another machine.

---

## Python client

from keyauth_client import validate_key
import sys

result = validate_key("EKISD-XXXXXX-XXXXXX-XXXXXX")
if not result["valid"]:
    print(f"License error: {result['error']}")
    sys.exit(1)

print(f"Welcome, {result['owner']}!")

The keyauth_client.py file is provided with each software purchase.
It handles HWID generation and the HTTP request automatically.

---

## Key format

Keys follow the format: EKISD-XXXXXX-XXXXXX-XXXXXX
Generated server-side. Contact ekisde to purchase or request a key. (Free keys given)