HWID lock · Discord auth · Multi-language SDKs

License infrastructure for serious builders.

AstraAuth protects your software with hardware-locked keys, premium tiers, custom variables and a complete dashboard managed from the web or directly with your Discord bot.

9 languages supported HWID hardware binding 0 third-party dependencies on your end
PythonJavaScriptTypeScriptLuaC#C++RustJavaGo PythonJavaScriptTypeScriptLuaC#C++RustJavaGo

Everything a license system needs.

From key format to real-time banning. Everything centralized, everything configurable.

HWID lock

Keys bound to the user's hardware. Configurable multi-activation and HWID reset from the dashboard or with a bot command.

POST /api/activate

Premium tiers

Standard, premium and lifetime keys. Grant premium for a number of days from the bot with /premium add and check the status from your software.

license.premium → true

Custom key format

Digits, hex, uppercase, prefixes, suffixes and separators. Generate keys with the exact format you want to sell or display.

ASTR-9F3K-77L2-QZX1

Discord integration

Discord login, server auto-join on authorize, log embeds with IP and Discord ID, and full management with slash commands.

/setup · /gen · /ban

Multi-language SDKs

Example clients in Python, JavaScript, TypeScript, Lua, C#, C++, Rust, Java and Go. Integrate in minutes, no third-party libraries.

docs for 9 languages

Full logging

Every activation, check, ban and login is recorded with IP, HWID, Discord ID and version. Embeds in your log channel and filters in the dashboard.

/logs set #logs

Three steps to protect your app.

Create your app

Sign in with Discord and add your product in the dashboard. You will get a unique API key for your application.

config.product = 'your-app'

Generate keys

From the dashboard or with the bot. Choose format, tier, duration, activations and custom variables.

/gen duration:30d tier:premium

Verify on start

Your software sends key + HWID to the API. AstraAuth returns tier, premium and variables. If something fails, a log is sent.

POST /api/check → { tier, premium }

The dashboard, live.

This is exactly what you will see after signing in with Discord.

astraproject.xyz/dashboard
Total keys
0
Active
0
Premium
0
Events (7d)
0
Recent licenses 12,482 total
KeyTierStatusHWIDExpires
ASTR-9F3K-77L2premiumactive4 of 530d
K7QX-2MNP-4BHDstandardactive1 of 1lifetime
77TT-QPZL-9WRClifetimeactive1 of 5lifetime
VX12-MN87-DDK4standardunused0 of 17d
Z1QQ-WS55-KLK9premiumbanned2 of 5expired

Start free. Scale when you grow.

One system for all your projects. No hardware limits, no surprises.

Starter
For your first project and for testing.
$0/ month
  • 1 product
  • 200 keys
  • HWID lock
  • 5,000 requests / month
  • Discord panel access
Start now
Enterprise
For teams that need full control.
$49/ month
  • Everything in Pro
  • Unlimited requests
  • Self-host deployment
  • Multi-admin roles
  • Priority support

Ready to protect your software?

Sign in with Discord and start generating keys in less than two minutes.

Common questions.

The client sends a unique hash of its hardware along with the key. On the first activation the server binds it. From then on, only that machine can use the key (or up to the activation limit you configure).

They are automatically added to your Discord server, their ID and email are recorded in the logs, and they enter the dashboard with their Discord account. No classic registration needed.

Yes. Each key can carry a variables object that your software reads when verifying (e.g. {"skin":"gold","level":100}). Great for special editions or in-app purchases.

No. Your application only makes HTTP calls to the API. The example clients for each language use only the standard HTTP library.

Completely. With /gen, /premium add, /ban, /unban, /resethwid, /blacklist and /stats you manage everything from Discord. Events are recorded in the channel and webhook you configure.

On the Enterprise plan the system is self-hosted: your database is yours and your server keeps working. You can export everything whenever you want.