Key Validation
Key Validation
Section titled “Key Validation”Validate user keys using the Aureva loader or library. The Aureva loader handles validation automatically when users request your script with a key. HWID is automatically captured and locked on first use.
Validation via Loader
Section titled “Validation via Loader”For scripts served by the Aureva loader, key validation happens automatically when the user requests the loader URL with ?key=... or sets script_key. No additional code is required.
Validation via Library
Section titled “Validation via Library”For custom flows (e.g., checking keys before loading, custom UI), use the Aureva library:
local Aureva = loadstring(game:HttpGet("https://api.aureva.cc/loaders/library.lua"))()
Aureva.script_id = "YOUR_SCRIPT_ID"local result = Aureva.check_key("USER_KEY")
if result.code == "KEY_VALID" then Aureva.load_script()else warn("Validation failed:", result.code, result.message)endKey Validation Codes
Section titled “Key Validation Codes”These codes are returned when key validation fails:
| Code | Description |
|---|---|
KEY_INVALID | Key format invalid, missing, or malformed |
KEY_INCORRECT | Key not found or not active |
KEY_BANNED | Key is blacklisted |
KEY_EXPIRED | Key has passed its expiration date |
KEY_HWID_LOCKED | Key is bound to a different HWID |
SCRIPT_ID_INVALID | Script ID format invalid (must be 32 hex chars) |
SCRIPT_ID_INCORRECT | Script not found or has been deleted |
Response Format
Section titled “Response Format”On success, the validation returns code: "KEY_VALID" along with user data such as expiration and execution count. On failure, you receive a code (e.g., KEY_EXPIRED) and an error message.
Handling Responses in Lua
Section titled “Handling Responses in Lua”local Aureva = loadstring(game:HttpGet("https://api.aureva.cc/loaders/library.lua"))()Aureva.script_id = "YOUR_SCRIPT_ID"
local result = Aureva.check_key("USER_KEY")
if result.code == "KEY_VALID" then print("Key valid! Expires:", result.expires_at) Aureva.load_script()else print("Error:", result.code, result.message) -- Show user-friendly message based on result.codeendError Handling
Section titled “Error Handling”| Code | Action |
|---|---|
KEY_INVALID | Prompt user to check key format or get new one |
KEY_INCORRECT | Prompt user to verify or obtain key |
KEY_BANNED | Inform user they are blacklisted |
KEY_EXPIRED | Prompt user to renew or extend key |
KEY_HWID_LOCKED | Offer HWID reset (Discord, dashboard, support) |
SCRIPT_ID_INVALID | Check script ID format (32 hex chars) |
SCRIPT_ID_INCORRECT | Script not found; verify script exists |
| Rate limit (429) | Wait and retry; show “Try again later” |
Rate Limits
Section titled “Rate Limits”Key validation is rate limited to prevent abuse. Implement client-side throttling and cache successful validations when appropriate. If you receive a rate limit response, wait before retrying and show “Try again later” to the user.
When to Use Validation
Section titled “When to Use Validation”Use the Aureva loader for automatic validation when:
- Serving scripts through the standard loader
- You want zero-config key checking
Use the Aureva library when you need to:
- Check keys before loading
- Build a custom flow or UI
- Validate from a non-Roblox client (the library can be adapted)
Next Steps
Section titled “Next Steps”- Error Codes — Full list of error codes
- Luau Library — Loader usage in Roblox