Administration
Admin Guide
How to add brokers with limited or full access, create personalised landing pages, and manage IP address tracking for task completion auditing.
User Roles & Access Levels
The platform uses a role-based access control system. Every user is assigned one of the following roles, which determines what they can see and do within the application.
| Role | Access Level | Description |
|---|---|---|
| admin | Full administration | Can manage all users, applications, landing pages, audit logs, and system settings. Has unrestricted access to every feature. |
| broker | Broker CRM access | Can manage their own clients, applications, magic links, reminders, and view their own landing page. Cannot access admin panel or other brokers' data. |
| applicant | Self-service only | Can view and manage only their own application, documents, and tasks. Cannot access any broker or admin features. |
Granting Admin Access
To promote a user to admin (total administration access):
- Navigate to Admin → Users in the top navigation bar.
- Find the user in the list (search by name or email).
- Click the role dropdown next to their name.
- Select admin from the dropdown.
- The change takes effect immediately — no restart required.
Alternatively, update the role directly in the database:
UPDATE users SET role = 'admin' WHERE email = '[email protected]';Adding Brokers with Limited Access
- Have the broker log in to the platform via the Manus OAuth login page.
- Their account is automatically created with the default role of "user".
- Navigate to Admin → Users and change their role to broker.
- The broker will now see the Broker CRM dashboard with access to: Dashboard, New Application, Applications, Clients, Magic Links, Progress, and Reminders.
- They will not have access to: Admin panel, User management, Audit logs, Landing page management, or other brokers' data.
Broker Landing Pages
Each broker can have a personalised landing page accessible at a unique URL. These pages are publicly visible (no login required) and serve as the broker's branded entry point for new applicants.
Pre-Configured Landing Pages
| Broker | URL Slug | Brand Colour | |
|---|---|---|---|
| Red Prasad | [email protected] | /broker/red-prasad | Navy (#1e3a5f) |
| Dom | [email protected] | /broker/dom-outlook | Forest Green (#2d5a3d) |
| Atish Prasad | [email protected] | /broker/apply | Royal Purple (#4a2d6b) |
Creating a New Landing Page
- Navigate to Admin → Landing Pages.
- Click Create Landing Page.
- Fill in required fields: Broker (select from dropdown) and URL Slug (e.g.,
john-smith). - Optionally fill in: Display Name, Email, Phone, Company Name, Headline, Subheadline, Bio, and Brand Colour.
- Click Create.
Landing Page Features
Managing Landing Pages
| Action | How |
|---|---|
| View page | Click the external link icon to open the public landing page in a new tab. |
| Edit page | Click the pencil icon to update display name, email, company name, and other fields. |
| Toggle active/inactive | Click the eye icon to enable or disable the page. Inactive pages return "Page Not Found". |
| Copy URL | Click the copy icon next to the slug to copy the full URL to clipboard. |
| Delete page | Click the red trash icon. A confirmation dialog will appear. |
IP Address Tracking
The platform tracks IP addresses for every task-related action to provide a complete audit trail. This is useful for compliance, security monitoring, and verifying that actions were performed from expected locations.
What Is Tracked
| Action | IP Field | Description |
|---|---|---|
| Task created | created_by_ip | The IP address of the user who created the task. |
| Task updated | last_updated_by_ip | The IP address of the user who last modified the task. |
| Task completed | completed_by_ip | The IP address of the user who marked the task as completed. |
How IP Addresses Are Captured
- X-Forwarded-For header — Used when behind a reverse proxy. The first IP in the comma-separated list is used.
- req.ip — The Express.js request IP property.
- connection.remoteAddress — Raw TCP connection address as a fallback.
Querying IP Data
SELECT
id, title, status,
created_by_ip,
last_updated_by_ip,
completed_by_ip,
completedAt
FROM application_tasks
WHERE completed_by_ip IS NOT NULL
ORDER BY completedAt DESC;Onboarding a New Broker
Broker Logs In
Direct the broker to the platform login page. They authenticate via Manus OAuth. Upon first login, an account is automatically created with the default 'user' role.
Set the Broker's Role
Log in as an admin. Go to Admin → Users. Find the new broker by name or email. Change their role to 'broker' for limited access or 'admin' for full administration.
Create a Landing Page
Go to Admin → Landing Pages. Click Create Landing Page. Select the broker, enter a URL slug, fill in display details, choose a brand colour, and click Create.
Share the Landing Page URL
The broker's landing page is now live at /broker/{slug}. Share this URL for marketing materials, email signatures, and social media.
Monitor Performance
From Admin → Landing Pages, monitor each page's view count (total visits) and application count (applications started from the page).