Keylance – REST API Documentation

🔌 Keylance REST API Documentation

Keylance provides a simple REST API to validate and manage license keys in real time. Works with any engine, framework, or language supporting HTTP. SDK and REST are both available.

📘 Introduction

Keylance is a lightweight license system that lets you verify, enable, disable and expire licenses remotely through a REST API or via our SDK for Unreal Engine.

License Protection REST API SDK

🔐 Endpoint: Verify a License Key

To validate a license key, send a GET request to:

https://aukkeproduction.fr/Keylance_Api/VerifKey.php?key=API_KEY&project=PROJECT_KEY

🧾 Parameters:

  • key: Your user’s API key
  • project: The project’s unique license key

📄 Example (cURL):

curl "https://aukkeproduction.fr/Keylance_Api/VerifKey.php?key=abc123&project=def456"
📤 JSON Response Structure

The response will look like:

{
  "success": true,
  "is_protected": true,
  "active": true,
  "expiration_date": "2025-12-31"
}

🧩 Field Details:

  • success: Whether the request was valid
  • is_protected: Whether the project is under Keylance protection
  • active: Whether the license is currently active
  • expiration_date: Expiration date for offline fallback
💡 Use Cases
  • Block access if a customer hasn’t paid
  • Allow offline expiration without internet
  • Show warning screen in your app/tool
  • Track usage through automatic logs
🛠️ Integration Examples

Unreal Engine (C++ via HTTP):

FHttpModule::Get().CreateRequest()->SetURL("...VerifKey.php?...");

PHP:

$response = file_get_contents("https://aukkeproduction.fr/Keylance_Api/VerifKey.php?key=XXX&project=YYY");
$data = json_decode($response, true);
if ($data["success"] && $data["active"]) { /* OK */ }
          

JavaScript:

fetch("https://aukkeproduction.fr/Keylance_Api/VerifKey.php?key=XXX&project=YYY")
.then(res => res.json())
.then(data => {
  if (data.success && data.active) {
    console.log("Access granted");
  }
});
          
⚠️ Errors & Failures
  • success = false → invalid or not found
  • active = false → license disabled
  • expiration_date passed → offline fallback mode
  • Server unreachable → rely on stored local data
🔄 REST vs SDK
  • SDK: Native integration for UE with Blueprint/C++
  • REST API: Universal HTTP endpoint
  • You can use both — SDK uses REST internally
🧭 Root (REST Routes)

Base URL: https://aukkeproduction.fr/wp-json/keylance/v1

Auth Headers: X-Keylance-Key: <API_KEY> or Authorization: Bearer <API_KEY>

Create a Key

POST /keys
Body: { "project_name":"MyProject", "expiration_date":"2025-12-31" }

Activate a Key

POST /keys/{project_key}/activate

Deactivate a Key

POST /keys/{project_key}/deactivate

Change Expiration Date

POST /keys/{project_key}/expire
Body: { "expiration_date":"YYYY-MM-DD" }
💳 Stripe (Webhooks → Auto Management)

Integrate Stripe webhooks to manage licenses automatically on subscription updates, cancellations or payment failures.

Store project_key in Stripe metadata to easily link customers to their license.

📞 Support & Limits
  • ✔️ No API key rotation required
  • ✔️ No rate limits for normal usage
  • ✔️ Secure HTTPS + encrypted storage
  • 📩 Contact: jean@aukkeproduction.fr