Jabegu Rent Portal & Utility Tracker — API Gateway

Production-Hardened Express Engine & Git-as-a-Database Service

Verify All API Paths →
API Operational (Port 5000)

Security & Database Protection Architecture

✓ Safe Dry-Run & PIN-Guarded Verification: API path verification runs in isolated Dry-Run mode (X-Dry-Run: true) by default so your GitHub database is never modified unless explicitly confirmed with your Security PIN.

✓ Authentication & Role Guarding: Signed JWT (HS256, 15m expiration, tokenVersion revocation) with Admin (owner) and Rentee (requireSelfOrOwner) anti-IDOR protection.

✓ Credential & Image Hardening: Async bcrypt (cost 12), response password_hash stripping, magic-bytes verification, and sharp EXIF stripping.

✓ Concurrency Mutex: Per-file FIFO mutex queue with automatic 409 SHA conflict backoff retry.

Project 1: Jabegu Rent Portal Endpoints (/api/jabegu-rent-portal)

POST/api/jabegu-rent-portal/auth/loginAuthenticate user & issue 15m signed JWT
GET/api/jabegu-rent-portal/auth/verifyVerify active Bearer token session
GET/api/jabegu-rent-portal/admin/dashboard-overviewRevenue summary & pending verification queue
GET/api/jabegu-rent-portal/admin/tenantsSanitized tenants directory with rate & meter config
POST/api/jabegu-rent-portal/admin/create-tenantCreate new tenant & initialize rate settings
POST/api/jabegu-rent-portal/admin/edit-tenantUpdate tenant details, rent, WiFi & meter readings
POST/api/jabegu-rent-portal/admin/generate-billNEA proportional sub-meter & multi-meter invoice generator
POST/api/jabegu-rent-portal/admin/verify-paymentApprove or reject tenant payment proof
GET/api/jabegu-rent-portal/admin/house-rulesFetch building house rules
POST/api/jabegu-rent-portal/admin/update-house-rulesUpdate building house rules
GET/api/jabegu-rent-portal/admin/noticesFetch all broadcast notices
POST/api/jabegu-rent-portal/admin/noticePublish new broadcast notice
DEL/api/jabegu-rent-portal/admin/notice/:idDelete broadcast notice by ID
GET/api/jabegu-rent-portal/admin/maintenance-requestsList all tenant maintenance tickets
POST/api/jabegu-rent-portal/admin/maintenance-requests/statusUpdate maintenance ticket status
GET/api/jabegu-rent-portal/rentee/dashboard-metrics/:tenantUsernameTenant dashboard summary cards & meter metrics
GET/api/jabegu-rent-portal/rentee/profile/:usernameSanitized tenant profile & tariff settings
GET/api/jabegu-rent-portal/rentee/my-bills/:tenantUsernameTenant billing & transaction history
POST/api/jabegu-rent-portal/rentee/submit-proofUpload & harden payment proof receipt image
POST/api/jabegu-rent-portal/rentee/create-maintenanceSubmit new tenant maintenance request
GET/api/jabegu-rent-portal/rentee/noticesTenant broadcast notices feed
GET/api/jabegu-rent-portal/rentee/my-maintenance/:tenantUsernameTenant maintenance ticket history

Project 2: Electricity Utility Tracker Endpoints (/api/jabegu-utility-tracker)

GET/api/jabegu-utility-tracker/healthUtility tracker service health check
GET/api/jabegu-utility-tracker/db/statusDatabase connectivity & repository status
POST/api/jabegu-utility-tracker/db/seedSeed initial meter readings & profile structures
GET/api/jabegu-utility-tracker/readingsFetch all electricity meter readings
POST/api/jabegu-utility-tracker/readingsRecord new electricity meter reading
PUT/api/jabegu-utility-tracker/readings/:idUpdate existing meter reading by ID
DEL/api/jabegu-utility-tracker/readings/:idDelete meter reading record by ID
GET/api/jabegu-utility-tracker/monthly-billsFetch monthly electricity billing statements
POST/api/jabegu-utility-tracker/monthly-billsSave or update monthly billing statement
GET/api/jabegu-utility-tracker/profileFetch house owner & utility tariff profile
POST/api/jabegu-utility-tracker/profileUpdate utility profile metadata
POST/api/jabegu-utility-tracker/ai/audit-analysisAI energy consumption spike & anomaly analysis