Project Keys
Project Keys
Section titled “Project Keys”Project keys grant access to all scripts in a project. When a user provides a valid project key to the loader, they can fetch any script belonging to that project. Project keys are stored in the project_keys table and can be created via the dashboard or Discord /whitelist command.
Key Properties
Section titled “Key Properties”| Property | Type | Description |
|---|---|---|
key | string | Unique key value (shown once at creation) |
status | string | active, suspended, expired, or paused |
discord_id | string | Linked Discord user ID |
discord_username | string | Discord username for display |
discord_avatar | string | Discord avatar URL |
hwid | string | Hardware ID binding (auto-captured on first use) |
user_note | string | Internal note visible in dashboard |
is_active | boolean | Whether the key is active |
is_blacklisted | boolean | Blacklisted keys are rejected |
max_uses | number | -1 = unlimited; else max loader fetches |
usage_count | number | Current usage count |
hwid_reset_count | number | Number of HWID resets performed |
expires_at | number | Unix timestamp; null = never expires |
is_premium | boolean | Marks premium keys |
tags | JSON | Array of string labels |
metadata | JSON | Custom key-value data |
daily_limit | number | Optional daily usage cap (-1 = unlimited) |
API Endpoints
Section titled “API Endpoints”| Method | Endpoint | Description |
|---|---|---|
| GET | /api/projects/:projectId/keys | List keys (supports status, search, tag, limit, offset) |
| GET | /api/projects/:projectId/keys/:keyValue | Get single key details |
| POST | /api/projects/:projectId/keys | Create key(s) (body: count, discord_id, discord_username, user_note, expires_in_days, max_uses, active_after) |
| PUT | /api/projects/:projectId/keys/:keyValue | Update key |
| DELETE | /api/projects/:projectId/keys | Delete keys (body: { keys: string[] }) |
| POST | /api/projects/:projectId/keys/:keyValue/reset-hwid | Reset HWID binding |
| POST | /api/projects/:projectId/keys/:keyValue/transfer | Transfer key to another Discord user (body: { discord_id, discord_username }) |
Creating Keys
Section titled “Creating Keys”From the Dashboard
Section titled “From the Dashboard”- Open your project
- Go to the Keys section
- Click Create Key or Generate Key
- Configure key fields (discord_id, user_note, expires_in_days, max_uses, etc.)
- Click Create
- Copy the key immediately—it’s shown only once
From Discord
Section titled “From Discord”Use the /whitelist command to create or assign a key to a Discord user. Requires project access via the Discord bot.
Key Statuses
Section titled “Key Statuses”| Status | Meaning |
|---|---|
| active | Key works normally |
| suspended | Key is revoked; loader returns error |
| expired | Past expiration date; loader returns error |
| paused | Temporarily paused (supports auto_resume_at) |
You can manually set status to suspended to revoke a key without deleting it.
Next Steps
Section titled “Next Steps”- Learn about Script Keys for script-scoped access
- Configure Key Features (HWID reset, blacklist, tags)
- Use Bulk Operations to import, export, and manage many keys