KeyNode Documentation

Learn how to integrate KeyNode into your applications

Quick Start

Get up and running in under 5 minutes

API Reference

Complete API documentation

Examples

Code examples in multiple languages

Introduction

KeyNode is a powerful license authentication system that helps you protect your software and manage access to your applications. With features like HWID binding, version locking, and comprehensive analytics, you can ensure only authorized users access your tools.

Quick Start Guide

1

Create a Project

Navigate to your dashboard and create a new project. Each project represents an application or tool you want to protect.

2

Generate License Keys

Generate license keys for your users with customizable tiers and durations.

3

Integrate the API

Use our API to validate licenses in your application.

API Integration

import requests
import hashlib
import platform

def get_hwid():
    """Generate a unique hardware ID"""
    data = f"{platform.node()}-{platform.machine()}-{platform.processor()}"
    return hashlib.sha256(data.encode()).hexdigest()

def validate_license(license_key, project_id):
    """Validate a license key with KeyNode"""
    response = requests.post(
        "https://keynode.app/api/license/validate",
        json={
            "key": license_key,
            "projectId": project_id,
            "hwid": get_hwid(),
            "version": "1.0.0"
        }
    )
    return response.json()

# Usage
result = validate_license("XXXX-XXXX-XXXX-XXXX", "your-project-id")
if result.get("valid"):
    print("License valid!")
else:
    print(f"License invalid: {result.get('error')}")

API Endpoints

POST
/api/license/validate

Validate a license key and bind it to a hardware ID.

Request Body:

  • key - The license key to validate
  • projectId - Your project ID
  • hwid - Hardware ID of the client
  • version - Client application version
POST
/api/keys/generate

Generate new license keys for a project.

Request Body:

  • projectId - Target project ID
  • quantity - Number of keys to generate
  • tier - STANDARD, MEDIA, or RESELLER
  • duration - Duration value
  • durationType - HOURS, DAYS, or LIFETIME

Need Help?

Community Discord

Join our Discord for support

GitHub

View examples and report issues