Error Codes
Error Codes
Section titled “Error Codes”Aureva uses consistent error codes across key validation and the loader. Use these codes to provide clear feedback to users and handle errors programmatically.
Key Validation Codes
Section titled “Key Validation Codes”These codes are returned when key validation fails:
| Code | Description | How to Handle |
|---|---|---|
KEY_INVALID | Key format invalid, missing, or malformed | Ask user to verify key; provide support link |
KEY_INCORRECT | Key not found or not active | Ask user to verify key or obtain new one |
KEY_BANNED | Key or HWID is blacklisted | Inform user; direct to support if appeal possible |
KEY_EXPIRED | Key has passed its expiration date | Prompt user to renew or get new key |
KEY_HWID_LOCKED | Key is bound to different HWID | Offer HWID reset (Discord, dashboard, support) |
SCRIPT_ID_INVALID | Script ID format invalid (must be 32 hex chars) | Verify script_id format |
SCRIPT_ID_INCORRECT | Script not found or has been deleted | Verify script exists; check if deleted |
HTTP Status Codes
Section titled “HTTP Status Codes”| Status | Meaning | Typical Cause |
|---|---|---|
| 400 | Bad Request | Missing/invalid body, malformed JSON, invalid field format |
| 401 | Unauthorized | Invalid or expired key, missing auth |
| 403 | Forbidden | Key valid but access denied (blacklisted, HWID mismatch, expired) |
| 404 | Not Found | Script, project, or resource not found |
| 429 | Rate Limited | Too many requests in the rate limit window |
| 500 | Server Error | Internal server error; retry later |
Rate Limits
Section titled “Rate Limits”Error Response Format
Section titled “Error Response Format”API errors typically follow this structure:
{ "success": false, "error": "Human-readable message", "status": 400, "requestId": "uuid-v4"}| Field | Description |
|---|---|
success | Always false on error |
error | Human-readable description |
status | HTTP status code (may be redundant with response status) |
requestId | Unique request ID for support/debugging |
Key validation responses may use code and message or error instead:
{ "success": false, "code": "KEY_EXPIRED", "message": "Key has expired"}Key Validation Error Examples
Section titled “Key Validation Error Examples”KEY_EXPIRED
Section titled “KEY_EXPIRED”{ "success": false, "code": "KEY_EXPIRED", "error": "Key has expired"}Handling: Direct user to renew (keysystem, Discord, or purchase) or contact support for extension.
KEY_HWID_LOCKED
Section titled “KEY_HWID_LOCKED”{ "success": false, "code": "KEY_HWID_LOCKED", "error": "Key is bound to a different device"}Handling: Offer HWID reset via Discord (/resethwid), dashboard, or support. One reset per key is typical.
KEY_BANNED
Section titled “KEY_BANNED”{ "success": false, "code": "KEY_BANNED", "error": "Key is blacklisted"}Handling: Inform user they cannot use the script. Provide support contact if appeals are allowed.
SCRIPT_ID_INVALID
Section titled “SCRIPT_ID_INVALID”{ "success": false, "code": "SCRIPT_ID_INVALID", "error": "Script ID is in an invalid format"}Handling: Script ID must be exactly 32 lowercase hexadecimal characters ([a-f0-9]{32}).
Rate Limit Response
Section titled “Rate Limit Response”When rate limited:
{ "success": false, "error": "Too many requests", "status": 429}Or for key validation:
{ "success": false, "code": "KEY_INVALID", "error": "Rate limit exceeded"}Handling: Wait for the rate limit window to reset. Show “Try again in X seconds” to the user.
Additional Codes
Section titled “Additional Codes”Other codes you may encounter:
| Code | Description |
|---|---|
RATE_LIMIT | Too many requests |
INVALID_REQUEST | Missing key or script_id |
INVALID_SCRIPT_ID | Script ID format invalid |
SCRIPT_NOT_FOUND | Script not found |
SERVER_ERROR | Internal server error |
Next Steps
Section titled “Next Steps”- Key Validation — Validate keys in your scripts
- Luau Library — Loader usage and error handling
- Rate Limits — Avoid rate limit errors