Viewing Users
The users index page displays all registered users with the following information:- Username: Unique lowercase identifier
- Email: User’s email address (must be unique)
- Servers: Number of servers owned by the user
- Subuser Of: Number of servers the user has subuser access to
- Admin Status: Whether the user has root admin privileges
- Username
- UUID
Users are sorted by admin status by default, showing administrators first.
User Model Fields
Each user account contains the following fields (fromapp/Models/User.php:124-137):
Creating a New User
Fill in User Details
Enter the required information:
- Email: Must be unique and valid
- Username: 1-191 characters, will be converted to lowercase
- First Name: User’s first name
- Last Name: User’s last name
Set Password (Optional)
You can either:
- Set a password for the user
- Leave blank to send a password reset email
Editing an Existing User
To modify a user account:- Navigate to Admin Panel → Users
- Click on the user you want to edit
- Modify any of the following fields:
- Email address
- Username
- First and last name
- Password
- Language preference
- Administrator status
- Click Update User to save changes
Validation Rules
User data is validated according to these rules (fromapp/Models/User.php:168-180):
Deleting a User
Before deleting a user:- Ensure they don’t own any active servers (transfer ownership first)
- Remove them as subusers from any servers
- Navigate to the user’s detail page
- Click Delete User
- Confirm the deletion
app/Http/Controllers/Admin/UserController.php:92-95:
Administrator Privileges
When theroot_admin field is set to true, the user gains:
- Full access to the admin panel
- Ability to view and manage all servers
- Permission to create/modify/delete other users
- Access to system settings and configuration
- Node and location management
- Database host configuration
There is no granular permission system for administrators. All root admins have identical permissions.
Two-Factor Authentication
Users can enable 2FA from their account settings:- use_totp: Boolean flag indicating if 2FA is enabled
- totp_secret: Encrypted TOTP secret key
- totp_authenticated_at: Timestamp of last successful 2FA login
External ID Integration
Theexternal_id field allows integration with external systems:
- Must be unique across all users
- Optional field (can be null)
- Useful for syncing with billing systems or other platforms
- Maximum 191 characters
JSON API Access
Administrators can query users via JSON endpoint (fromapp/Http/Controllers/Admin/UserController.php:136-155):
- Returns 25 users per page
- Can filter by email
- Includes MD5 hash of email (for Gravatar)
- Supports single user lookup with
user_idparameter
User Relationships
Users have the following relationships:Owned Servers
Servers where the user is the owner (owner_id):
Accessible Servers
Servers the user can access (as owner or subuser):API Keys
Personal API keys created by the user:Best Practices
- Unique Emails: Each user must have a unique email address
- Strong Passwords: Encourage users to set strong passwords
- Enable 2FA: Require 2FA for all administrator accounts
- Regular Audits: Review user accounts periodically
- Limit Admin Access: Only grant root_admin to trusted individuals
- External IDs: Use external_id for billing system integration
Common Issues
Email Already Exists
Each email must be unique. If you encounter this error, check for:- Duplicate accounts
- Case-sensitive email variations (all stored as provided)
Username Conflicts
Usernames are automatically converted to lowercase and must be unique:- “User123” becomes “user123”
- “USER123” becomes “user123” (would conflict)
Cannot Delete User
Users cannot be deleted if they:- Own active servers (transfer ownership first)
- Are the currently logged-in admin (cannot delete yourself)
Next Steps
Server Management
Learn how to create and manage servers for users
API Keys
Configure API access for users
