New Training Request
Complete all steps to submit your request for approval
My Training Requests
Training Calendar
All Training Requests
| Ref | Employee | Course | Dept | Date | Stage | Status | Source | Actions |
|---|
Training Log
| Employee | Course | Category | Provider | Date | Expiry | Status | VISION | Actions |
|---|
Training Providers
Dashboard
By Department
By Priority
Recent Activity
Approvals Queue
Admin Panel
User Management
Manage roles, add and remove users
Course Catalogue
Manage available courses
Provider Management
System Settings
settings/main reads to a service account.Export Data
Export portal data to CSV for reporting.
Bulk Import
Backfill historic training records from a spreadsheet
Drop in a CSV of historic training (or anything not booked through the portal). Each row becomes a Training Log record. Useful when onboarding the portal β saves days of typing.
Imported records are tagged manualEntry:true and appear instantly in the Training Log, Calendar and reports.
API β Coming in Weeks 6β7
Endpoints are being built; wiring into this dashboard is next.
Once deployed to Firebase, authorised systems can read live data from the Learning Hub via three GET endpoints. Read-only, key-protected, CORS-enabled.
Endpoints
All require header X-API-Key: <your-key>
| Endpoint | Firestore Collection | Returns | Status |
|---|---|---|---|
GET /api/users |
users |
All user profiles | Pending deploy |
GET /api/completions |
completions |
Training completion records | Pending deploy |
GET /api/expiries |
expiries |
Expiry & renewal records | Pending deploy |
Deploy in ~15 minutes
Firebase Cloud Functions v2 Β· Node 20 Β· JavaScript
- Open a terminal in the
functions/folder and runnpm install - Set your secret:
firebase functions:secrets:set LEARNING_HUB_API_KEY - Deploy:
firebase deploy --only functions - Paste the printed HTTPS URLs into the Settings webhooks panel
- Test:
curl -H "X-API-Key: <key>" https://<region>-<project>.cloudfunctions.net/apiUsers
API Key Reference
Record your deployed key here for reference (admin view only)
β This field is browser-local only. For production, store the key in Firebase Secret Manager via the CLI command above.