Quickstart: Managing & Validating Licenses with Avalex
Avalex provides a web administration dashboard combined with a sub-millisecond license validation API. This guide walks you through the core workflow using the Web Dashboard to create a product, issue a license, validate it from your application, and monitor activations in real time.What You Can Do with Avalex
As the owner and administrator of your Avalex instance, you have complete control over your software distribution, licensing policies, and customer base:Visual License Management
Issue, view, edit, disable, or extend lifetime and subscription licenses with a few clicks in the Web Dashboard.
HWID & IP Slot Binding
Enforce strict hardware (HWID) and IP slot limits. Prevent license sharing by binding activations to specific machines.
One-Click Slot Resets
Reset bound HWIDs or IPs instantly when a customer upgrades their computer or changes locations.
Global Blacklisting
Block fraudulent IP addresses or leaked hardware identifiers globally across all products.
Marketplace & Discord Automation
Automatically generate and deliver licenses via BuiltByBit webhooks and Discord Bot slash commands (
/my-licenses, /issue-license).Live Validation & Audit Trail
Monitor real-time validation attempts with IP, HWID, timestamp, and status codes, backed by a tamper-resistant audit log.
Step-by-Step Licensing Quickstart
1
1. Open the Admin Dashboard
Open your browser and navigate to your Avalex Web Dashboard:
- Production URL:
https://license.yourdomain.com - Local Testing URL:
http://localhost:3000
2
2. Create a Product
In the left navigation sidebar, go to Products and click + Create Product:
- Name: Enter your software name (e.g.
Pro Studio Tool). - Product Type: Select
Software,Plugin,Service, etc. - Requires License: Ensure this is toggled
ON. - Slot Limits: Set Max IPs (e.g.
2) and Max HWIDs (e.g.1) to control how many simultaneous machines can activate the software. Leave blank for unlimited. - Click Save. Note your generated Product ID (e.g.
prod_9981a).
3
3. Issue a License to a Customer
In the left sidebar, navigate to Licenses and click + Issue License:
- Product: Select the product you created in Step 2.
- Customer: Choose an existing customer or create a new one with their name and email.
- Expiration: Select a future expiration date, or leave it blank for a Lifetime License.
- Custom License Key: Leave blank to auto-generate a key (e.g.
ABCD-EFGH-IJKL-MNOP) or enter a custom key string. - Click Issue License. Copy the generated license key.
4
4. Validate the License from Your Application
Your distributed desktop software, plugin, or CLI application calls Success Response:A
POST /licenses/validate on startup or periodic heartbeat to verify the license key and machine hardware identifier:valid: true response confirms that the key exists, has not expired, and has successfully consumed an available IP and HWID slot on the license.5
5. Monitor Activations & Manage Slots in the Dashboard
Return to the Licenses page in the dashboard and click on your license:
- Active Bindings: View the bound IP addresses and HWID strings currently consuming slots.
- Slot Modification: Click Edit to adjust slot allowances or manually remove old hardware bindings.
- Validation Attempts: Check the Validation Attempts tab to see real-time timestamps, client IPs, HWIDs, and status codes for every validation check performed.
Integration SDK Guides
Ready to embed license validation into your codebase? Choose your language for ready-to-use code examples:Java Guide
Zero-dependency
LicenseValidationClient with HWID generation.Python Guide
Cross-platform Python HWID generator and validator.
C# / .NET Guide
Async
HttpClient integration for .NET Core, WPF, and WinForms.TypeScript Guide
Node.js and Electron validation using built-in
crypto and os.Rust Guide
Fast, typed
reqwest + serde async validator for Rust binaries.Discord Bot Guide
Customer license lookup & staff license issuance inside Discord.
